procesos e hilos_parte_3

16
Ahora que hemos visto porqué podrían ser útiles los hilos y cómo se pueden utilizar, vamos a investigar, la idea un poco más de cerca. El modelo 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.

Upload: regina-maritzol-tenemaza-vera

Post on 12-Jun-2015

1.428 views

Category:

Education


0 download

DESCRIPTION

Entendamos la diferencia entre proceso e hilo, cuál es el odelo clásico del hilo

TRANSCRIPT

Page 1: Procesos e hilos_parte_3

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.

Page 2: Procesos e hilos_parte_3

.

Ing Maritzol Tenemaza MSc 2

Un conjunto recursos relacionados

Una manera de ver Procesos

Page 3: Procesos e hilos_parte_3

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.

Page 4: Procesos e hilos_parte_3

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

Page 5: Procesos e hilos_parte_3

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

Page 6: Procesos e hilos_parte_3

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

Page 7: Procesos e hilos_parte_3

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

Page 8: Procesos e hilos_parte_3

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

Page 9: Procesos e hilos_parte_3

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

Page 10: Procesos e hilos_parte_3

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

Page 11: Procesos e hilos_parte_3

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

Page 12: Procesos e hilos_parte_3

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

Page 13: Procesos e hilos_parte_3

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

Page 14: Procesos e hilos_parte_3

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

Page 15: Procesos e hilos_parte_3

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.

Page 16: Procesos e hilos_parte_3

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