Aplicaciones comerciales (cemaforos, mutex etc..)

Solo disponible en BuenasTareas
  • Páginas : 8 (1953 palabras )
  • Descarga(s) : 0
  • Publicado : 31 de mayo de 2011
Leer documento completo
Vista previa del texto
Universidad Mesoamericana De San Augustin

SEMAFOROS Y SUS TIPOS

MAESTRO:
L.C.C. Sergio Aguilar Erosa

EQUIPO:
3
INTEGRANTES:
Cervera valencia Jorge Carlos
García Cervera juan Carlos
Jesús Zapata Azarcoya

MATERIA:
Aplicaciones Comerciales
GRADO :
5° SEMESTRE
SEMAFOROS
Un mecanismo semáforo consta básicamente de dos operaciones primitivas señal (Signal) y espera (Wait)(Originalmente definidas como P y V por Disjkstra), que operan sobre un tipo especial de variable semá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 y WAIT. Ambas primitivas llevan un argumento cada una, la variable semáforo, y pueden definirse del modo siguiente..:SIGNAL (s) ..:
Incrementa el valor de su argumento semáforo, s , en una operación indivisible.
WAIT (s) ..:
Decrementa el valor de su argumento semáforo, s , en tanto el resultado no sea negativo. La conclusión de la operación WAIT, una vez tomada la decisión de decrementar su argumento semáforo
MUTEX (Mutual Exclusion)
(en programas de ordenadores) sistema de sincronización de acceso múltiplepara origenes de información común (por medio del mecanismo de cerrar y abrir "lock-unlock

Los algoritmos de exclusión mutua (comúnmente abreviada como mutex por mutual exclusion) se usan en programación concurrente para evitar el uso simultáneo de recursos comunes, como variables globales, por fragmentos de código conocidos como secciones críticas.
La mayor parte de estos recursos son lasseñales, contadores, colas y otros datos que se emplean en la comunicación entre el código que se ejecuta cuando se da servicio a una interrupción y el código que se ejecuta el resto del tiempo. Se trata de un problema de vital importancia porque, si no se toman las precauciones debidas, una interrupción puede ocurrir entre dos instrucciones cualesquiera del código normal y esto puede provocar gravesfallos.
La técnica que se emplea por lo común para conseguir la exclusión mutua es inhabilitar las interrupciones durante el conjunto de instrucciones más pequeño que impedirá la corrupción de la estructura compartida (la sección crítica). Esto impide que el código de la interrupción se ejecute en mitad de la sección crítica.

MONITORES

Otra primitiva de sincronización de alto nivel es eltipo monitor.
Un monitor es una construcción para concurrencia que contiene tanto los datos como los procedimientos para asignar un recurso compartido específico.
• La sintaxis de un monitor es:
type nombre-monitor = monitor
declaraciones de variables
procedure entry P1( ... );
begin ...end;
procedure entry P2( ... ),
begin ... end;
...........................
procedure entry Pn( ... );begin ... end;
begin
código de inicialización
end.
• Para ejecutar una función de asignación de recursos, un proceso debe llamar a una entrada del monitor.
• La construcción monitor asegura que solo un proceso a la vez puede estar activo dentro del monitor.
• Las variables que se encuentran dentro del monitor pueden ser globales con respecto de todos los procedimientos del monitor o localescon respecto de un procedimiento específico.
• monitor tiene asociado un mecanismo de sincronización, la construcción condition, que le da mas poder para modelar esquemas de sincronización. var x,y: condition
• Las únicas operaciones que pueden ser invocadas sobre una variable condition son wait y signal.
• Efectos de las operaciones:x.wait : el proceso que la invoca es suspendido y agregado ala cola de la variable. x.signal: saca un proceso de la cola de la variable x

PASO DE MENSAJES
El paso de mensajes es imprescindible en sistemas distribuidos dado que en este caso no existen recursos directamente compartidos para intercambiar información entre los procesos.

Es una técnica empleada en programación concurrente para aportar sincronización entre
procesos y permitir la...
tracking img