GNU/Linux >> Tutoriales Linux >  >> Linux

¿GNU/Linux cuenta procesos e hilos juntos cuando limito su número?

El nproc el límite del que está hablando se aplica a entidades ejecutables , por lo tanto, limita los hilos (y, por lo tanto, los procesos que los contienen) . Cada proceso tiene al menos un subproceso (el subproceso principal), por lo que solo se pueden ejecutar los subprocesos. . Estrictamente hablando, los procesos no son "ejecutables".

Esta respuesta explica la diferencia real entre subprocesos y procesos en Linux.

Probé el código en daya La respuesta de (también se agregó sleep(1); en el código del hilo) y a diferencia de él (?!), llegué al límite cuando se crearon demasiados hilos:pthread_create() estaba devolviendo EAGAIN . El pthread_create(3) la documentación dice lo siguiente sobre este error:

OTRA VEZ

Recursos insuficientes para crear otro subproceso o se encontró un límite impuesto por el sistema en la cantidad de subprocesos. El último caso puede ocurrir de dos maneras:se alcanzó el límite de recursos blandos RLIMIT_NPROC (establecido a través de setrlimit(2)), que limita la cantidad de procesos para una ID de usuario real; o se alcanzó el límite de todo el sistema del kernel en el número de subprocesos, /proc/sys/kernel/threads-max.

No veo ninguna mención de un específico límite por subproceso en el código fuente del kernel, solo veo RLIMIT_NPROC allí, cuál es el límite que puedes cambiar en limits.conf (con nproc ), ulimit -u o setrlimit(2) .


Linux
  1. ¿Qué son los procesos, subprocesos, procesos ligeros y estado del proceso de Linux?

  2. Linux:Buscar y eliminar procesos zombis

  3. ¿Número máximo de subprocesos por proceso en Linux?

  4. ¿Cuándo usar pthread_exit() y cuándo usar pthread_join() en Linux?

  5. En Linux, ¿desde cuándo comienza a contar el tiempo de actividad?

Comando de archivo de Linux:qué hace y cómo usarlo

Comando Wc en Linux (Cuenta Número de Líneas, Palabras y Caracteres)

¿Qué significa nulo en Linux y Computación?

Fkill:busque y elimine procesos de forma interactiva en Linux

Linux:busque el número de archivos en un directorio y subdirectorios

Cómo instalar y usar GNU Emacs en distribuciones de Linux