Programa para monitorizar procesos

Almensilla
21 de Diciembre del 2009
Buenas a todos!
Estoy liado con un programa en C tengo una gran duda que espero que alguien me pueda solventar.

Estoy haciendo un programita en c, y necesito una funcion que me "monitorice" los procesos en tiempo real. Me expico con un ejemplo:
Quiero hacer un programa que al ejecutarlo, empiece a "leer" todos los bits de los procesos que se ejecuten, y poder tratarlos después a conveniencia.

Un ejemplo más práctico seria el siguiente:

Desde la linea de comandos (por ejemplo) ejecuto el programa compilado "Analizador de procesos.exe" y a partir de ese momento, estara leyendo internamente todos los bits de los procesos que tenga activos en ese momento el ordenador (incluyendo los nuevos procesos que se creen mientras se ejecuta el programa; por eso lo del tiempo real). Mi programita, al leer todos los bits de los procesos, cuando reconozca una determinada secuencia de bits (por ejemplo la secuencia de la cabecera de un archivo de audio), mostrara un mensaje "Se ha tratado un archivo de audio". Y seguirá ejecutandose, hasta que se le introduzca una cadena de caracteres por linea de comandos (por ejemplo "terminar" o "exit").

Pues bien, esa es la idea, pero lo que no se hacer es leer en tiempo real los bits de los procesos.

Creo que es un problema complicado, per algún programador de C podría darme alguna idea??