![¿Qué significa [..] en 'ps' y cómo se crea un proceso como este?](https://rvso.com/image/1286479/%C2%BFQu%C3%A9%20significa%20%5B..%5D%20en%20'ps'%20y%20c%C3%B3mo%20se%20crea%20un%20proceso%20como%20este%3F.png)
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 argv
argumentos de cualquier programa (en Linux). Los argumentos se reflejan en el resultado de ps
.