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
Donc S indique que le processus est en attente que certaines opérations se terminent. C’est souvent l’attente d’une entrée/sortie (par exemple une réponse réseau, ou la lecture de données sur un disque occupé, ou juste une action de la personne devant le programme si celui-ci est interactif.) Du coup, si tu ne le trouves pas en voulant l'éliminer, c’est simplement que le processus a été exhaussé (i.e. eu ce qu’il attendait) et c’est terminé entre temps.
Les principaux signaux sont expliqués par exemple sur https://www.baeldung.com/linux/process-states
Nota : si tu n’es pas en train de faire un script portable (ce qui normalement te limiterait au ps POSIX), vu que tu es sous Debian (mais c’est présent dans la plupart des distributions GNU/Linux), tu peux remplacer ton ps aux | grep foo par pgrep foo Par contre je ne l’ai jamais utilisé pour chercher l’état≥
"It is seldom that liberty of any kind is lost all at once." ― David Hume
# zombie ≠ endormi
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au message Création d’un script. Évalué à 4.
Voici les codes d’état d’après un
man psen anglais :Donc
Sindique que le processus est en attente que certaines opérations se terminent. C’est souvent l’attente d’une entrée/sortie (par exemple une réponse réseau, ou la lecture de données sur un disque occupé, ou juste une action de la personne devant le programme si celui-ci est interactif.) Du coup, si tu ne le trouves pas en voulant l'éliminer, c’est simplement que le processus a été exhaussé (i.e. eu ce qu’il attendait) et c’est terminé entre temps.Les principaux signaux sont expliqués par exemple sur https://www.baeldung.com/linux/process-states
Nota : si tu n’es pas en train de faire un script portable (ce qui normalement te limiterait au
psPOSIX), vu que tu es sous Debian (mais c’est présent dans la plupart des distributions GNU/Linux), tu peux remplacer tonps aux | grep fooparpgrep fooPar contre je ne l’ai jamais utilisé pour chercher l’état≥"It is seldom that liberty of any kind is lost all at once." ― David Hume