Está en la página 1de 11

EXCLUSIÓN MUTUA: SOLUCIÓN

POR HARDWARE
YERALDIN TATIANA GARCIA
LUISA FERNANDA ROA
UNIVERSIDAD DE CUNDINAMARCA
INTRODUCCIÓN
La exclusión mutua es la actividad que realiza
el sistema operativo para evitar que dos o
más procesos ingresen al mismo tiempo a un
área de datos compartidos o accedan a un
mismo recurso.
En otras palabras, es la condición por la cual,
de un conjunto de procesos, sólo uno puede
acceder a un recurso dado o realizar una
función dada en un instante de tiempo.
INHABILITACIÓN DE INTERRUPCIONES

En una máquina monoprocesador, la ejecución de procesos concurrentes no


puede superponerse; los procesos solo pueden intercalarse. Es más, un proceso
continuará ejecutando hasta que solicite un servicio del sistema operativo o
hasta que sea interrumpido. Por tanto, para garantizar la exclusión mutua, es
suficiente con impedir que un proceso sea interrumpido. Esta capacidad puede
ofrecerse en forma de primitivas definidas por el núcleo del sistema para
habilitar o inhabilitar las interrupciones.
Un proceso puede hacer cumplir la exclusión mutua del siguiente modo:
INSTRUCCIONES ESPECIALES DE LA MÁQUINA

En configuraciones de multiprocesador, varios procesadores comparten el


acceso a una memoria principal común. En este caso, no hay una relación
maestro/esclavo, sino que los procesadores funcionan independientemente en
una relación de igualdad. No hay un mecanismo de interrupciones entre los
procesadores en el que se pueda basar la exclusión mutua.
En esta sección se consideran dos de las instrucciones implementadas más
habitualmente:
PROPIEDADES DE LAS SOLUCIONES CON
INSTRUCCIONES DE MÁQUINA
El uso de instrucciones especiales de la máquina para hacer cumplir la exclusión
mutua tiene varias ventajas:
• Es aplicable a cualquier número de procesos en sistemas con memoria compartida, tanto
de monoprocesador como de multiprocesador.
• Es simple y fácil de verificar.
• Puede usarse para disponer de varias secciones críticas; cada sección crítica puede
definirse con su propia variable.
Algunas desventajas importantes son las siguientes:
• Se emplea espera activa. Así pues, mientras un proceso está esperando para acceder a
la sección critica, continua consumiendo tiempo del procesador.
• Puede producirse inanición. Cuando un proceso abandona la sección crítica y hay más de
un proceso esperando, la selección es arbitraria. Así pues, se podría denegar el acceso a
algún proceso indefinidamente.
• Puede producirse interbloqueo. Supóngase la siguiente escena en un sistema
monoprocesador. El proceso P1 ejecuta una instrucción especial (sea TS o Intercambiar) y
entra en su sección critica. P1 es interrumpido para dar el procesador a P2, que tiene
mayor prioridad. Si P2 intenta ahora usar el mismo recurso que P1, se le negará el acceso
por el mecanismo de exclusión mutua. De este modo, P2 entrará en un bucle de espera
activa. Sin embargo, P1 nunca será expedido porque su prioridad es menor que la de otro
proceso listo, esto es, P2.

Debido a estos inconvenientes tanto de las soluciones por software como por
hardware, es necesario buscar otros mecanismos.
BIBLIOGRAFÍA

• Sistemas Operativos, William Stallings.


• sites.google.com/site/diegomaidanati/Home/concurrencia-exclusion-mutua-y-
sincronización
• cidecame.uaeh.edu.mx/lcc/mapa/PROYECTO/libro26/exclusin_mutua

También podría gustarte