Please enable JavaScript.
Coggle requires JavaScript to display documents.
SINCRONIZACION Y COMUNICACION DE PROCESOS - Coggle Diagram
SINCRONIZACION Y COMUNICACION DE PROCESOS
MONITORES
Es un conjunto de procedimientos que proporciona el acceso con exclusión mutua por un grupo de procesos el cual es compartido
Se puede ver como una valla alrededor del curso o también recursos en todo caso, de modo que los procesos que quieran utilizarlo deben estar dentro de ella
No proporcionan un mecanismo para la sincronización para ello usa una variable de condición (señal y espera) permitiendo sincronizar los procesos
Debe usar un sistema de prioridades en la asignación impidiendo que un proceso en espera sea postergado por otros procesos
EXCLUSION MUTUA
ALLGORITMO DEKKER
Fue presentada por Dijkstra en 1968, se lo utiliza al igual que en la solcuion de Peterson, una variable turno
Sirve para establecer la prioridad relativa de los dos procesos y su actualizacion se realiza en la seccion critica
ALGORITMO DE PETERSON
Se introduce una variable adicional, que denominaremos turno, que solamente resulta útil cuando se produzca un problema de petición simultanea de acceso a la sección critica
SEMAFOROS
Dijkstra dio la solucion en
1968 de forma elegante y sencilla
Se implementa solo con una cola
inicializa (S: SemaforoBinario; v: integer)
poner el valor del semáforo S al valor de v (0 o 1)
operación de espera
espera (S) if S = 1 then S := 0
else suspender la tarea que hace la llamada y ponerla en la cola de tareas
Operación de señal
señal (S) if la cola de tareas está vacía then S := 1
else reanudar la primera tarea de la cola de tareas
Exclusión MUtua
La operación espera se usa como procedimiento de bloqueo y la señal como procedimiento de desbloqueo. Se pueden usar tantos semáforos como clases de secciones críticas se establezcan.
Sistemas con único procesador.
se inhibe las interrupciones durante la ejecución de un semáforo.
Sistemas Multiprocesador.
No funciona debido a que las instrucciones de los procesadores se pueden entrelazar de cualquier forma.
Sincronización.
Permite que se pueda programar fácilmente la sincronización entre dos tareas. Las operaciones de espera y señal no se utilizan dentro proceso sino separados. A veces se emplea la señal para denominar que un semáforo se usa para sincronizar procesos
Visión General.
El semáforo resulta adecuado cuando hay que proteger un recurso que pueden compartir varios procesos. Pero cuando se protege un conjunto de recursos similares se usa una versión más general que cuenta el número de recursos disponibles. Si el valor inicial es 0, ningún proceso conseguirá entrar, si es 1 un solo proceso conseguirá entrar, para valores mayores que 1 se pueden realizar tantas ejecuciones concurrentes del código como indique dicho número.
EXCLUSIÓN MUTUA
Es el meotdo ,as sencillo de comunicacion entre los procesos de un programa concurrente es el uso comun de unas variables de datos
Sección critica
Son aquellas partes de los procesos concurrentes que no pueden ejecutarse de forma concurrente o tambien que desde otro proceso se deben ver como si fueran una unica instruccion
PROBLEMAS DE LOS JARDINES
Donde se supone controlar el numero de visitantes la entrada y salida se puede realizar por dos puntos
Se desea conocer en cualquier momento el numero
Asociamos el proceso P1 a un punto de entrada y el proceso P2 al otro punto de entrada
Ambos procesos usan la misma posición de memoria para guardar el valor de X