Estoy buscando el proceso iniciado en Linux que tiene ID de proceso 0. Sé que inittiene PID 1, que es el primer proceso en Linux, ¿hay algún proceso con PID 0?
Hay dos tareas con ID de proceso especialmente distinguidas: swapper
o sched tiene ID de proceso 0 y es responsable de la paginación , y en realidad es parte del núcleo en lugar de un proceso normal en modo de usuario . El ID de proceso 1 suele ser el proceso de inicio principalmente responsable de iniciar y apagar el sistema. Originalmente, el ID de proceso 1 no estaba reservado específicamente para init por ninguna medida técnica: simplemente tenía este ID como consecuencia natural de ser el primer proceso invocado por el núcleo. Los sistemas Unix más recientes suelen tener componentes de kernel adicionales visibles como 'procesos', en cuyo caso el PID 1 se reserva activamente para el proceso init para mantener la coherencia con los sistemas más antiguos.
Puede ver la evidencia de esto si observa los PID principales (PPID) de inity kthreadd:
kthreaddes el demonio del hilo del núcleo. Todos los kthreads se bifurcan de este hilo. Puede ver evidencia de esto si observa otros procesos usando psy viendo quién es su PPID:
Entonces, si PID 0 es intercambiable, entonces, ¿cuál es kswapd[0-9]*, en mi sistema, PID 52 actualmente? También parece ser responsable de la paginación.
Ruslan
1
@Ruslan: si tiene preguntas seguidas, hágalas en el sitio principal, los comentarios no son para esto. Haz referencia a esta pregunta en tu nueva pregunta.
slm
bueno, pero cuando creamos un nuevo proceso usando el proceso hijo de fork obtenemos pid 0 ?
roottraveller
@roottraveller no necesariamente, sea cual sea el PID de los padres donde se produjo la bifurcación, será lo que aparezca.
Hay dos tareas con ID de proceso especialmente distinguidas: swapper o sched tiene ID de proceso 0 y es responsable de la paginación, y en realidad es parte del núcleo en lugar de un proceso normal en modo de usuario.
Respuestas:
Desde la página de Wikipedia titulada: Identificador del proceso :
Puede ver la evidencia de esto si observa los PID principales (PPID) de
init
ykthreadd
:kthreadd
es el demonio del hilo del núcleo. Todos los kthreads se bifurcan de este hilo. Puede ver evidencia de esto si observa otros procesos usandops
y viendo quién es su PPID:Note que son todos
2
.fuente
kswapd[0-9]*
, en mi sistema, PID 52 actualmente? También parece ser responsable de la paginación.Del wiki de Identificador de proceso :
fuente
El proceso con
pid 0
es el planificador,fuente