10.3.2 Использование ресурсов

10.3.2 Использование ресурсов

Ядро Linux отслеживает, сколько ресурсов использует каждый процесс. Хотя отслеживается только небольшое их число, их измерения могут быть полезными разработчикам, администраторам и пользователям. В табл. 10.1 перечислены ресурсы, использование которых отслеживается ядром Linux версии 2.6.7.

Таблица 10.1. Ресурсы процессов, отслеживаемые Linux

Тип Член Описание
struct timeval ru_utime Общее время, затраченное на выполнение кода в режиме пользователя. Это включает в себя все время, потраченное на выполнение инструкций приложения, но исключая время, потраченное ядром на обслуживание запросов приложения.
struct timeval ru_stime Общее время, потраченное ядром на выполнение запросов процесса. Это не включает времени блокировки процесса в период ожидания выполнения системных вызовов.
long ru_minflt Количество второстепенных сбоев (minor faults), вызванных данным процессом. Второстепенные сбои — это попытки доступа к памяти, переключающие процессор в режим ядра, но не вызывающих обращений к диску. Это случается, когда процесс пытается писать за пределами стека, что вынуждает ядро распределить больше пространства стека, прежде чем продолжить выполнение процесса.
long ru_majflt Количество первостепенных сбоев (major faults), вызванных данным процессом. Первостепенные сбои — это обращения к памяти, заставляющие ядро обратиться к диску, прежде чем программа сможет продолжить работу. Одной из частых причин этого может быть обращение к части исполняемой памяти, которая еще не была загружена в ОЗУ с диска либо была временно выгружена на диск.
long ru_nswap Количество страниц памяти, для которых был выполнен обмен с диском при обращении к памяти из процесса.

Процесс может проверять использование ресурсов им самим, общее использование ресурсов его дочерними процессами либо сумму того и другого.

Системный вызов getrusage() возвращает структуру struct rusage (определенную в <sys/resource.h>), содержащую информацию о текущем использовании ресурсов.

int getrusage(int who, struct rusage * usage);

Первый параметр, who, сообщает, какой из трех счетчиков ресурсов должен быть возвращен. RUSAGE_SELF возвращает использование ресурсов текущим процессом, RUSAGE_CHILDREN — его дочерними процессами, a RUSAGE_BOTH — общее использование ресурсов текущим процессом и всеми его дочерними процессами. Второй параметр getrusage() — это указатель на struct rusage, куда помещается информация об использовании ресурсов. Хотя struct rusage и содержит относительно немного членов (список унаследован из BSD), большинство этих членов пока не используются Linux). Ниже представлено полное определение этой структуры. В табл. 10.1 описаны члены, используемые в настоящее время Linux.

#include <sys/resource.h>

struct rusage {

 struct timeval ru_utime;

 struct timeval ru_stime;

 long intru_maxrss;

 long intru_ixrss;

 long intru_idrss;

 long intru_isrss;

 long intru_minflt;

 long intru_majfit;

 long intru_nswap;

 long intru_inblock;

 long intru_oublock;

 long intru_msgsnd;

 long intru_msgrcv;

 long intru_nsignals;

 long intru_nvcsw;

 long intru_nivcsw;

};

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

Формат ресурсов .NET

Из книги Язык программирования С# 2005 и платформа .NET 2.0. [3-е издание] автора Троелсен Эндрю

Формат ресурсов .NET До этого момента все наши приложения, использующие внешние ресурсы (например, файлы изображений), требовали, чтобы загружаемые файлы находились в каталоге приложения. Поэтому для загрузки этих файлов мы использовали их непосредственные имена.//


7.5.5. Потребление ресурсов

Из книги Разработка приложений в среде Linux. Второе издание автора Джонсон Майкл К.

7.5.5. Потребление ресурсов Хотя Electric Fence является мощным, легким в употреблении и быстрым инструментом (поскольку все проверки доступа осуществляются аппаратными средствами), за все это приходится платить свою цену. Большинство процессоров позволяют системе управлять


Глава 21. Три десятка ресурсов VBA.

Из книги VBA для чайников автора Каммингс Стив

Глава 21. Три десятка ресурсов VBA. В этой главе ...~ Дополнительная информация о VBA, представленная разработчиками программного обеспечения~ Периодические издания, посвященные VBA~ Поиск Web-ресурсов, относящихся к VBA~ Как получить новые элементы управления ActiveX и программные


Использование встроенных ресурсов

