por
pobrecito hablador
el Domingo, 17 Octubre de 2004, 15:45h
(#371422)
Cambiar un hilo por otro es EXACTAMENTE (ojo a lo que te cuento) igual que cambiar un proceso por otro. Es muy sencillo: pillas el esp de uno y lo cambias por el de otro, eso provoca que el retorno del dispatcher restaure su EIP (que es lo que lo pone en ejecución). Además de eso hay que cambiar los registros y la PSW. En resumen: el contexto del procesador NO es el mismo entre hilos, lo que es igual son las tablas de páginas, y tampoco necesariamente idénticas (un hilo puede tener páginas de datos propias). Pero eso no afecta al tiempo de cambio de contexto.
Como ya he contestado al anterior también: en Linux 2.6 los hilos y los procesos se tratan exactamente igual, por ejemplo.
Re:Multithreading.
(Puntos:0)Como ya he contestado al anterior también: en Linux 2.6 los hilos y los procesos se tratan exactamente igual, por ejemplo.