Tengo una pregunta sobre la implementación de pthread en Linux.cómo se ven pthreads en linux por el programador
Supongamos que un proceso tiene 5 hilos. Ahora, ¿cómo ve el programador estos hilos (o no los ve en absoluto)? p. Cuando se invoca el planificador, solo programa el proceso principal, y luego es la responsabilidad del proceso principal programar entre cada uno de sus hilos.
O a la inversa, ese planificador programa cada hilo como si fuera un proceso separado.
En ese caso, el proceso que creó los hilos debe cambiar de contexto. ¿Es tan? –
@Ganesh no necesariamente. El nuevo hilo podría ejecutarse en un núcleo diferente. Pero sí, en un núcleo dado al cambiar de un hilo a otro, ya sea en el mismo proceso o no, se produce un cambio de contexto. Cambiar a un subproceso en el mismo proceso puede ser más barato que cambiar a un subproceso en otro proceso, ya que es posible que no necesite invalidar la tabla de página, etc. –