Oltre alle directory associate ai diversi processi, /proc contiene anche una miriade di informazioni sull'hardware del vostro sistema. Quello che segue è un elenco dei file della directory /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 $ |
Ad esempio, se esaminiamo il contenuto di /proc/interrupts, possiamo vedere che esso contiene l'elenco degli interrupt attualmente usati dal sistema, insieme alla periferica che li gestisce. Allo stesso modo, ioports contiene l'elenco dei range di indirizzi di ingresso/uscita attualmente occupati, e infine dma fa la stessa cosa per i canali DMA. Pertanto, per trovare la causa di un conflitto, esaminate il contenuto di questi tre file:
$ 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 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 $ |
Un elenco completo dei file sarebbe troppo lungo, ma ecco la descrizione di alcuni di essi:
cpuinfo: questo file contiene, come dice il nome stesso, informazioni sul processore (o sui processori) di cui dispone il vostro sistema.
modules: questo file contiene un elenco dei moduli attualmente usati dal kernel, insieme a un contatore di utilizzi per ciascuno. In effetti, queste sono le stesse informazioni mostrate dal comando lsmod.
meminfo: questo file contiene informazioni sull'uso della memoria al momento in cui ne viene visualizzato il contenuto. Si può ottenere una versione delle stesse informazioni formattata in modo più chiaro tramite il comando free.
apm: se possedete un portatile, potete controllare lo stato della batteria esaminando il contenuto di questo file. Potete sapere se è collegato alla presa di corrente, la carica attuale della batteria e, se il BIOS APM del vostro portatile lo supporta (sfortunatamente non è così per tutti), la carica residua della batteria in minuti. Questo file non è molto chiaro, quindi fareste meglio a usare il comando apm, che fornisce le stesse informazioni in un formato leggibile.
bus: questa sottodirectory contiene informazioni su tutte le periferiche che sono collegate ai vari bus del vostro sistema. Queste informazioni sono poco leggibili, e nella maggior parte dei casi vengono gestite e formattate da programmi esterni: lspcidrake, lspnp, etc.
| [1] | lsdev fa parte del pacchetto procinfo. |