Question Que signifie la colonne STAT dans ps?


Dans la colonne STAT de ps, il y a beaucoup de lettres qui n'ont pas vraiment de sens. Que signifient-ils?

Voici un exemple de ps aux | head:

USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.0  27176  2960 ?        Ss   Sep20   0:02 /sbin/init
root         2  0.0  0.0      0     0 ?        S    Sep20   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    Sep20  13:05 [ksoftirqd/0]
root         5  0.0  0.0      0     0 ?        S<   Sep20   0:00 [kworker/0:0H]
root         7  0.0  0.0      0     0 ?        S<   Sep20   0:00 [kworker/u:0H]
root         8  0.0  0.0      0     0 ?        S    Sep20   2:16 [migration/0]
root         9  0.0  0.0      0     0 ?        S    Sep20   0:00 [rcu_bh]
root        10  0.0  0.0      0     0 ?        S    Sep20  20:08 [rcu_sched]
root        11  0.0  0.0      0     0 ?        S    Sep20   0:07 [watchdog/0]
root        12  0.0  0.0      0     0 ?        S    Sep20   0:05 [watchdog/1]
root        13  0.0  0.0      0     0 ?        S    Sep20   2:21 [ksoftirqd/1]
root        14  0.0  0.0      0     0 ?        S    Sep20   1:00 [migration/1]

127
2017-10-17 13:28


origine




Réponses:


man ps a toutes les réponses, sous la rubrique "CODES D'ÉTAT DU PROCESSUS":

PROCESS STATE CODES
       Here are the different values that the s, stat and state output specifiers (header "STAT" or "S") will display to describe the state of a process:
       D    uninterruptible sleep (usually IO)
       R    running or runnable (on run queue)
       S    interruptible sleep (waiting for an event to complete)
       T    stopped, either by a job control signal or because it is being traced.
       W    paging (not valid since the 2.6.xx kernel)
       X    dead (should never be seen)
       Z    defunct ("zombie") process, terminated but not reaped by its parent.

       For BSD formats and when the stat keyword is used, additional characters may be displayed:
       <    high-priority (not nice to other users)
       N    low-priority (nice to other users)
       L    has pages locked into memory (for real-time and custom IO)
       s    is a session leader
       l    is multi-threaded (using CLONE_THREAD, like NPTL pthreads do)
       +    is in the foreground process group.

208
2017-10-17 13:28



Je viens souvent à cette réponse comme référence - grasshopper
Fait intéressant, je reçois un "U" comme code d'état qui ne semble pas être documenté nulle part. Une idée de ce que cela signifie? - Tom
Chef de séance? - Marco Marsala
@MarcoMarsala Où l'ID de session du processus est le même que son ID de processus. Cela signifie essentiellement que c'était le premier processus de la session. C'est généralement un terminal de connexion comme bash ou X. Les processus de regroupement tels que les sessions permettent un nettoyage facile à la fin du processus leader. C'est semblable à un parent. - Oli♦
Des informations supplémentaires: <(haute priorité) est utilisée pour tout processus avec une valeur de valeur <0. La valeur de valeur la plus basse est -20, ce qui indique le processus de priorité le plus élevé. N (basse priorité) est utilisé pour tout processus avec une valeur sympa> 0. La valeur la plus élevée est 19, ce qui indique le processus de priorité la plus basse (processus le plus joli). - VKK