prof. Nunzio Brugaletta |
atapSO |
EnneBi –
Computer Science
Avanti – Indietro – Inizio
La /proc è una pseudo directory nel senso che, se si esegue il comando ls -l si otterrà un elenco di file con dimensione nulla. In realtà non c'è nulla di strano perché i file mostrano informazioni su vari aspetti del sistema in esecuzione. La maggior parte dei file presenti in questa directory sono visualizzabili per mezzo del comando less: si tratta infatti di file di testo che, trattando situazioni in continuo divenire (per esempio l'occupazione di memoria), sono generati dal sistema quando deve fornire una risposta alla richiesta di visualizzazione, e una successiva ripetizione dello stesso comando fornirà dati diversi. In definitiva quando il sistema deve rispondere al comando di visualizzazione, scatta una fotografia dello stato della risorsa e fornisce le informazioni. Di conseguenza alla prossima richiesta viene scattata una nuova fotografia che sarà diversa della prima essendo nel frattempo cambiato lo stato della risorsa.
Verranno esaminate adesso alcune risorse disponibili nel sistema:
$ cd /proc $ less cpuinfo processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 8 model name : Pentium III (Coppermine) stepping : 6 cpu MHz : 800.024 cache size : 256 KB fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 2 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 sep mtrr pge mca cmov pat pse36 mmx fxsr sse bogomips : 1582.76
nell'esempio proposto, dopo aver selezionato la directory /proc, si è richiesta la visualizzazione delle informazioni sulla CPU presente nel sistema. Nel caso in esame si tratta di un Intel Pentium III a 800 Mhz.
Allo stesso modo si potrebbe voler avere informazioni sulle porte di I/O presenti:
$ less ioports 0000-001f : dma1 0020-003f : pic1 0040-005f : timer 0060-006f : keyboard ... 0170-0177 : ide1 01f0-01f7 : ide0 02f8-02ff : serial(auto) ... 0378-037a : parport0 037b-037f : parport0 03c0-03df : vga+ ...
o sulla mappatura della memoria:
$ less iomem 00000000-0009fbff : System RAM 0009fc00-0009ffff : reserved 000a0000-000bffff : Video RAM area 000c0000-000c7fff : Video ROM 000f0000-000fffff : System ROM 00100000-13feffff : System RAM 00100000-0024b8dd : Kernel code 0024b8de-003457a3 : Kernel data ...
Le informazioni sull'occupazione di memoria sono accessibili visualizzando lo pseudo-file meminfo:
$ less /proc/meminfo MemTotal: 320424 kB MemFree: 56112 kB Buffers: 9576 kB Cached: 176320 kB SwapCached: 0 kB Active: 122792 kB Inactive: 124780 kB HighTotal: 0 kB HighFree: 0 kB LowTotal: 320424 kB LowFree: 56112 kB SwapTotal: 787144 kB SwapFree: 787144 kB Dirty: 40 kB Writeback: 0 kB Mapped: 129288 kB Slab: 12432 kB CommitLimit: 947356 kB Committed_AS: 126420 kB PageTables: 1160 kB VmallocTotal: 704504 kB VmallocUsed: 5300 kB VmallocChunk: 697536 kB HugePages_Total: 0 HugePages_Free: 0 Hugepagesize: 4096 kB
i valori vengono dettagliati per ogni voce presente.
$ free total used free shared buffers cached Mem: 320424 264256 56168 0 9588 176456 -/+ buffers/cache: 78212 242212 Swap: 787144 0 787144
Il comando free, facendo riferimento alle stesse informazioni, ne fornisce una visione sintetica.
http://ennebi.solira.org |
ennebi@solira.org |