T H E /proc F I L E S Y S T E M | Cerca per titolo, autore, parola chiave | ||||||||
T H E /proc F I L E S Y S T E M Il filesystem Procfs è presente in quasi tutti i sistemi operativi Unix/Linux. Nacque presso i laboratori di AT&T's Bell e fu introdotto nella versione 8 di UNIX, come strumento di raccolta di informazioni relative ai processi presenti nel sistema (non a caso, il comando: ps legge le informazioni che pubblica proprio dalla directory: /proc che è la directory in cui viene installato Procfs). Quando provate ad aprire un file installato nella directory: /proc voi attivate un qualche pezzo di codice del kernel che raccoglie, al volo, le informazioni richieste e genera il testo da presentarvi come contenuto del file. Questo è il motivo per il quale al file vengono sempre associate la data e l'ora del momento e una dimensione pari a zero: quello zero, in realtà, significa: non lo so. Diversamente da tutti gli altri filesystem, il filesystem montato (mount) in: /proc e chiamato procfs non preleva dati dal disco fisso o da una qualche altra periferica di memoria (FAT, ext2, zfs, etc.) o dalla rete (NFS, Samba, etc.) e non invoca alcun pezzo di codice utente (FUSE). La gran parte delle implementazioni di procfs ha un file o una directory chiamata, per esempio: /proc/123 dove salvare le informazioni relative al processo con PID 123 (Process ID). Linux estende il filesystem proc con ulteriori file e directory contenenti le informazioni relative all'intero sistema. Nel passato, nella directory: /proc venivano installati vari file contenenti informazioni sui driver, ma oggi queste informazioni vengono salvate nella directory: /sys mettendo in secondo piano /proc. Directory quali: /proc/bus /proc/fs/ext4 esistono ancora, ma solo per motivi di compatibilità, essendo state sostituite con nuove interfacce allocate in: /sys Un driver può registrare una o più voci in: /proc anche se sconsigliato, oggi, in favore di: /sys utilizzando le funzioni: create_proc_entry create_proc_read_entry per le versioni fino alla 3.9 del kernel, oppure: proc_create proc_create_data per le versioni superiori alla 3.10.
|
|||||||||
T H E /proc F I L E S Y S T E M | Disclaimer: questo è un link a contenuti ospitati su server esterni. |