Lorsque je lance la top
commande, la troisième ligne est;
Cpu(s): 0.3%us, 0.3%sy, 0.0%ni, 99.2%id, 0.1%wa, 0.0%hi, 0.0%si, 0.1%st
D'où top command obtient-il ces données? Est-ce qu'il vient de /proc
?, Si oui, quel est l'emplacement exact?
Lorsque je lance la top
commande, la troisième ligne est;
Cpu(s): 0.3%us, 0.3%sy, 0.0%ni, 99.2%id, 0.1%wa, 0.0%hi, 0.0%si, 0.1%st
D'où top command obtient-il ces données? Est-ce qu'il vient de /proc
?, Si oui, quel est l'emplacement exact?
Réponses:
Vous vous interrogez sur l'emplacement exact de l'utilisation du processeur. C'est /proc/stat
:
$ head -n 3 /proc/stat
cpu 1751981 185577 398478 28868975 69445 32 27028 0 0 0
cpu0 954878 88888 186567 14433502 19750 0 600 0 0 0
cpu1 797103 96688 211911 14435473 49694 31 26428 0 0 0
Le format est expliqué dans la documentation du noyau ( filesystems/proc.txt
); J'ai mis en gras les top
abréviations:
La toute première ligne "cpu" regroupe les nombres de toutes les autres lignes "cpuN". Ces chiffres identifient le temps passé par la CPU à effectuer différents types de travail. Les unités de temps sont en USER_HZ (typiquement des centièmes de seconde). La signification des colonnes est la suivante, de gauche à droite:
- us er: processus normaux s'exécutant en mode utilisateur
- ni ce: processus en cours d'exécution s'exécutant en mode utilisateur
- sy stem: processus s'exécutant en mode noyau
- id le: les pouces tournoyants
- io wa it: en attente de I / O à terminer
- irq: le service des interruptions [dur interrompt hi ]
- softirq: service softirqs [interruptions douces si ]
- st eal: attente involontaire
- guest: exécuter un invité normal
- guest_nice: exécuter un invité soigné
Vous pouvez obtenir des informations générales sur votre CPU /proc/cpuinfo
, mais cela n’est pas lié à son utilisation.
Procfs peuvent être trouvés dans /proc
. Veuillez lire ceci: Exploration de procfs
Procfs est un système de fichiers virtuel sous Linux monté dans / proc, et sert à plusieurs fins, y compris l'accès aux informations du noyau en mode utilisateur ou pour le débogage. L'une des caractéristiques qui me rendent spécial pour Linux est l'accès aux informations de processus sous forme de flux de texte. Beaucoup de commandes linux (ps, top, pstree, etc.) s'appuient sur ce système de fichiers pour plus d'informations.
Vous pouvez chercher dans top
le code source qui pourrait être trouvé dans le coreutils
paquet GNU.