Procfs

Procfs

Sur les systèmes du type Unix, procfs (process file system, système de fichiers processus en anglais) est un pseudo-système de fichiers (pseudo car dynamiquement généré au démarrage[1]) utilisé pour accéder aux informations du noyau sur les processus. Le système de fichiers est souvent monté sur le répertoire /proc.

Puisque /proc n'est pas une arborescence réelle, il ne consomme aucun espace disque mais seulement une quantité limitée de mémoire vive. Cela aboutit à un paradoxe apparent : un fichier non vide a une taille affichée de 0 (avec ls).

procfs est supporté sur les systèmes suivants:

  • Solaris
  • BSD
  • Linux, qui étend le concept au-delà des processus : entre autres, description détaillée des composants matériels, du réseau...etc
  • IBM AIX (qui utilise l'implémentation de Linux pour une meilleure compatibilité)
  • QNX, (Unix temps réel)

Sommaire

Historique

UNIX 8th Edition

La version de /proc dans UNIX 8th Edition[2] a été implémentée par Tom J. Killian, qui présenta un article intitulé Processes as Files (processus représentés comme des fichiers) à USENIX[3] en juin 1984. Cette première version était conçue pour remplacer l'appel système ptrace utilisé pour tracer les processus.

SVR4

Roger Faulkner et Ron Gomes portèrent /proc sur SVR4, et publièrent un article appelé The Process File System and Process Model in UNIX System V à USENIX en janvier 1991. Cette version de /proc était utilisé pour assurer l'équivalent de la commande ps[4], mais les fichiers était accessibles seulement par les fonctions read(), write(), et ioctl()[5].

Plan 9

Plan 9 implémente aussi un système de fichiers de processus, mais va plus loin que UNIX 8th Edition : dans la version précédente, il y avait un seul fichier par processus, alors que, avec la nouvelle version, chaque processus a plusieurs fichiers associés (chaque fichier correspond à une fonction)

4.4BSD

BSD 4.4 utilise un clone du procsys de Plan 9

Solaris

De même, solaris utilise un clone du procsys de Plan 9.

Linux

Le /proc de linux est un dérivé du procsys de Plan 9.

  • Il y a un répertoire pour chaque processus en cours (y compris les processus noyau), le nom de ce processus est le chiffre correspondant au PID (Identifiant de processus) (exemple : /proc/1 pour init)
    • /proc/PID/cwd,
    • /proc/PID/exe,
    • /proc/PID/root
    • /proc/PID/status
    • /proc/PID/task
  • Selon le type d'alimentation, il y aura soit un répertoire ACPI (sur les PC récents), soit sur APM (sur les PC anciens)
  • /proc/bus pour décrire les Bus informatique
  • /proc/cmdline
  • /proc/cpuinfo
  • /proc/crypto
  • /proc/devices
  • /proc/diskstats
  • /proc/filesystems
  • /proc/interrupts
  • /proc/meminfo
  • /proc/modules
  • /proc/mounts
  • /proc/net
  • /proc/partitions
  • /proc/scsi
  • /proc/slabinfo
  • /proc/swaps
  • /proc/sysvipc
  • /proc/tty
  • /proc/uptime
  • /proc/version
  • /proc/version_signature

/proc/cpuinfo

/proc/cpuinfo est un pseudo-fichier contenant les informations sur le(s) processeur(s) du système.

Dans le cas d'un système x86, il contient les lignes suivantes :

  • processor correspond à l'identifiant utilisé par le système pour identifier le processeur logique
  • vendor_id est une chaine ce caractères utilisée pour identifier le fabricant du processeur (soit AuthenticAMD ou GenuineIntel)
  • cpu_family est un nombre donnant la version majeure du processeur :
    • Intel - Intel affirme que cpu_family n'est qu'une indication sur le processus de fabrication, pas sur la version du processeur[6].
CPU family Model Stepping Cache size Model name Description
3 0 0 x  ? Intel 386™ DX
3 2 0 x  ? Intel386™ SX / CX / EX
3 4 0/1 x  ? Intel386™ SL
4 0/1 x x  ? Intel 486™ DX
4 2 x x  ? Intel486™ SX
4 3 x x  ? Intel487™/ DX2 / DX2 OverDrive®
4 4 x x  ? Intel486™ SL
4 5 x x  ? IntelSX2™
4 8 x x  ? IntelDX4™/ DX4 Overdrive®
5 1 x x  ? Pentium®/Pentium OverDrive processors (60,66)
5 2 x x  ? Pentium®/Pentium OverDrive processors (75,90,100,120,133,150,166,200)
5 3 x x  ? Pentium OverDrive for 486 based systems
5 4 x x  ? Pentium processor with MMX™ technology (166,200) & OverDrive with MMX™ for Pentium (75,90,100,120,133)
6 1 x x  ? Pentium Pro
6 3 x x  ? Pentium II, model 3 and Intel Pentium II OverDrive processor
6 5 x 0  ? Intel® Celeron® model 5
6 5 x 1/2Mb  ? Pentium II Xeon, model 5
6 5 x otherwise  ? Pentium II, model 5, Pentium II Xeon with L2 Cache 512 kB
6 6 x x  ? Celeron model 6
6 7 x 1/2Mb  ? Pentium III Xeon, model 7
6 7 x otherwise  ? Pentium III, model 7 or Pentium III Xeon, model 7 with L2 Cache 512 kB
6 8 x x  ? Pentium III, model 8, Pentium III Xeon, model 8 and Intel® Celeron® model 8
6 9 x x  ? Pentium M processor and Intel® Celeron® model 9
6 10 x x  ? Pentium III Xeon, model A
6 11 x x  ? Pentium III Xeon, model B
6 13 x x  ? Intel Pentium M processor, Intel® Celeron M model D. All processors are manufactures using 90 nm process
6 14 x x  ? Intel Core™ Duo processor, Intel Core™ Solo model E. All processors are manufactures using 65 nm process
6 15 x x  ? Intel Core™2 Duo processor model F, Xeon 51xx and 53xx. All processors are manufactures using 65 nm process
15 0 x x  ? Pentium 4 and Intel Xeon processor . All processors are model 0 and manufactured using the 0.18 micrometre process
15 1 x x  ? Pentium 4, Xeon processor, Intel Xeon processor MP and Intel Celeron. All processors are model 1 and manufactured using the 0.18 micrometre process
15 2 x x  ? Pentium 4, Mobile Intel P4 - M, Xeon processor, Intel Xeon processor MP, Intel Celeron and Mobile Intel Celeron. All processors are model 2 and manufactured using the 0.13 micrometre process
15 3 x x  ? Pentium 4, Xeon processor, Intel Celeron D. All processors are model 3 and manufactured using the 90 nm process
15 4 x x  ? Pentium 4, P4 Extreme edition, Pentium D, Xeon processor, Xeon MP and Celeton D. All processors are model 4 and manufactured using the 90 nm process
15 6 x x  ? Pentium 4, Pentium Extreme edition, Pentium D, Xeon processor, Xeon MP and Celeron D. All processors are model 6 and manufactured using the 65 nm process

Voici l'exemple d'un /proc/cpuinfo sur une vm linux tournant sur z/VM:

vendor_id       : IBM/S390
# processors    : 1
bogomips per cpu: 7668.00
features        : esan3 zarch stfle msa ldisp eimm dfp 
processor 0: version = FF,  identification = 080C92,  machine = 2097

/proc/meminfo

/proc/meminfo est un pseudo-fichier de l'implémentation de procfs dans les récents noyaux linux. Il est utilisé pour fournir les informations sur l'état courant de la mémoire du système, y compris sur la mémoire virtuelle et le cache système. C'est la principale manière d'accéder à ces informations pour les programmes de l'espace utilisateur, et est celle utilisée par de nombreux utilitaires de monitorage du système.

Références

Voir aussi

Articles connexes

  • lspci est un outil pour interroger le bus PCI, utilisant /proc.
  • hdparm, outil basé sur /proc/ide

Références externes

Notes


Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Procfs de Wikipédia en français (auteurs)

Игры ⚽ Нужно решить контрольную?

Regardez d'autres dictionnaires:

  • procfs — procfs  виртуальная файловая система, используемая в UNIX подобных операционных системах. procfs позволяет получить доступ к информации о системных процессах из ядра, она необходима для выполнения таких команд как ps, w, top. Обычно её… …   Википедия

  • procfs — (or the proc filesystem) is a special filesystem in UNIX like operating systems that presents information about processes and other system information in a hierarchical file like structure, providing a more convenient and standardized method for… …   Wikipedia

  • Procfs — procfs  виртуальная файловая система, используемая в UNIX like операционных системах. procfs позволяет получить доступ к информации о системных процессах из ядра, она необходима для выполнения таких команд как ps, w, top. Обычно её монтируют …   Википедия

  • procfs — (engl. für process filesystem) ist ein virtuelles Dateisystem auf meist unixoiden Systemen. Es dient zur Ausgabe und Änderung von System und Prozessinformation. Üblicherweise wird es in der Verzeichnisstruktur unter /proc eingebunden. Es wird vom …   Deutsch Wikipedia

  • Procfs — On many Unix like computer systems, procfs, short for process file system, consists of a pseudo file system (a file system dynamically generated at boot) used to access process information from the kernel. The file system is often mounted at the… …   Wikipedia

  • Procfs — Este artículo o sección necesita referencias que aparezcan en una publicación acreditada, como revistas especializadas, monografías, prensa diaria o páginas de Internet fidedignas. Puedes añadirlas así o avisar …   Wikipedia Español

  • Procfs — En los sistemas operativos tipo Unix, procfs es la abreviatura de sistema de ficheros de procesos (process filesystem). Un pseudo sistema de ficheros que se utiliza para permitir el acceso la información del kernel sobre los procesos. Dado que… …   Enciclopedia Universal

  • PROCFS — Process pseudo File System (/proc) …   Acronyms

  • PROCFS — Process pseudo File System (/proc) …   Acronyms von A bis Z

  • Sysfs — est un système de fichiers virtuel introduit par le noyau Linux 2.6. Sysfs permet d exporter depuis l espace noyau vers l espace utilisateur des informations sur les périphériques du système et leurs pilotes, et est également utilisé pour… …   Wikipédia en Français

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”