Функция, которую вы, вероятно, ищете: getrusage
. Заполняет struct rusage
. Вас интересуют два члена структуры:
ru_utime
- используемое пользователем время процессора
ru_stime
- системное время процессора
Вы можете вызывать функцию через регулярные промежутки времени и на основании результатов вы можете оценить загрузку процессора (например, в процентах) вашего собственного процесса .
Если вы хотите получить его на системном уровне, вам нужно прочитать (и проанализировать) / proc / stat
файл (также с регулярными интервалами), см. здесь .