Está en la página 1de 11

Universidad Catlica de El Salvador Centro Regional de Ilobasco

Tema:

Monitores

Materia:

Sistemas Operativos

Docente:

Ing. David Enmanuel Gonzlez Mira

Integrantes: Denny Alexis Herrera Marn Jos Baudilio Osorio Acosta Walter Alexander Miranda Bolaines

Carrera:

Ingeniera en Sistemas Informticos

Ilobasco, Lunes 10 de Septiembre del 2012.

ndice

Pg.

Introduccin ....................................................................................................................................... 3 Objetivos ............................................................................................................................................ 4 1. Monitores ....................................................................................................................................... 5 2. Componentes de un monitor ...................................................................................................... 5 3. Caractersticas de un monitor .................................................................................................... 7 4. Ventajas ......................................................................................................................................... 7 5. Desventajas .................................................................................................................................. 7 6. Sintaxis de un monitor ................................................................................................................. 8 7. Uso de condiciones ..................................................................................................................... 8 8. Funcionalidades ......................................................................................................................... 10

Introduccin En el presente trabajo de investigacin damos a conocer en que consiste el concepto de monitor, y como nos ayuda esta herramienta de sincronizacin de procesos que es implementada en lenguajes de alto nivel, adems se observa brevemente su funcionamiento, lo cual nos permitir aprender las componentes que posee un monitor las cuales son definidas cada una en qu consisten, tambin las caractersticas de un monitor, as como sus ventajas y desventajas lo cual permite conocer que problemas pueden surgir en la implementacin de monitores y tambin conocer con que ventajas contamos al hacer uso de monitores para la sincronizacin de procesos.

Objetivos

Objetivo General: Dar a conocer en qu consisten el uso monitores en la sincronizacin de procesos, cules son sus componentes, caractersticas y sus ventajas y desventajas que tiene la implementacin de estos.

Objetivos Especficos: Especificar el concepto de monitor. Determinar las ventajas y desventajas del uso de monitores. Definir las caractersticas de un monitor. Detallar las componentes de un monitor.

1. Monitores Los monitores son una herramienta de programacin para la sincronizacin de procesos, el cual contiene estructuras de lenguaje de alto nivel que han sido desarrolladas para describir una estructura fundamental de sincronizacin de alto nivel, lo cual se le conoce como de tipo monitor, el cual consta de uno o ms procedimientos, una secuencia de inicializacin y unos datos locales. Un monitor posee un conjunto de operaciones que son definidas por el programador que permiten la exclusin mutua dentro del monitor, la cual consiste en que si un proceso est ejecutando su seccin critica los dems procesos no podrn ejecutar su seccin critica, permitiendo as evitar el problema de la seccin critica, ya que es un problema que se daba con los semforos donde un uso incorrecto por parte del programador poda llevar a problemas de sincronizacin que terminaban produciendo un problema de seccin critica, esto es algo que se ve solucionado con el uso de los monitores, porque la estructura de un monitor nos asegura que solo un proceso estar activo dentro del monitor, permitiendo esto que el programador no tenga que codificar explcitamente dicha restriccin de sincronizacin.

2. Componentes de un monitor Un monitor est compuesto por cuatro componentes los cuales son: Inicializacin o cdigo de inicializacin Datos privados o compartidos (solo dentro del monitor) Mtodos del monitor operaciones Cola de entrada

Figura 1. Vista esquemtica de un monitor

Inicializacin o cdigo de inicializacin: Contiene el cdigo que ser ejecutado cuando el monitor es creado. Datos privados o compartidos: Contiene los procedimientos privados, los cuales solo pueden ser utilizados desde dentro del monitor y no sern visibles desde fuera del monitor. Mtodos del monitor operaciones: Son procedimientos que permiten ser llamados desde fuera del monitor. Cola de entrada: Se encuentran los hilos que han hecho llamadas a algn mtodo del monitor pero que an no han obtenido permiso para ejecutarlos.

3. Caractersticas de un monitor Las variables de datos privados estn solo accesibles para los procedimientos del monitor y no para procedimientos externos. Un proceso entra en el monitor invocando un procedimiento del monitor. Solo un proceso puede estar ejecutando en el monitor en un instante dado, cualquier otro proceso que haya invocado al monitor quedara suspendido mientras espera a que el monitor est disponible. Exclusin mutua dentro del monitor

