Кроме каталогов, связанных с различными процессами, /proc также содержит несметное количество информации об аппаратном обеспечении вашей машины. Список файлов каталога /proc показывает следующее:
$ ls -d [a-z]* apm dma interrupts loadavg mounts rtc swaps bus/ fb ioports locks mtrr scsi/ sys/ cmdline filesystems kcore meminfo net/ self/ tty/ cpuinfo fs/ kmsg misc partitions slabinfo uptime devices ide/ ksyms modules pci stat version $ |
Если мы посмотрим, например, содержимое /proc/interrupts, мы можем увидеть, что тут есть список прерываний, используемых системой на данный момент, а также периферийных устройств, которые держат их. Точно так же, каталог ioports содержит список адресных интервалов ввода-вывода, занятых в настоящее время , и наконец, dma делает то же самое для каналов DMA. Поэтому, чтобы найти конфликт, нужно смотреть содержание этих трех файлов:
$ cat interrupts CPU0 0: 127648 XT-PIC timer 1: 5191 XT-PIC keyboard 2: 0 XT-PIC cascade 5: 1402 XT-PIC xirc2ps_cs 8: 1 XT-PIC rtc 10: 0 XT-PIC ESS Solo1 12: 2631 XT-PIC PS/2 Mouse 13: 1 XT-PIC fpu 14: 73434 XT-PIC ide0 15: 80234 XT-PIC ide1 NMI: 0 $ cat ioports 0000-001f : dma1 0020-003f : pic1 0040-005f : timer 0060-006f : keyboard 0070-007f : rtc 0080-008f : dma page reg 00a0-00bf : pic2 00c0-00df : dma2 00f0-00ff : fpu 0170-0177 : ide1 01f0-01f7 : ide0 0300-030f : xirc2ps_cs 0376-0376 : ide1 03c0-03df : vga+ 03f6-03f6 : ide0 03f8-03ff : serial(auto) 1050-1057 : ide0 1058-105f : ide1 1080-108f : ESS Solo1 10c0-10cf : ESS Solo1 10d4-10df : ESS Solo1 10ec-10ef : ESS Solo1 $ cat dma 4: cascade $ |
Или проще, использовать команду lsdev, которая получает информацию из этих трех файлов и сортирует ее по периферийным устройствам, что, несомненно, более удобно. [22]:
$ lsdev Device DMA IRQ I/O Ports ------------------------------------------------ cascade 4 2 dma 0080-008f dma1 0000-001f dma2 00c0-00df ESS 1080-108f 10c0-10cf 10d4-10df 10ec-10ef fpu 13 00f0-00ff ide0 14 01f0-01f7 03f6-03f6 1050-1057 ide1 15 0170-0177 0376-0376 1058-105f keyboard 1 0060-006f Mouse 12 pic1 0020-003f pic2 00a0-00bf rtc 8 0070-007f serial 03f8-03ff Solo1 10 timer 0 0040-005f vga+ 03c0-03df xirc2ps_cs 5 0300-030f $ |
Полная распечатка файлов была бы слишком длинной, тем не менее приведем описание некоторых из них:
cpuinfo: этот файл содержит, соответственно своему названию, информацию о процессоре(рах) в вашей машине.
modules: этот файл содержит список модулей, которые используются ядром в данный момент, а также процент использования для каждого модуля. Фактически, это та же самая информация, которую предоставляет команда lsmod.
meminfo: этот файл предоставляет информацию о загрузке памяти на момент запроса. Более аккуратно форматированный вид этой же информации можно получить командой free.
apm: если у вас портативный компьютер, то вывод этого файла предоставит вам информацию о состоянии батарей. Вы сможете увидеть куда подключен AC, текущую загрузку батарей, и, если APM BIOS вашего ноутбука поддерживает это (к сожалению это не всегда так), то вы сможете увидеть еще и сколько времени в минутах батареи смогут проработать. Файл не очень читаем, поэтому лучше использовать вместо него команду apm, которая предоставит информацию в "человекочитаемом" виде.
bus: этот подкаталог предоставит вам информацию о всех периферийных устройствах, найденных на различных шинах вашего компьютера. Информация внутри него редко вообще читаема, и главным образом с ней имеют дело и умеют форматировать внешние утилиты, такие как: lspcidrake, lspnp, и др..