除了包括各个进程的信息之外,/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 命令。它将从这些文件中收集信息,并按照外设对它们排序以方便用户[26]:
$ 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 $ |
apm:如果您在使用膝上型计算机,该文件的内容表示电池的当前状态。您可以看到 AC 是否插上,电池的充电状态;如果您的膝上型计算机的 APM BIOS 支持的话(不幸的是,这并非必然),还会显示电池剩余的使用分钟数。该文件本身并不易于阅读,因此您会需要使用 apm 命令将该信息以人类可阅读格式显示出来。
bus:该子目录包含您机器上的总线能够找到的所有外设信息。这些信息通常是不可阅读的,不过可以使用外部工具(比如 lspcidrake、lspnp 等)对其中大部分重新格式化。
acpi:拥有膝上型计算机的人会对该目录中的某些文件感兴趣。其中他们可以选择某些省电选项。请注意,通过更高级的应用程序(比如包含在 acpid 和 kacpi 软件包中的一些程序)来修改这些选项更为容易。