Путешествие к центру ядра j1m (j1m@list.ru) Хакер, номер #081, стр. 081-104-3 Полную информацию о всех PCI-устройствах, найденных во время загрузки Linux, ты найдешь в файле /proc/pci. PCI-шина в современных ПК является не только шиной расширения, но и базой для других шин (например, USB), поэтому /proc/pci, кроме информации по подключенным устройствам, предоставляет данные о различных контроллерах и других шинах. Настоятельно рекомендую включить в ядре опию "Bus options (PCI, PCMCIA, EISA, MCA, ISA) -> PCI device name database". После этого изменения ядро распухнет на 80 Кб, зато все PCI-устройства будут иметь осмысленные имена вместо "Unknown". Информация о других устройствах, подключенных к PS/2 (мышь, клавиатура) и USB портам, находится в файлах /proc/bus/input/devices и /proc/bus/usb/devices соответственно. Причем для того, чтобы второй файл присутствовал в операционке, ядро должно быть собрано с опцией "Device Drivers -> USB support -> USB device filesystem". Теперь перейдем к ACPI, которая в первую очередь является системой управления питанием и энергопотреблением. В procfs предусмотрена возможность перевода системы в различные неэнергоемкие состояния сна. Все поддерживаемые материнской платой состояния перечислены в файле /proc/acpi/sleep. Основные состояния сна ACPI S1 - минимальное сохранение энергии. Быстрое пробуждение. S3 - все устройства, кроме оперативной памяти, переводятся в режим пониженного питания. S4 - содержимое оперативной памяти сохраняется в swap. После этого происходит выключение ПК. При следующей загрузке ядро переносит информацию из swap обратно в оперативку. Тебе придется включить в ядре опцию "Power management options (ACPI, APM) -> acpi - ACPI... -> Sleep States" для того, чтобы получить возможность управлять состояниями ACPI. Для S4 понадобится еще и опция "Power management options (ACPI, APM -> Software Suspend", а также необходимо добавить "resume=/dev/где_у_тебя_своп" в опции загрузки ядра. Перевести ПК в режим сна очень просто. Достаточно записать в файл /proc/acpi/sleep номер состояния. Например, так: $ echo 3 > /proc/acpi/sleep И последний элемент каталога /proc, который я хочу рассмотреть в этом разделе: /proc/driver. Обычно драйвера сторонних производителей создают в нем свой уголок. Наполнение этого каталога сильно зависит от конфигурации ядра, поэтому я опишу его на примере своей машины. У меня здесь находится файл rtc, отображающий статистику работы одноименного драйвера (Real Time Clock - Часы Реального Времени), а также каталог nvidia, созданный фирменным драйвером для видеокарт компании nVidia. [идентификация] Что же в первую очередь нужно узнать об ОС? Конечно же версию, отвечают все дружно. Правильно, информация о версии и времени сборки ядра представлена в /proc/version примерно такой строкой: Linux version 2.6.11 (root@localhost) (gcc version 3.4.3) #7 Sat Jul 23 16:08:26 YEKST 2005 Хочешь выяснить, с какими параметрами было загружено ядро? Загляни в файл /proc/cmdline. |