4. Ventajas Soluciona problemas de regin crtica. Evita que ms de un proceso este ejecutando su seccin crtica. Garantiza que solo podr estar activo un proceso a la vez dentro del monitor. Implementan un nivel an ms alto de abstraccin facilitando el acceso a recursos compartidos.

5. Desventajas La estructura de monitor no es lo suficientemente potente como para modelar algunos esquemas de sincronizacin. La concurrencia est limitada si muchos procesos hacen uso del mismo monitor. El uso de monitores es bastante costoso, porque se pierde eficiencia por tanto bloqueo de los procesos.

6. Sintaxis de un monitor monitor nombre del monitor { // Declaracin de variables compartidas o privadas Procedimiento P1 ( . . . ) { ...} Procedimiento P2 ( . . . ) { ...} . . Procedimiento Pn ( . . . ) { ...} Cdigo de inicializacin ( . . . ) { ...} }

7. Uso de condiciones Un programador que necesite escribir un esquema de sincronizacin a la medida puede hacerlo definiendo una o ms variables de tipo condicin, dicho tipo permitir invocar las operaciones de wait y signal. La operacin wait nos permite que el proceso quede suspendido hasta que este sea invocado por otro proceso. En el caso de la operacin signal esta nos permite que se reanude exactamente uno de los procesos suspendidos y en caso de que no se encuentren procesos
8

suspendidos la operacin signal no tendr efecto, es decir no realizara ningn cambio siendo el estado, el mismo que si la operacin no se hubiera ejecutado. Por ejemplo para la utilizacin de condiciones se realiza de la siguiente forma: condition x; x.wait(); x.signal(); En el uso de monitores existen dos posibilidades la primera es la de Sealizar y esperar la cual se refiere a que un proceso P espera hasta que el proceso Q salga del monitor o espere a que se produzca otra condicin, la segunda posibilidad es la de Sealizar y continuar esta se refiere a que el proceso Q espera hasta que el proceso P salga del monitor o que se produzca otra condicin.

Figura 2. Monitor con variables de condicin

8. Funcionalidades Monitores con seales Un monitor es un mdulo de software que consta de uno o ms procedimientos, una secuencia de inicializacin y unos datos locales.

Pas De Mensajes Cuando los procesos interactan unos con otros, se deben satisfacer dos requisitos bsicos: La sincronizacin y la comunicacin. Los procesos tienen que sincronizarse para cumplir la exclusin mutua; los procesos cooperantes pueden necesitar intercambiar informacin. Un mtodo posible para ofrecer ambas funciones es el paso de mensajes. El paso de mensajes tiene la ventaja adicional de que se presta a ser implementado en sistemas distribuidos, as como en sistemas multiprocesador y monoprocesador de memoria compartida.

Transferencia de mensajes Esa otra cosa es la transferencia de mensajes. Este mtodo de comunicacin entre procesos utiliza dos primitivas SEND y RECEIVE que, al igual que los semforos y a diferencia de los monitores, son llamadas al sistema y no construcciones del lenguaje. Como tales, es fcil colocarlas en procedimientos de biblioteca, como:

send(destino, &mensaje); y receive(origen, &mensaje);

La primera llamada enva un mensaje a un destino dado, y la segunda recibe un mensaje de un origen dado (o de cualquiera [ANY] si al receptor no le importa). Si no hay un mensaje disponible.

10

Bibliografa

ABRAHAM SILBERSCHATZ, PETER BAER GALVIN, GREG GAGNE. Fundamentos de sistemas operativos, Sptima edicin, MC GRAW HILL, 2006.

WILLIAM STALLINGS. Sistemas operativos, Segunda edicin, PRENTICE HALL, 1997.

ABRAHAM SILBERSCHATZ, PETER BAER GALVIN, Sistemas operativos, Quinta edicin, PEARSON EDUCACIN, 1999.

ANDREW S. TANENBAUM, ALBERT S. WOODHULL, Sistemas operativos Diseo e implementacin, Segunda edicin, PRENTICE HALL, 1997.

Monitores, 5 de Septiembre de 2012, disponible en: http://es.scribd.com/doc/15255924/Monitores-Concurrencia

11

También podría gustarte