user@devops:~$ cat README.md
Sched Watch
# Descripción
Sched Watch (cpp-sched-watch) es un monitor del scheduler de Linux escrito en C++23 que lee /proc/stat, /proc/schedstat, /proc/loadavg y /proc/uptime para mostrar la presion real del planificador: load averages 1/5/15 min, tasks running/total y ultimo PID, context switches totales (ctxt) con tasa media, forks de procesos, run queue (procs_running/procs_blocked), boot time y, por cada CPU, el porcentaje de tiempo con tareas runnable/blocked en cola desde boot (runnable_ns/blocked_ns de /proc/schedstat) y los switches por nucleo. Incluye modo watch con tasas delta en vivo cada N segundos (--watch N: ctxt/s y forks/s), salida JSON completa para scripting (--json) con estructura {loadavg, counters, rates, cpus[], summary}, filtrado por presion con --top N, colores ANSI desactivables (--no-color) y 24 tests de auto-verificacion (--selftest) que validan el parseo real de /proc/stat + /proc/schedstat, la derivacion de metricas y la estructura JSON. Cero dependencias: compilacion directa con g++ -std=c++23.
# Características principales
$ Presion del scheduler por CPU desde /proc/schedstat: % de tiempo runnable/blocked en cola desde boot y switches por nucleo
$ Load averages 1/5/15 min + tasks running/total y ultimo PID (/proc/loadavg)
$ Contadores globales desde /proc/stat: context switches (ctxt), forks (processes), procs_running/blocked y boot time
$ Modo watch con tasas delta en vivo cada N segundos (--watch N): ctxt/s y forks/s con refresco en pantalla
$ Salida JSON completa para scripting: loadavg, counters, rates, cpus[] y summary
$ Filtrado por presion con --top N y colores ANSI desactivables (--no-color)
$ 24 tests de auto-verificacion: parseo real de /proc/stat + /proc/schedstat, derivacion de metricas y validacion estructural JSON (--selftest)
# Galería
# Tecnologías utilizadas