Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


monitores teoricos y en java, Esquemas y mapas conceptuales de Programación Informática

esquema sintetizado con la explicacion de los monitores teoricos

Tipo: Esquemas y mapas conceptuales

2020/2021

Subido el 14/05/2023

rebeca-villalba
rebeca-villalba 🇪🇸

1 documento

1 / 2

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
MONITORES TEORICOS
Tienen 2 colas de espera, una para los procesos que quieren entrar al recurso compartido, otra
cola para procesos por cada variable de condición que se declare.
Existen varios modelos de señalización:
SC (señalar y continuar): P1 queda bloqueado por el wait, P2 desbloquea a P1. Cuando
P2 acaba P1 continua su operación tras el wait que lo bloqueó.
SX (señalar y salir): igual que el anterior pero P1 en vez de seguir, vuelve a la cola de
procesos.
SA (señalar automáticamente): P1 queda bloqueado, P2 desbloquea el recurso y
desbloquea automáticamente a P1 y este sigue su ejecución.
SW (señalar y esperar): P1 esta bloqueado, P2 desbloquea a P1 y vuelve a la cola de
espera y P1 continua.
SU (señalar con urgencia): igual que SW pero P2 vuelve a la cola de procesos urgentes
que son prioritarios sobre la otra.
EN C++ 11 SE PUEDEN HACER MONITORES USANDO CERROJOS Y VARIABLES DE CONDICION
SEMAFORO SIMULADO CON MONITOR
pf2

Vista previa parcial del texto

¡Descarga monitores teoricos y en java y más Esquemas y mapas conceptuales en PDF de Programación Informática solo en Docsity!

MONITORES TEORICOS

Tienen 2 colas de espera, una para los procesos que quieren entrar al recurso compartido, otra cola para procesos por cada variable de condición que se declare. Existen varios modelos de señalización:  SC (señalar y continuar): P1 queda bloqueado por el wait, P2 desbloquea a P1. Cuando P2 acaba P1 continua su operación tras el wait que lo bloqueó.  SX (señalar y salir): igual que el anterior pero P1 en vez de seguir, vuelve a la cola de procesos.  SA (señalar automáticamente): P1 queda bloqueado, P2 desbloquea el recurso y desbloquea automáticamente a P1 y este sigue su ejecución.  SW (señalar y esperar): P1 esta bloqueado, P2 desbloquea a P1 y vuelve a la cola de espera y P1 continua.  SU (señalar con urgencia): igual que SW pero P2 vuelve a la cola de procesos urgentes que son prioritarios sobre la otra. EN C++ 11 SE PUEDEN HACER MONITORES USANDO CERROJOS Y VARIABLES DE CONDICION SEMAFORO SIMULADO CON MONITOR

El valor del semaforo se inicializa a false para que el primer proceso que entre en el wait, se salte el if y cambie el valor del semaforo a true para que los demás procesos que vienen si puedan entrar en le monitor. En el método wait se comprueba si el semáforo esta en true, es decir, mirándolo como un semáforo, si el valor del semáforo esta a cero se ejecuta la operación delay que bloquea al proceso en cuestión y lo envia a la cola de espera de la condición asociada a csem. En el método signal, si la cola de espera asociada a la variable de condición no está vacia, es decir, la cola de espera del semaforo tiene procesos, se ejecuta la operación resume que desbloquea un proceso, el proceso que se ha ejecutado anteriormente abandona el monitor y la región es cedida al nuevo proceso que se acaba de desbloquear. Si la cola esta vacia, el semaforo se pondrá a false, es decir, se marcara como libre para que otros procesos puedan entrar.

MONITORES EN JAVA ( API ESTANDAR)

Son casi iguales que los teóricos, pero estos solo tienen una cola de espera, el wait-set,

en vez de tener una cola de espera por cada condición que haya.

Los campos protegidos por el monitor suelen declarar private