procesos e hilos_parte_3
DESCRIPTION
Entendamos la diferencia entre proceso e hilo, cuál es el odelo clásico del hiloTRANSCRIPT
Ahora que hemos visto porqué podrían ser útiles los hilos y cómo sepueden utilizar, vamos a investigar, la idea un poco más de cerca. Elmodelo de Proceso se basa en dos conceptos independientes:
•Agrupamiento de recursos.
•Ejecución
A veces es útil separarlos, aquí es donde entran los hilos.
Bibliografía: Sistemas Operativos Modernos, Andrew Tanenbaum.
.
Ing Maritzol Tenemaza MSc 2
Un conjunto recursos relacionados
Una manera de ver Procesos
Ing Maritzol Tenemaza MSc 3
•Memoria: datos y Programa•Archivos Abiertos•Procesos Hijos•Información Contable•Alarmas pendientes•Manejadores de señales
Un proceso tiene:
Al reunirlos como un proceso pueden administrarse con más facilidad.
Una forma de ver un hilo:
Hilo de Ejecución El otro concepto que tiene
un recurso es un hilo deejecución. (hilo) El hilo tiene un contador de
programa que lleva elregistro de cuál instrucciónse va a ejecutar acontinuación.
Tiene registros quecontienen sus variables detrabajo actuales.
Tiene una pila que contieneel historial de ejecución, conun conjunto de valores paracada procedimiento al quese ha llamado, pero del cualno se haya devueltotodavía.
Ing Maritzol Tenemaza MSc 4
Hilo y Proceso:
Conceptos distintos El hilo se debe
ejecutar en ciertoproceso.
El hilo y su procesoson conceptosdistintos y puedentratarse por separado.
Los procesos seutilizan para agruparlos recursos. Son lasentidades planificadaspara su ejecución enla CPU.
Ing Maritzol Tenemaza MSc 5
Qué agregan los hilos al modelo
de procesos
Permiten que se
lleven a cabo varias
ejecuciones en el
mismo entorno del
proceso. Que son
en gran parte
independientes
unas de otras.
Ing Maritzol Tenemaza MSc 6
El modelo clásico del Hilo
En el primer caso los hilos comparten un espacio de direcciones y otros recursos.
En el segundo caso los procesos comparten la memoria física, los discos, las impresoras y otros recursos.
Ing Maritzol Tenemaza MSc 7
Los hios toman el nombre de
procesos ligeros Como los hilos tienen algunos
de las propiedades de los procesos, algunas veces se les llama Procesos Ligeros.
El término Mutihilamientotambién se usa para describir la situación de describir varios hilos en el mismo proceso.
Algunas CPUs tienen soporte en el hardware para el multihilamiento y permiten que las conmutaciones de hilos ocurran en una escala de tiempo en nanosegundos.
Ing Maritzol Tenemaza MSc 8
El modelo clásico del Hilo
Tres procesos cada uno
con un hilo
Un proceso con tres hilos
Kernel
Proceso
Hilo
Proceso1 Proceso 2 Proceso 3
Hilo
9Ing Maritzol Tenemaza MSc
El modelo clásico del hilo
Cuando se ejecuta un proceso con multihilamiento en un sistema con una CPU, los hilos tomas turnos para ejecutarse, la CPU conmuta rápidamente entre un hilo y otro.
Si los hilos estarían limitados a operaciones, parecerían ejecutarse en paralelo.
Ing Maritzol Tenemaza MSc 10
El modelo clásico del hilo
Los distintos hilos en un proceso NO son tan independientes como en los procesos.
Debido a que comparten: El mismo espacio de
direcciones.
Las mismas variables globales.
Un hilo podría borrar la pila de otro hilo, NO hay protección entre hilos, debido a que: Es imposible.
No debería ser necesario.
Ing Maritzol Tenemaza MSc 11
El modelo clásico del hilo
Un proceso siempre es propiedad de un
usuario, que se supone ha creado
varios hilos para que puedan cooperar,
no pelear.
Ing Maritzol Tenemaza MSc 12
Modelo clásico de un hilo.
Elementos compartidos por todos los hilos en un proceso.
Elementos privados para
cada hilo
Elementos por Proceso:
Espacio de direcciones.
Variables Globales.
Archivos abiertos.
Procesos hijos.
Alarmas pendientes.
Señales y manejadores de
señales.
Información Contable.
Elementos por hilo
Contador de programa
Registros
Pila
Estado.
Ing Maritzol Tenemaza MSc 13
Modelo clásico de un hilo.
Al igual que un proceso un hilo puede estar en uno de varios estados:
En ejecución (Tiene la CPU)
Bloqueado (En espera de que algún evento lo desbloquee)
Listo (se programa para ejecutarse)
Terminado.
Las transiciones son las mismas que las de los procesos.
Ing Maritzol Tenemaza MSc 14
El modelo clásico del Hilo
Kernel
Ing Maritzol Tenemaza MSc 15
ProcesoHilo 1 Hilo 2 Hilo 3
Pila del Hilo 3Pila del
Hilo 1
Cada Hilo tiene su propia Pila.
BIbliografía
Sistemas Operativos
Andrew Tanenbaum 3 edición – 2009
Imágenes del Internet
Fundamentos de Sistemas Opertivos
Silvershatz, Galvin Gagne
Septima edición
2005
Ing Maritzol Tenemaza MSc 16