web-dev-qa-db-fra.com

Que signifient les crochets autour des processus?

$ ps -Awwo pid,comm,args
  PID COMMAND         COMMAND
    1 init            /sbin/init
    2 kthreadd        [kthreadd]
    3 ksoftirqd/0     [ksoftirqd/0]
    5 kworker/u:0     [kworker/u:0]
    6 migration/0     [migration/0]
    7 cpuset          [cpuset]
    8 khelper         [khelper]
    9 netns           [netns]
   10 sync_supers     [sync_supers]
   11 bdi-default     [bdi-default]
   12 kintegrityd     [kintegrityd]
   13 kblockd         [kblockd]
   14 kacpid          [kacpid]
   15 kacpi_notify    [kacpi_notify]
   16 kacpi_hotplug   [kacpi_hotplug]
   17 ata_sff         [ata_sff]
   18 khubd           [khubd]

Que signifient les crochets? Les arguments renvoient-ils toujours le chemin complet de la commande de processus (par exemple /bin/cat)?

63
joslinm

Des crochets apparaissent autour des noms de commandes lorsque les arguments de cette commande ne peuvent pas être localisés.

La page de manuel ps(1) sur FreeBSD explique pourquoi cela arrive généralement aux processus système et aux threads du noyau:

Si les arguments ne peuvent pas être localisés (généralement parce qu'ils n'ont pas été définis, comme c'est le cas pour les processus système et/ou les threads du noyau), le nom de la commande est imprimé entre crochets.

La page de manuel ps(1) sur Linux indique de la même manière:

Parfois, les arguments du processus ne sont pas disponibles; dans ce cas, ps affichera à la place le nom de l'exécutable entre crochets.

51
up_the_irons

Du manuel:

Parfois, les arguments du processus ne sont pas disponibles; dans ce cas, ps affichera à la place le nom de l'exécutable entre crochets.

15
Kusalananda