Книга: Программирование для Linux. Профессиональный подход
8.6. Функция getrusage(): статистика процессов
8.6. Функция getrusage(): статистика процессов
Функция getrusage()
запрашивает у ядра статистику работы процессов. Если первый аргумент функции равен RUSAGE_SELF
, процесс получит информацию о самом себе. Если же первым аргументом является константа RUSAGE_CHILDREN
, будет выдана информация обо всех его завершившихся дочерних процессах. Второй аргумент — это указатель на структуру типа rusage
, в которую заносятся статистические данные.
Перечислим наиболее интересные поля этой структуры.
? ru_utime
. Здесь находится структура типа timeval
, в которой указано, сколько пользовательского времени (в секундах) ушло на выполнение процесса. Это время, затраченное центральным процессором на выполнение программного кода, а не системных вызовов.
? ru_stime
. Здесь находится структура типа timeval
, в которой указано, сколько системного времени (в секундах) ушло на выполнение процесса. Это время, затраченное центральным процессором на выполнение системных вызовов от имени данного процесса.
? ru_maxrss
. Это максимальный объем физической памяти, которую процесс занимал в какой-то момент своего выполнения.
В листинге 8.5 приведена функция, которая показывает, сколько пользовательского и системного времени потребил текущий процесс.
- Статистика базы данных InterBase
- 2.1.3. Функция getopt_long()
- Статистика страниц индексов
- Статистика InterBase-сервера
- Статистика по блокировкам
- Глава 7 Чего нужно опасаться при моделировании бизнес-процессов. Проектные риски моделирования бизнеспроцессов
- Группировка по встроенным функциям и UDF
- Эффективное взаимодействие процессов архитектуры Classic Server
- 19.1.1. Функция jQuery()
- 1.2. Понятие информации. Общая характеристика процессов сбора, передачи, обработки и накопления информации
- Функция strcmp( )
- Управление функциями узла