Вы находитесь на странице: 1из 6

Monitores

Sistemas Operativo

Que Son Los Monitores


Los monitores son estructuras de un lenguaje de programacin que ofrecen una funcionalidad equivalente a la de los semforos y que son ms fciles de controlar. Los monitores fueron propuestos por Brich Hansen y mejorados por Hoare para poder utilizar procesos automticos de sincronizacin. Un mdulo monitor encapsula la mutua exclusin de datos y procedimientos que pueden acceder a los datos protegidos. Los usuarios pueden hacer llamadas a estos procedimientos usando al monitor como una tabla de estado para determinar cuando proceder y cuando suspender operaciones.

En Que Consiste Los Monitores

Modulo de software que encapsula


Estructuras de datos compartidas Procedimientos que operan con los datos compartidos Sincronizacin entre hebras/procesos concurrentes que llaman procedimientos

Garantiza acceso a datos compartido se realice slo a travs de los procedimientos definidos para su acceso

Ilustracin de un Monitor
Datos compartidos
Cola de hebras para usar Monitor Slo una hebra en Monitor al mismo tiempo

Procedimientos
Cdigo de Inicializacin

Cmo controla acceso Monitor

Exclusin mutua Slo una hebra/proceso puede estar ejecutndose dentro del monitor
Sincronizacin esta implcita en el monitor

Si una hebra/proceso trata de entrar al monitor cuando esta ocupado, entonces se bloquea hasta que se desocupe
Ms restrictivo que semforos Ms fcil de usar

Una vez dentro de un monitor una hebra puede verse incapacitada de continuar
Permite a una que est esperando entrar a monitor

Tipos de Monitores

Monitores de Hoare
Ejecutar hebra que espera inmediatamente Hebra que notifica se bloquea inmediatamente
condicin garantizada para cuando hebra que esperaba se ejecute hebra que notifica debe restaurar invariantes de monitor antes de notoficar

Monitores Mesa
Hebra que espera se prepara para ejecutar, pero hebra que notifica sigue en ejecucin
hebra que espera se ejecuta cuando hebra que notifica sale de monitor condicin puede ser falsa cuando hebra que esperaba se ejecuta

Hebra que notifica no necesita restaurar invariantes de monitor Hebra que esperaba debe volver a verificar por condicin

Вам также может понравиться