RSS

martes, 6 de octubre de 2009

2.5 PROCESOS E HILOS


Unidad mínima de asignación: tarea.
Unidad mínima de expedición: hilo.

Dos hilos de una misma tarea (denominados hilos pares) comparten el segmento de código, el segmento de datos y un espacio de pila, es decir, los recursos asignados a la tarea.
Podemos captar la funcionalidad de los hilos si comparamos el control de múltiples hilos con el control de múltiples procesos. En el caso de los procesos, cada uno opera independientemente de los otros; cada proceso tiene su propio contador de programa, registro de pila, y espacio de direcciones. Este tipo de organización es muy útil cuando los trabajos que los procesos efectúan no tienen ninguna relación entre si.
Cuando un hilo está en ejecución, posee el acceso a todos los recursos que tiene asignados la tarea.
Un hilo tendrá lo siguiente:
Estado.
·       Contexto del procesador. Punto en el que estamos ejecutando, la instrucción concretamente en la que nos hallamos.
·       Pila de ejecución donde se irá metiendo y sacando instrucciones.
·       Espacio de almacenamiento estático donde almacenará las variables.
·       Acceso a los recursos de la tarea, que son compartidos por todos los hilos de la tarea.
* Ventajas del uso de hilos.
·       Se tarda menos tiempo en crear un hilo de una tarea existente que en crear un nuevo proceso.
·       Se tarda menos tiempo en terminar un hilo que en terminar un proceso.
·       Se tarda menos tiempo en cambiar entre dos hilos de una misma tarea que en cambiar entre dos procesos
·       Es mas sencillo la comunicación entre hilos de una misma tarea que entre diferentes procesos.
·       Cuando se cambia de un proceso a otro, tiene que intervenir el núcleo del sistema operativo para que haya protección. 

0 comentarios:

Publicar un comentario