Из книги Программирование КПК и смартфонов на .NET Compact Framework автора Климов Александр П.

Использование встроенных ресурсов При работе программы необходимо получить доступ к графическому файлу из ресурсов и вывести изображение на экран. Для этого сначала необходимо получить ссылку на сборку. Соответствующий код приведен в листинге 11.1.Листинг 11.1// Получим


Менеджеры ресурсов

Из книги QNX/UNIX [Анатомия параллелизма] автора Цилюрик Олег Иванович

Менеджеры ресурсов QNX вводит технику программирования, которая единообразно проходит сквозь всю систему.[41] Идея техники менеджеров ресурсов столь же проста, сколь и остроумна:• Вся система построена на тщательно проработанной в теории (и редко используемой при


Использование ресурсов

Из книги Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ автора Борри Хелен

Использование ресурсов В Классическом сервере каждый экземпляр fb_inet_server выделяет в своей области памяти статический кэш для страниц базы данных. Поэтому использование ресурсов линейно возрастает с каждым дополнительным клиентским соединением. Однако, когда количество


Web-сайты ресурсов

Из книги Введение в QNX/Neutrino 2. Руководство по программированию приложений реального времени в QNX Realtime Platform автора Кёртен Роб

Web-сайты ресурсов http://www.ibase.ru содержит огромное количество информации по InterBase и Firebird на русском языке: статьи, FAQ, файлы, форум, списки рассылки новостей и др.http://www.ibphoenix.com является центром информации и новостей для пользователей, разрабатывающих приложения для Firebird или


Администраторы ресурсов

Из книги Как заработать на фотографии в Интернете автора Зьомко Ольга

Администраторы ресурсов В этой главе вы изучите все, что относится к администраторам ресурсов в QNX/Neutrino (также известным как «драйверы устройств» и «администраторы ввода-вывода»). Перед написанием своего собственного администратора ресурса вам необходимо будет


Написание администратора ресурсов

Из книги Профессиональный поиск в Интернете автора Кутовенко Алексей

Написание администратора ресурсов Теперь, когда мы знаем основы, — как выглядит мир глазами клиента, в каком цвете видит все администратор ресурсов, и что из себя представляют оба уровня библиотеки — пришло время сконцентрироваться на деталях.В этом разделе мы


Структура администратора ресурсов

Из книги iOS. Приемы программирования автора Нахавандипур Вандад

Структура администратора ресурсов Теперь, когда мы имеем представление о структурах данных, мы можем обсудить взаимодействие между компонентами, которые вам предстоит написать, чтобы ваш администратор ресурсов мог что-нибудь реально сделать.Мы рассмотрим:• Функцию


Названия микростоковых ресурсов

Из книги UNIX: разработка сетевых приложений автора Стивенс Уильям Ричард

Названия микростоковых ресурсов FT, «Лия» – фотобанк Fotolia.DT, «Дримс» – фотобанк Dreamstime.IS, Istock, «Айс», «Айсток» – фотобанк iStockphoto.SS, Shutter, «Шатер», «Шатр», «Шутер», «Шуттер» – фотобанк


Поиск FTP-ресурсов

Из книги Продвижение порталов и интернет-магазинов автора Гроховский Леонид О.

Поиск FTP-ресурсов Протокол FTP (File Transfer Protocol) предназначен для передачи файлов между компьютерами. По компьютерным меркам эта технология имеет весьма почтенный возраст. Сильные стороны этого протокола – простота и надежность. С точки зрения пользователя, FTP-сервер – это


13.7. Получение ресурсов из библиотеки ресурсов

Из книги автора

13.7. Получение ресурсов из библиотеки ресурсов Постановка задачи Требуется получить фотографии или видео непосредственно из библиотеки фотографий, не прибегая к использованию каких-либо встроенных компонентов графического пользовательского


Записи ресурсов

Из книги автора

Записи ресурсов Записи в DNS называются записями ресурсов (resource records, RR). Нас интересуют только несколько типов RR.? А. Запись типа А преобразует имя узла в 32-разрядный адрес IPv4. Вот, например, четыре записи DNS для узла freebsd в домене unpbook.com, первая из которых — это запись типа


Сравнение авторитетности ресурсов

Из книги автора

Сравнение авторитетности ресурсов Для оценки авторитетности достаточно сравнить ряд косвенных признаков продвижения:? тематический индекс цитирования (ТИЦ);? PageRank;? количество проиндексированных страниц в «Яндексе» и Google;? число входящих ссылок на основе Solomono.ru или