процессоров семейства x86. С помощью этой низкоуровневой инструкции программы могут получать сведения о центральном процессоре. Подробнее узнать об этой инструкции можно в руководстве IA-32 Intel Architecture Software Developer's Manual, Volume 2: Instruction Set Reference, доступном по адресу
http://developer.intel.com/design
.
Последний элемент файла,
bogomips
, характерен для Linux.
Это показатель скорости работы процессора в поглощающем цикле (когда программы обращаются к процессору, но не выполняют вычислений). Он не отражает общую производительность процессора.
7.3.2. Аппаратные устройства
В файле
/proc/devices
содержится список старших номеров символьных и блочных устройств, имеющихся в системе. Подробнее об этом рассказывалось в главе 6. "Устройства".
7.3.3. Шина PCI
В файле
/proc/pci
перечислены устройства, подключенные к шине (или шинам) PCI. Сюда входят реальные PCI-платы, а также устройства, встроенные в материнскую плату, плюс графические платы AGP. В каждой строке указан тип устройства, идентификатор устройства и его поставщика, имя устройства (если есть), информация о функциональных возможностях устройства и сведения о ресурсах PCI-шины, используемых устройством
7.3.4. Последовательные порты
Файл
/proc/tty/driver/serial
содержит конфигурационную и статистическую информацию о последовательных портах. Эти порты нумеруются начиная с нуля. [24] Работать с настройками порта позволяет также команда
setserial
, но файл
/proc/tty/driver/serial
, помимо всего прочего, включает дополнительные статистические данные о счетчиках прерываний каждого порта.
Например, следующая строка описывает последовательный порт 1 (COM2 в Windows):
24
В DOS и Windows нумерация последовательных портов начинается с единицы, поэтому порту COM1 соответствует последовательный порт с номером 0 в Linux.
Здесь говорится о том, что последовательный порт оснащен микросхемой UART 16550А, использует порт ввода-вывода 0x218 и прерывание 3 и работает со скоростью 9600 бод. Через этот порт было передано 11 запросов на прерывание и получено 0 таких запросов.
7.4. Информация о ядре
В файловой системе
/proc
есть много элементов, содержащих информацию о настройках и состоянии ядра. Некоторые из них находятся на верхнем уровне файловой системы, а некоторые скрыты в каталоге
/proс/sys/kernel
.
7.4.1. Версия ядра
В файле
/proc/version
находится строка, описывающая номер версии и модификации ядра. В нее также включены сведения о создании ядра: имя пользователя, скомпилировавшего ядро, адрес компьютера, на котором это было сделано, дата компиляции и версия компилятора. Например:
% cat /proc/version
Linux version 2.2.14-5.0 (root@porky.devel.redhat.com)
(gcc version egcs-2.91.66 19990314/Linux (egcs-1.1.2 release))
#1 Tue Mar 7 21:07:39 EST 2000
Здесь
сказано, что в системе используется ядро Linux версии 2.2.14, которое было скомпилировано программой EGCS версии 1.1.2 (эта программа является предшественницей широко распространенного в настоящее время пакета GCC).
Для наиболее важных параметров, а именно названия операционной системы и номера версии/модификации ядра, созданы отдельные записи в файловой системе
/proc
. Это файлы
/proc/sys/kernel/ostype
,
/proc/sys/kernel/osrelease
и
/proc/sys/kernel/version
.
% cat /proc/sys/kernel/ostype Linux
% cat /proc/sys/kernel/osrelease 2.2.14-5.0
% cat /proc/sys/kernel/version #1 Tue Mar 7 21:07:39 EST 2000
7.4.2. Имя компьютера и домена
В файлах
/proc/sys/kernel/hostname
и
/proc/sys/kernel/domainname
содержатся имя компьютера и имя домена соответственно. Эту же информацию возвращает функция
uname
, описанная в разделе 8.15, "Функция uname".
7.4.3. Использование памяти
Файл
/proc/meminfo
хранит сведения об использовании системной памяти. Указываются данные как о физической памяти, так и об области подкачки. Во второй и третьей строках значения даны в байтах, в остальных строках — в килобайтах. Приведем пример:
Как видите, в системе имеется 512 Мбайт ОЗУ, из которых 9 Мбайт свободно. Для области подкачки выделено 258 Мбайт, из которых свободно 216 Мбайт. В строке, соответствующей физической памяти, показаны три других значения.
■ В колонке "shared" отображается общий объем совместно используемой памяти, выделенной в системе.
■ В колонке "buffers" отображается объем памяти, выделенной для буферов блочных устройств. Эти буферы используются драйверами устройств для временного хранения считываемых и записываемых блоков данных.
■ В колонке "cached" отображается объем памяти, выделенной для страничного кэш-буфера. В этом буфере сохраняются страницы файлов, отображаемых в памяти.
Ту же самую информацию можно получить с помощью команды