Anda di halaman 1dari 5

En la variante con prioridad para los escritores, ningn

lector nuevo debe iniciar la escritura si un escritor esta


esperando. En la solucin que se propone seguimos una
estrategia diferente al caso anterior. Introducimos un nuevo
proceso controlador que ser el encargado de dar permiso
alas operaciones de lectura por parte de los lectores y de
realizar las operaciones de escritura solicitadas por los
escritores .
abrir_lectura: buzn empleado por los procesos lectores para
realizar peticiones de lectura
abrir_escritura: buzn empleado por los proceso escritores
para realizar peticione de escritura }
cerrar_lectura: cuando los procesos lectores terminan la
operacin de lectura emplean este buzn para indicar dicho
evento al proceso controlador.
buzon[i]: se grata de un vector de buzones. Existe un buzon
asociado a cada proceso (lector o escritos). Estos buzones son
empleados por el proceso controlador para enviar las
confirmaciones aros proceso lectores o escritores, indicando,
para el caso de los lectores que se han recogido la peticin de
lectura y que tienen permiso para realizarla y para el cas de los
escritores que la operacin de escritura se ha realizado
Un proceso L[i] comienza enviando una peticin de lectura (buzon
abrir_lectuar) para a continuacin quedar ala espera de un mensaje de
confirmacin por parte del proceso controlador (buzon[i]). La
comunicacin desde el proceso controlador a los diferentes procesos
lectores y escritores se realiza a travs de buzones individuales y
dedicadas a cada proceso lector o escritor. Una vez recibido el mensaje
de confirmacin, el lector se dedica a realizar la operacin de lectura
del recurso compartido. Al terminar la operacin de lectura envia un
mensaje al proceso controlador a traves del buzn cerrar_lectura para
indicar dicha situacin.
Comienza enviando un mensaje de escritura al ( buzon
abrir_escritura). A diferencia de los lectores, el proceso
que realiza la operacin de escritura es el proceso
controlador, permitiendo garantizar la exclusin
mutua en los escritores.
El controlador realiza la escritura y el escritor espera
un mensaje de confirmacin del controlador(buzon[j])
que inidicara que la operacin ha terminado
Emplea la espera selectiva para atender tres eventos
La primera alternativa se emplea para recibir
peticiones de lectura ya que la preferencia lo tienen
los escritores , se emplea EMPTY(abrir_escritura ) para
que no haya peticiones pendientes de escritura
Al segunda alternativa se emplea para reflejar la
terminacin de la operacin de lectura por parte de los
lectores a los que se les haya concedido permiso
La tercera alternativa se emplea para atender la
operacin de escritura.

Anda mungkin juga menyukai