GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo obtener el uso total de la CPU en Linux usando C++

gato /proc/stat

http://www.linuxhowtos.org/System/procstat.htm

Estoy de acuerdo con esta respuesta anterior. La línea de cpu en este archivo da el número total de "jiffies" que su sistema ha gastado haciendo diferentes tipos de procesamiento.

Lo que debe hacer es tomar 2 lecturas de este archivo, separadas por el intervalo de tiempo que necesite. Los números son valores crecientes (sujetos a la transferencia de enteros), por lo que para obtener el % de CPU, debe calcular cuántos jiffies han transcurrido durante su intervalo, en comparación con cuántos jiffies se gastaron en el trabajo.

por ejemplo, suponga que a las 14:00:00 tiene

procesador 4698 591 262 8953 916 449 531

total_jiffies_1 =(suma de todos los valores) =16400

work_jiffies_1 =(suma de usuario, agradable, sistema =los primeros 3 valores) =5551

y a las 14:00:05 tienes

procesador 4739 591 289 9961 936 449 541

total_jiffies_2 =17506

trabajo_jiffies_2 =5619

Entonces, el % de uso de CPU durante este período es:

work_over_period =work_jiffies_2 - work_jiffies_1 =68

total_over_period =total_jiffies_2 - total_jiffies_1 =1106

%cpu =work_over_period / total_over_period * 100 =6,1 %

Espero que ayude un poco.


Intenta leer /proc/loadavg . Los primeros tres números son la cantidad de procesos que se están ejecutando (es decir, usando una CPU), promediados durante los últimos 1, 5 y 15 minutos, respectivamente.

http://www.linuxinsight.com/proc_loadvg.html


Linux
  1. Cómo limitar el uso de la CPU de un proceso en Linux

  2. Cómo verificar el tamaño total de RAM y el uso de memoria en Linux

  3. Cómo calcular el uso de memoria en Linux usando sar, ps y gratis

  4. ¿Cómo obtener la cantidad de CPU en Linux usando C?

  5. ¿Cómo obtener el nombre de usuario en C/C++ en Linux?

Cómo encontrar información de la CPU en Linux usando la línea de comandos

Cómo visualizar el uso del disco en Linux usando Baobab

Cómo obtener su dirección IP en Linux

Cómo verificar el uso o la utilización de la CPU de Linux

Cómo obtener información de hardware en Linux usando el comando dmidecode

¿Cómo obtengo el uso total de CPU de una aplicación de /proc/pid/stat?