Introducción:Los objetivos de Desarrollo Sostenible
Concepto de semáforo, exclusión mutua y sección critica
1. DOCENTE: JACINTO TOLEDO TORRES
MATERIA: SISTEMAS OPERATIVOS 1
MAESTRO: SOSA GARCIA YESEIDID
TRABAJO: DIAGRAMA DE ESTADO
SEMESTRE: 4 GRUPO: ”S”
INGENIERIA INFORMATICA
2. CONCEPTO DE SEMÁFORO, EXCLUSIÓN MUTUA Y SECCIÓN CRÍTICA.
SEMÁFORO.
Un semáforoesuna estructuradiseñadapara sincronizardoso más procesos,de modoque su
ejecuciónse realice de formaordenadaysinconflictosentre ellos consta de dos operaciones.
Primitivasseñal <signal>
Espera <Wait>
Originalmente definidascomoPyV por que operansobre untipoespecial de variablesemáforo
“S”. La variable semáforo puede tomar valores enteros y, excepto posiblemente en su
inicialización, solo puede ser accedida y manipulada por medio de las operaciones
Signal
Wait
EXCLUSIÓN MUTUA.
Consiste enque unsoloprocesoexcluye temporalmente atodoslosdemáspara usarun
recursocompartidode forma que garantice laintegridaddel sistema.
Es la parte del programa con un comienzo y un final claramente marcados que generalmente
contiene laactualizaciónde unaomásvariablescompartidas.Paraque unasoluciónal problema
de la exclusión mutua sea válida, se tienen que cumplir una serie de condiciones:
Hay que garantizar la exclusiónmutuaentre losdiferentesprocesosala hora de acceder al
recursocompartido.Nopuedehaber2procesosdentrode susrespectivasseccionescríticas.
No se deben hacer suposiciones en cuanto a la velocidad relativa de los procesos en
conflicto.
Ningúnprocesoque este fuera de su seccióncrítica debe interrumpiraotro para el acceso
a la sección critica.
Cuandomásde unprocesodeseeentrarensuseccióncritica,sele debe concederlaentrada
en un tiempo finito.
Para la solución al problema de la exclusión mutua hay 3 tipos de soluciones
Soluciones software
3. Soluciones hardware
Soluciones aportadas por el sistema operativo
Solose permitentresoperacionessobre unsemáforo:
1. Inicializa(s:SemáforoBinario;v:integer) -- >ponerel valordel semáforosal valorde v
(0,1).
2. Espera (wait) (s) if s= 1 thens: = 0 else Suspenderlatareaque hace la llamadayponerla
enla cola de tareas.
3. Señal (signal) (s) if colade tareasvacía thens: = 1 else Reanudarlaprimeratareade la
cola tareas.
Estas operacionessonprocedimientosque se implementancomoaccionesindivisibles.En
sistemasconun únicoprocesadorbastarásimplemente coninhibirlasinterrupciones
durante la ejecuciónde lasoperacionesdel semáforo.Al introducirel semáforose creaun
nuevoestadoenel diagramade transiciones,el de espera.
SecciónCrítica
Porciónde códigocon variablescompartidasyque debe ejecutarse enexclusiónmutua.
Los lenguajesconcurrentesdebenproporcionarherramientaspararesolvereste tipo de
problemas.