¿Por qué `htop` muestra más proceso que` ps`

Respuestas:

249

Por defecto, htopenumera cada hilo de un proceso por separado, mientras psque no lo hace. Para desactivar la visualización de hilos, presione Ho use el menú "Opciones de configuración / visualización", "Ocultar hilos de usuario". Esto pone la siguiente línea en su ~/.htoprco ~/.config/htop/htoprc(alternativamente, puede ponerla allí manualmente):

hide_userland_threads=1

(Además hide_kernel_threads=1, se activa presionando K, pero es 1 por defecto).

Otra opción útil es "Mostrar hilos en un color diferente" en el mismo menú ( highlight_threads=1en .htoprc), lo que hace que los hilos se muestren en un color diferente (verde en el tema predeterminado).

En la primera línea de la htoppantalla, hay una línea como "Tareas: 377, 842 thr, 161 kthr; 2 corriendo ". Esto muestra el número total de procesos, subprocesos de usuario, subprocesos del núcleo y subprocesos en un estado ejecutable. Los números no cambian cuando filtra la pantalla, pero las indicaciones "thr" y "kthr" desaparecen cuando desactiva la inclusión de hilos de usuario / núcleo respectivamente.

Cuando ve múltiples procesos que tienen todas las características en común, excepto el PID y los campos relacionados con la CPU (valor agradable, CPU%, TIEMPO +, ...), es muy probable que sean hilos en el mismo proceso.

Gilles
fuente
¿Alguna pista sobre por qué este es el valor predeterminado? ¿Por qué es eso relevante? Parece agregar ruido, pero supongo que hay una buena razón.
tuxayo
0

Para mí, en un sistema arch linux más o menos actual, ps xfme muestra solo los procesos que pertenecen a mi ID de usuario. htopme muestra todos los procesos Intente ps -efobtener una lista de todos los procesos, o tal vez ps -ejHobtener una lista de relación hijo / padre.

Bruce Ediger
fuente