Книга: Программирование для Linux. Профессиональный подход

7.1. Извлечение информации из файловой системы /proc

7.1. Извлечение информации из файловой системы /proc

Большинство элементов файловой системы /proc выдает информацию в отформатированном виде. Например, файл /proc/cpuinfo содержит сведения о процессоре (или процессорах, если это многопроцессорный компьютер). Выходная информация представляется в виде таблицы значений, по одному на строку. Каждое значение сопровождается символическим идентификатором.

При обращении к файлу /proc/cpuinfo будет выдана примерно следующая информация:

% cat /proc/cpuinfo
processor     : 0
vendor_id     : GenuineIntel
cpu family    : 6
model         : 5
model name    : Pentium II (Deschutes)
stepping      : 2
cpu MHz       : 400.913520
cache size    : 512 KB
fdiv_bug      : no
hlt_bug       : no
sep_bug       : no
f00f_bug      : no
coma_bug      : no
fpu           : yes
fpu_exception : yes
cpuid level   : 2
wp            : yes
flags         : fpu vme de pse tsc msr рае mce cx8 apic sep
mtrr pge mce cmov pat pse36 mmx fxsr
bogomips      : 399.77

Интерпретация некоторых значений даны в разделе 7.3.1. "Центральный процессор". Если нужно получить одно из этих значений в программе, проще всего загрузить файл в память и просканировать его функцией sscanf(). В листинге 7.1 показано, как это сделать. В программе имеется функция get_cpu_clock_speed(), которая загружает файл /proc/cpuinfo и определят частоту процессора.

Оглавление книги


Генерация: 3.885. Запросов К БД/Cache: 3 / 0
поделиться
Вверх Вниз