Книга: Программирование для 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
и определят частоту процессора.
- 7.1. Извлечение информации из файловой системы
- Сохранение информации о пользователях при миграции
- Особенности системы защиты данных в InterBase
- При копировании с жесткого диска на «флэшку» иногда появляется сообщение о дополнительной присоединенной информации, кот...
- Сохранение информации из Интернета
- 1.2. Определение количества информации. Единицы измерения количества информации
- 1.2. Понятие информации. Общая характеристика процессов сбора, передачи, обработки и накопления информации
- Установка системы на уже подготовленный жесткий диск
- 1.3. Системы счисления
- 1.4. Кодирование информации
- Создание многофайловой базы данных
- 7.4. Модель системы автоматизированного проектирования защиты информации