¿Qué significa [..] en 'ps' y cómo se crea un proceso como este?

¿Qué significa [..] en 'ps' y cómo se crea un proceso como este?

Al ejecutarlo ps, obtienes algo como:

root         2  0.0  0.0      0     0 ?        S<   00:00   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S<   00:00   0:00 [ksoftirqd/0]
root         4  0.0  0.0      0     0 ?        S<   00:00   0:00 [events/0]

Todos los procesos de demonio generalmente tienen [..]corchetes alrededor.

¿Qué quieren decir (si es que tienen algo)? ¿Cómo se crea un proceso que se parece a este?

La razón por la que pregunto es que creamos un demonio del sistema desde rcS (el programa usa una bifurcación para crear el demonio), pero la entrada ps se ve así:

root       207  0.0  0.2   1516   200 ?        S    00:00   0:00 /root/testdaemo

Entonces nos preguntamos si es importante tener los [..]corchetes y cómo los procesos los obtienen en primer lugar.

Gracias.

Respuesta1

Los corchetes se utilizan para procesos que no tienen una línea de comando asociada (principalmente subprocesos del kernel y algunos servicios del sistema).

Si no recuerdo mal, es posible que pueda lograr el mismo efecto para su proceso configurándolo argv[0]en la cadena vacía.

Respuesta2

Sí, son subprocesos del núcleo, creados por subsistemas del núcleo. Se crean usando las funciones kthread_create() o kernel_thread() en el kernel.

Respuesta3

Tu ejemplo ni siquiera muestra el [...], por lo que no estoy 100% seguro de qué estás hablando. Sin embargo, ES posible modificar los argvargumentos de cualquier programa (en Linux). Los argumentos se reflejan en el resultado de ps.

información relacionada