You are on page 1of 4

Captulo 4.

Exclusin Mutua

En los sistemas distribuidos se producen situaciones en las que hay recursos


compartidos que no pueden ser utilizados por ms de un proceso al mismo tiempo.
En sistemas con uno o ms procesadores que comparten memoria, suelen utilizarse
mecanismos como semforos, monitores, regiones crticas condicionales, etc. Sin
embargo, en los sistemas distribuidos los procesos ya no comparten la memoria fsica
(suponemos que no se dispone de memoria compartida distribuida), por lo que
debemos pensar en otros algoritmos que nos proporcionen la exclusin mutua.
Los requisitos bsicos que debe cumplir un algoritmo de exclusin mutua son los
siguientes:

Viernes 12 de Abril de 2013

Seguridad

Viveza

Orden

Como mucho, slo un


proceso puede estar
ejecutndose dentro de la
regin crtica en un
momento dado.

Un proceso que desea


entrar en la regin crtica
debe poder entrar en algn
tiempo (siempre que
cualquier proceso
ejecutndose dentro de la
regin la abandone). Esto
quiere decir que no deben
producirse interbloqueos ni
inanicin.

La entrada a la regin crtica


debe realizarse en el orden
causal "sucedi antes"
definido por Lamport. ()

Se pueden tomar dos enfoques en el diseo de estos algoritmos para proporcionar la


exclusin mutua: algoritmos centralizados y algoritmos distribuidos.

Algoritmo de Lamport
La forma ms simple de presentar un sistema distribuido la present Lamport en 1978,
y se basa en la utilizacin de un proceso servidor como coordinador de la regin
crtica.
Siempre que un proceso
cliente P2 quiera entrar en la
regin crtica, enva un
mensaje de solicitud al
coordinador, indicndole la
regin crtica en la que desea
entrar.

Si ningn otro proceso est en ese momento dentro de la regin crtica, el coordinador
enva una respuesta otorgando el permiso.
Cuando le llega la respuesta al proceso solicitante, entra en la regin crtica. Cuando P2
sale de la regin crtica, se lo comunica al coordinador para liberar su acceso exclusivo.

Viernes 12 de Abril de 2013

Supongamos ahora que mientras


P2 est dentro de la regin crtica
otro proceso P1 pide permiso
para entrar en la misma regin
crtica.
El coordinador sabe que la regin
crtica est ocupada, por lo que no concede el permiso por ej. no respondiendo a la
peticin- con lo cual el proceso P1 se queda bloqueado esperando una respuesta. La
solicitud de P1 queda encolada en una cola de peticiones al coordinador.

Cuando P2 sale de la regin


crtica, se lo hace saber al
coordinador, el cual saca de la
cola de espera de esa regin
crtica la primera solicitud (la de
P1) y le enva un mensaje
otorgndole el permiso para
entrar en la regin crtica. Al
recibir
P1 el mensaje de
permiso, accede a la regin
crtica.

Es fcil ver que este algoritmo cumple las tres reglas de exclusin mutua:
1) No hay ms de un proceso en un momento dado;
2) No hay inanicin, pues cuando un proceso sale entra otro (si est esperando), y
3) La concesin de permisos de acceso se realiza por orden.
Este algoritmo consigue su cometido con tres mensajes:
1. Solicitud
2. Concesin y
3. Liberacin
y puede utilizarse para cualquier poltica de asignacin de recursos.

Viernes 12 de Abril de 2013

Referencias
http://www.slideshare.net/andalmi/estructura-de-los-sistemas-operativos
http://www.sc.ehu.es/acwlaalm/sdi/introduccion-slides.pdf
http://www.sc.ehu.es/acwlaalm/sdi/1-Introduccion.pdf
http://www.sc.ehu.es/acwlaalm/sdi/tiempo-slides.pdf

Viernes 12 de Abril de 2013

You might also like