El Miércoles, 15 de Agosto de 2007, Iñigo Tejedor Arrondo escribió: > ¿carga de CPU o carga del sistema? Si lo que buscas es la "carga del > sistema", ese puede ser el comando que necesitas, pero mira en el > > LANG=C man proc > /loadavg > > (lo de man=C es para leer, una página tres años más nueva, que la que > esta en argentino) > > A ver si realmente es lo que buscas... (número de trabajos, en estado > 'R' o 'D', es decir "run" o esperando poder hacer I/O de disco, en este > instante y hace 1, 5 y 15 minutos) > > Yo creo que lo que preguntabas (carga de CPU), te refieres a los > porcentajes que se ven en top (p.ej. el % de idle) > > Para la carga de la cpu, EMHO, no hay un programa concreto que devuelva > __solo__ esos valores, tendrías que filtrar, p.ej. la salida > de /proc/stat, o puede servirte las últimas columnas de: > > vmstat -n1 > > Que si te dicen el % de cpu runing, idle, etc... (man) > > Total, si lo vas a leer desde otro pograma, tendrás que trabajar con > columnas de cualquier manera. > > Si quieres algo más detallado que las 4 últimas columnas de vmstat, y > multiprocesador, puedes probar mpstat (del paquete systat): > > [root][imac]:/home/inigo # mpstat -P ALL > Linux 2.6.18-4-686 (imac) 15/08/07 > > 13:41:12 CPU %user %nice %sys %iowait %irq %soft %steal %idle intr/s > 13:41:12 all 0,98 0,00 0,40 5,15 0,07 0,29 0,00 93,11 364,85 > 13:41:12 0 0,86 0,00 0,49 5,70 0,14 0,40 0,00 92,41 342,34 > 13:41:12 1 1,11 0,00 0,32 4,59 0,00 0,18 0,00 93,80 22,51 > > O del mismo paquete, iostat -c > > [root][imac]:/home/inigo # iostat -c > Linux 2.6.18-4-686 (imac) 15/08/07 > > avg-cpu: %user %nice %system %iowait %steal %idle > 0,98 0,00 0,74 4,80 0,00 93,48 > > Pero estás en lo mismo, son columnas y lineas a tratar. Si quieres que > iostat -c no te devuelva más que la ultima linea, tendrías que comenar > un par de líneas de iostat.c y compilar, creo que sale más a cuenta un > pequeño script, no lleva más de una línea hacerlo, ¿qué más da usar un > programa externo que un pequeño script?. Si es por optimizar, no debe > ser muy difícil hacer un programa en C que devuelva solo la carga de > CPU, usando stat.h y printf.
Muchas gracias, Iñigo y Demian, ya tengo bastante donde elegir. :) -- Iñaki Baz Castillo