SlideShare una empresa de Scribd logo
1 de 8
Algoritmos de Dekker
Algoritmo de Dekker ,[object Object],[object Object]
Primer algoritmo de Dekker PROGRAMA UNO; Variables turno: Entero; Inicialización turno = 1; La variable turno obliga a que los procesos tengan que alternar turnos de acceso a la RC, si existen procesos lentos y rápidos se tiene el problema que los procesos lentos atrasen a los procesos rápidos, por lo que se presenta el problema de  SINCRONIZACIÓN FORZADA. Repeat Repeat Hace_Cosas(); Hace_Algo(); While turno = 2 Do; While turno = 1 Do; REGION_CRITICA(); REGION_CRITICA(); turno = 2; turno = 1; Hace_mas_cosas(); Hace_algo_mas(); Until Fin Until Fin PROCESO UNO PROCESO DOS
Segundo algoritmo de Dekker PROGRAMA DOS; Variables P1QE, P2QE: Bool; Inicialización P1QE = false; P2QE = false; Si el Quantum de tiempo de los procesos finaliza precisamente después del cambio de la variable P#QE, pero antes de la validación del While, puede darse que las dos condiciones sean verdaderas y los procesos se queden en un ciclo infinito, a este problema se le conoce como  INTERBLOQUEO. Repeat Repeat Hace_Cosas(); Hace_Cosas(); P1QE = true; P2QE = true; While P2QE Do; While P1QE Do; REGION_CRITICA(); REGION_CRITICA(); P1QE = False; P2QE = False; Hace_mas_cosas(); Hace_mas_cosas(); Until Fin Until Fin PROCESO UNO PROCESO DOS
Tercer algoritmo de Dekker PROGRAMA TRES; Variables P1A, P2A: Bool; Inicialización P1A = false; P2A = false; Si el Quantum de tiempo de los procesos finaliza precisamente después de la validación del While justo cuando ambas banderas tiene como valor “false” , pero antes del cambio en la variable P#A, puede presentarse el problema que ambos procesos ingresen a la región crítica al mismo tiempo, por lo que este algoritmo  NO GARANTIZA   EXCLUSIÓN MUTUA. Repeat Repeat Hace_Cosas(); Hace_Cosas(); While P2A Do; While P1A Do; P1A = true;  P2A = true;  REGION_CRITICA(); REGION_CRITICA(); P1A = False; P2A = False; Hace_mas_cosas(); Hace_mas_cosas(); Until Fin Until Fin PROCESO UNO PROCESO DOS
Cuarto algoritmo de Dekker PROGRAMA CUATRO; Variables P1QE, P2QE: Bool; Inicialización P1QE = false; P2QE = false; El utilizar un tiempo random para forzar la salida en el ciclo While puede ser un tiempo muy largo o corto de sincronización que podría no darse en el peor de los casos, a este problema se le conoce como  POSTERGACIÓN INDEFINIDA. Repeat Repeat Hace_Cosas(); Hace_Cosas(); P1QE = true; P2QE = true; While P2QE Do Begin P1QE = false; Delay (random()); P1QE = true; end;  While P1QE Do Begin P2QE = false; Delay (random()); P2QE = true; end;  REGION_CRITICA(); REGION_CRITICA(); P1QE = False; P2QE = False; Hace_mas_cosas(); Hace_mas_cosas(); Until Fin Until Fin PROCESO UNO PROCESO DOS
Quinto algoritmo de Dekker ,[object Object],[object Object],Algoritmo Problema Prioridad de Uso Algoritmo Uno Sincronización forzada 1 Algoritmo Cuatro Postergación Indefinida 2 Algoritmo Dos Interbloqueo 3 Algoritmo Tres No garantiza exclusión mutua 4
Quinto algoritmo de Dekker PROGRAMA CINCO; Variables P1QE, P2QE: Bool; turno: Entero; Inicialización P1QE = false; P2QE = false; turno = 1; Combinación entre el algoritmo 1 y algoritmo 4 Repeat Repeat Hace_Cosas(); Hace_Cosas(); P1QE = true; P2QE = true; While P2QE Do Begin if(turno = 2) Begin  P1QE = false; Delay (random()); P1QE = true; end; end;  While P1QE Do Begin if(turno = 1) Begin  P2QE = false; Delay (random()); P2QE = true; end; end;  REGION_CRITICA(); REGION_CRITICA(); turno = 2; P1QE = False; turno = 1; P2QE = False; Hace_mas_cosas(); Hace_mas_cosas(); Until Fin Until Fin PROCESO UNO PROCESO DOS

Más contenido relacionado

La actualidad más candente

Algoritmo de planificación srt
Algoritmo de planificación srtAlgoritmo de planificación srt
Algoritmo de planificación srtCarlos Solano
 
Automatas Finitos Deterministicos y No Deterministicos
Automatas Finitos Deterministicos y No DeterministicosAutomatas Finitos Deterministicos y No Deterministicos
Automatas Finitos Deterministicos y No DeterministicosRosviannis Barreiro
 
Sistemas operativos procesos
Sistemas operativos procesosSistemas operativos procesos
Sistemas operativos procesossistoperativos
 
Mecanismos de exclusion mutua y algoritmos
Mecanismos de exclusion mutua y algoritmosMecanismos de exclusion mutua y algoritmos
Mecanismos de exclusion mutua y algoritmosAbimael hernandez
 
Algoritmos de planificación de procesos en sistemas operativos
Algoritmos de planificación de procesos en sistemas operativosAlgoritmos de planificación de procesos en sistemas operativos
Algoritmos de planificación de procesos en sistemas operativosFernando Morales
 
Sistemas operativos procesos
Sistemas operativos   procesosSistemas operativos   procesos
Sistemas operativos procesosayreonmx
 
Portafolio lenguajes y automatas unidad 3 - Autómatas finitos
Portafolio lenguajes y automatas unidad 3 - Autómatas finitosPortafolio lenguajes y automatas unidad 3 - Autómatas finitos
Portafolio lenguajes y automatas unidad 3 - Autómatas finitosHumano Terricola
 
Tópicos Avanzados de Programación - Unidad 2 componentes y librerias
Tópicos Avanzados de Programación - Unidad 2 componentes y libreriasTópicos Avanzados de Programación - Unidad 2 componentes y librerias
Tópicos Avanzados de Programación - Unidad 2 componentes y libreriasJosé Antonio Sandoval Acosta
 
SO Unidad 2: Mecanismos de comunicación y sincronización de procesos
SO Unidad 2: Mecanismos de comunicación y sincronización de procesosSO Unidad 2: Mecanismos de comunicación y sincronización de procesos
SO Unidad 2: Mecanismos de comunicación y sincronización de procesosFranklin Parrales Bravo
 
Transiciones de Procesos
Transiciones de ProcesosTransiciones de Procesos
Transiciones de Procesossueich
 
Algoritmo ricart y Agrawala
Algoritmo ricart y AgrawalaAlgoritmo ricart y Agrawala
Algoritmo ricart y AgrawalaJackBryan3
 
Trabajo 2 transacciones en base de datos
Trabajo 2   transacciones en base de datosTrabajo 2   transacciones en base de datos
Trabajo 2 transacciones en base de datosJose O- Vera
 
Concurrencia interbloqueo e inanición
Concurrencia interbloqueo e inaniciónConcurrencia interbloqueo e inanición
Concurrencia interbloqueo e inaniciónjhonfgarcia
 
Mecanismo de sincronización de procesos
Mecanismo de sincronización de procesosMecanismo de sincronización de procesos
Mecanismo de sincronización de procesosjulio izaguirre
 
Jose luisroisic6a 20042015
Jose luisroisic6a 20042015Jose luisroisic6a 20042015
Jose luisroisic6a 20042015JLuis Reyes Olea
 
Elementos de una máquina de turing
Elementos de una máquina de turingElementos de una máquina de turing
Elementos de una máquina de turingvmtorrealba
 
Unidad 3 administracion de la memoria
Unidad 3 administracion de la memoriaUnidad 3 administracion de la memoria
Unidad 3 administracion de la memoriacaredimaria
 

La actualidad más candente (20)

Algoritmo de planificación srt
Algoritmo de planificación srtAlgoritmo de planificación srt
Algoritmo de planificación srt
 
Bloqueos _
Bloqueos _Bloqueos _
Bloqueos _
 
Automatas Finitos Deterministicos y No Deterministicos
Automatas Finitos Deterministicos y No DeterministicosAutomatas Finitos Deterministicos y No Deterministicos
Automatas Finitos Deterministicos y No Deterministicos
 
Sistemas operativos procesos
Sistemas operativos procesosSistemas operativos procesos
Sistemas operativos procesos
 
Mecanismos de exclusion mutua y algoritmos
Mecanismos de exclusion mutua y algoritmosMecanismos de exclusion mutua y algoritmos
Mecanismos de exclusion mutua y algoritmos
 
control de concurrencia
control de concurrenciacontrol de concurrencia
control de concurrencia
 
Algoritmos de planificación de procesos en sistemas operativos
Algoritmos de planificación de procesos en sistemas operativosAlgoritmos de planificación de procesos en sistemas operativos
Algoritmos de planificación de procesos en sistemas operativos
 
Sistemas operativos procesos
Sistemas operativos   procesosSistemas operativos   procesos
Sistemas operativos procesos
 
Portafolio lenguajes y automatas unidad 3 - Autómatas finitos
Portafolio lenguajes y automatas unidad 3 - Autómatas finitosPortafolio lenguajes y automatas unidad 3 - Autómatas finitos
Portafolio lenguajes y automatas unidad 3 - Autómatas finitos
 
Tópicos Avanzados de Programación - Unidad 2 componentes y librerias
Tópicos Avanzados de Programación - Unidad 2 componentes y libreriasTópicos Avanzados de Programación - Unidad 2 componentes y librerias
Tópicos Avanzados de Programación - Unidad 2 componentes y librerias
 
SO Unidad 2: Mecanismos de comunicación y sincronización de procesos
SO Unidad 2: Mecanismos de comunicación y sincronización de procesosSO Unidad 2: Mecanismos de comunicación y sincronización de procesos
SO Unidad 2: Mecanismos de comunicación y sincronización de procesos
 
Transiciones de Procesos
Transiciones de ProcesosTransiciones de Procesos
Transiciones de Procesos
 
Algoritmo ricart y Agrawala
Algoritmo ricart y AgrawalaAlgoritmo ricart y Agrawala
Algoritmo ricart y Agrawala
 
Trabajo 2 transacciones en base de datos
Trabajo 2   transacciones en base de datosTrabajo 2   transacciones en base de datos
Trabajo 2 transacciones en base de datos
 
Concurrencia interbloqueo e inanición
Concurrencia interbloqueo e inaniciónConcurrencia interbloqueo e inanición
Concurrencia interbloqueo e inanición
 
Sistemas tiempo-real
Sistemas tiempo-realSistemas tiempo-real
Sistemas tiempo-real
 
Mecanismo de sincronización de procesos
Mecanismo de sincronización de procesosMecanismo de sincronización de procesos
Mecanismo de sincronización de procesos
 
Jose luisroisic6a 20042015
Jose luisroisic6a 20042015Jose luisroisic6a 20042015
Jose luisroisic6a 20042015
 
Elementos de una máquina de turing
Elementos de una máquina de turingElementos de una máquina de turing
Elementos de una máquina de turing
 
Unidad 3 administracion de la memoria
Unidad 3 administracion de la memoriaUnidad 3 administracion de la memoria
Unidad 3 administracion de la memoria
 

Similar a Algoritmos de Dekker

Programacion concurrente
Programacion concurrenteProgramacion concurrente
Programacion concurrentepuracastillo
 
Estructuras de iteracion
Estructuras de iteracionEstructuras de iteracion
Estructuras de iteracionUVM
 
Sincronizacion Procesos
Sincronizacion ProcesosSincronizacion Procesos
Sincronizacion ProcesosDavid Lilue
 
Sincronizacion de Procesos
Sincronizacion de ProcesosSincronizacion de Procesos
Sincronizacion de Procesosmastermind87
 
Sincronización de Procesos
Sincronización de ProcesosSincronización de Procesos
Sincronización de ProcesosLuis Lastra Cid
 
Instrucciones de control repetitivas
Instrucciones de control repetitivasInstrucciones de control repetitivas
Instrucciones de control repetitivasAbrirllave
 
Colaborativo_Nelis Rivero
Colaborativo_Nelis RiveroColaborativo_Nelis Rivero
Colaborativo_Nelis RiveroNelisRivero
 
S Incronizacion De Procesos
S Incronizacion De ProcesosS Incronizacion De Procesos
S Incronizacion De ProcesosAcristyM
 
S Incronizacion De Procesos
S Incronizacion De ProcesosS Incronizacion De Procesos
S Incronizacion De ProcesosAcristyM
 
Sistemas operativos unidad 2
Sistemas operativos unidad 2Sistemas operativos unidad 2
Sistemas operativos unidad 2Luis Cigarroa
 
Definición y análisis de un problema
Definición y análisis de un problemaDefinición y análisis de un problema
Definición y análisis de un problemaJoaquin Lara Sierra
 
ARDUINO GRAFCET - Metodología para la adaptación de automatismos simulado...
ARDUINO  GRAFCET  - Metodología para la adaptación  de automatismos  simulado...ARDUINO  GRAFCET  - Metodología para la adaptación  de automatismos  simulado...
ARDUINO GRAFCET - Metodología para la adaptación de automatismos simulado...Jovanny Duque
 
Metodología de la programación
Metodología de la programaciónMetodología de la programación
Metodología de la programaciónAnsd
 
PLC: condicionamiento de acciones y receptividades GRAFCET
PLC: condicionamiento de acciones y receptividades GRAFCETPLC: condicionamiento de acciones y receptividades GRAFCET
PLC: condicionamiento de acciones y receptividades GRAFCETSANTIAGO PABLO ALBERTO
 
So 07-concurrencia-6x1
So 07-concurrencia-6x1So 07-concurrencia-6x1
So 07-concurrencia-6x1DIEGODIEGO23
 

Similar a Algoritmos de Dekker (20)

Programacion concurrente
Programacion concurrenteProgramacion concurrente
Programacion concurrente
 
Estructuras de iteracion
Estructuras de iteracionEstructuras de iteracion
Estructuras de iteracion
 
Sincronizacion Procesos
Sincronizacion ProcesosSincronizacion Procesos
Sincronizacion Procesos
 
Principios de Programacion
Principios de ProgramacionPrincipios de Programacion
Principios de Programacion
 
Sincronizacion de Procesos
Sincronizacion de ProcesosSincronizacion de Procesos
Sincronizacion de Procesos
 
Sincronización de Procesos
Sincronización de ProcesosSincronización de Procesos
Sincronización de Procesos
 
Instrucciones de control repetitivas
Instrucciones de control repetitivasInstrucciones de control repetitivas
Instrucciones de control repetitivas
 
Turbo Pascal 7
Turbo Pascal 7Turbo Pascal 7
Turbo Pascal 7
 
UNIDAD II ADMINISTRADOR DE PROCESADOR
UNIDAD II ADMINISTRADOR DE PROCESADORUNIDAD II ADMINISTRADOR DE PROCESADOR
UNIDAD II ADMINISTRADOR DE PROCESADOR
 
Tema0397
Tema0397Tema0397
Tema0397
 
Colaborativo_Nelis Rivero
Colaborativo_Nelis RiveroColaborativo_Nelis Rivero
Colaborativo_Nelis Rivero
 
S Incronizacion De Procesos
S Incronizacion De ProcesosS Incronizacion De Procesos
S Incronizacion De Procesos
 
S Incronizacion De Procesos
S Incronizacion De ProcesosS Incronizacion De Procesos
S Incronizacion De Procesos
 
Sistemas operativos unidad 2
Sistemas operativos unidad 2Sistemas operativos unidad 2
Sistemas operativos unidad 2
 
Definición y análisis de un problema
Definición y análisis de un problemaDefinición y análisis de un problema
Definición y análisis de un problema
 
ARDUINO GRAFCET - Metodología para la adaptación de automatismos simulado...
ARDUINO  GRAFCET  - Metodología para la adaptación  de automatismos  simulado...ARDUINO  GRAFCET  - Metodología para la adaptación  de automatismos  simulado...
ARDUINO GRAFCET - Metodología para la adaptación de automatismos simulado...
 
Clase 3 Unidad 2 Parte 2
Clase 3 Unidad 2 Parte 2Clase 3 Unidad 2 Parte 2
Clase 3 Unidad 2 Parte 2
 
Metodología de la programación
Metodología de la programaciónMetodología de la programación
Metodología de la programación
 
PLC: condicionamiento de acciones y receptividades GRAFCET
PLC: condicionamiento de acciones y receptividades GRAFCETPLC: condicionamiento de acciones y receptividades GRAFCET
PLC: condicionamiento de acciones y receptividades GRAFCET
 
So 07-concurrencia-6x1
So 07-concurrencia-6x1So 07-concurrencia-6x1
So 07-concurrencia-6x1
 

Último

Los avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesLos avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesMarisolMartinez707897
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Juan Martín Martín
 
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptPINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptAlberto Rubio
 
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfFeliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfMercedes Gonzalez
 
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACIONRESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACIONamelia poma
 
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...jlorentemartos
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOluismii249
 
Posición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptxPosición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptxBeatrizQuijano2
 
TRABAJO FINAL TOPOGRAFÍA COMPLETO DE LA UPC
TRABAJO FINAL TOPOGRAFÍA COMPLETO DE LA UPCTRABAJO FINAL TOPOGRAFÍA COMPLETO DE LA UPC
TRABAJO FINAL TOPOGRAFÍA COMPLETO DE LA UPCCarlosEduardoSosa2
 
Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024IES Vicent Andres Estelles
 
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIASISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIAFabiolaGarcia751855
 
Biografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfBiografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfGruberACaraballo
 
La Evaluacion Formativa SM6 Ccesa007.pdf
La Evaluacion Formativa SM6  Ccesa007.pdfLa Evaluacion Formativa SM6  Ccesa007.pdf
La Evaluacion Formativa SM6 Ccesa007.pdfDemetrio Ccesa Rayme
 
FICHA PROYECTO COIL- GLOBAL CLASSROOM.docx.pdf
FICHA PROYECTO COIL- GLOBAL CLASSROOM.docx.pdfFICHA PROYECTO COIL- GLOBAL CLASSROOM.docx.pdf
FICHA PROYECTO COIL- GLOBAL CLASSROOM.docx.pdfRaulGomez822561
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxFernando Solis
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docxEliaHernndez7
 
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptxLA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptxlclcarmen
 

Último (20)

Los avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesLos avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtuales
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024
 
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptPINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
 
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfFeliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
 
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACIONRESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
 
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
TEMA 14.DERIVACIONES ECONÓMICAS, SOCIALES Y POLÍTICAS DEL PROCESO DE INTEGRAC...
 
Lecciones 06 Esc. Sabática. Los dos testigos
Lecciones 06 Esc. Sabática. Los dos testigosLecciones 06 Esc. Sabática. Los dos testigos
Lecciones 06 Esc. Sabática. Los dos testigos
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
 
Posición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptxPosición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptx
 
Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024
 
Supuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docxSupuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docx
 
TRABAJO FINAL TOPOGRAFÍA COMPLETO DE LA UPC
TRABAJO FINAL TOPOGRAFÍA COMPLETO DE LA UPCTRABAJO FINAL TOPOGRAFÍA COMPLETO DE LA UPC
TRABAJO FINAL TOPOGRAFÍA COMPLETO DE LA UPC
 
Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024
 
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIASISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
 
Biografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfBiografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdf
 
La Evaluacion Formativa SM6 Ccesa007.pdf
La Evaluacion Formativa SM6  Ccesa007.pdfLa Evaluacion Formativa SM6  Ccesa007.pdf
La Evaluacion Formativa SM6 Ccesa007.pdf
 
FICHA PROYECTO COIL- GLOBAL CLASSROOM.docx.pdf
FICHA PROYECTO COIL- GLOBAL CLASSROOM.docx.pdfFICHA PROYECTO COIL- GLOBAL CLASSROOM.docx.pdf
FICHA PROYECTO COIL- GLOBAL CLASSROOM.docx.pdf
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
 
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptxLA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
 

Algoritmos de Dekker

  • 2.
  • 3. Primer algoritmo de Dekker PROGRAMA UNO; Variables turno: Entero; Inicialización turno = 1; La variable turno obliga a que los procesos tengan que alternar turnos de acceso a la RC, si existen procesos lentos y rápidos se tiene el problema que los procesos lentos atrasen a los procesos rápidos, por lo que se presenta el problema de SINCRONIZACIÓN FORZADA. Repeat Repeat Hace_Cosas(); Hace_Algo(); While turno = 2 Do; While turno = 1 Do; REGION_CRITICA(); REGION_CRITICA(); turno = 2; turno = 1; Hace_mas_cosas(); Hace_algo_mas(); Until Fin Until Fin PROCESO UNO PROCESO DOS
  • 4. Segundo algoritmo de Dekker PROGRAMA DOS; Variables P1QE, P2QE: Bool; Inicialización P1QE = false; P2QE = false; Si el Quantum de tiempo de los procesos finaliza precisamente después del cambio de la variable P#QE, pero antes de la validación del While, puede darse que las dos condiciones sean verdaderas y los procesos se queden en un ciclo infinito, a este problema se le conoce como INTERBLOQUEO. Repeat Repeat Hace_Cosas(); Hace_Cosas(); P1QE = true; P2QE = true; While P2QE Do; While P1QE Do; REGION_CRITICA(); REGION_CRITICA(); P1QE = False; P2QE = False; Hace_mas_cosas(); Hace_mas_cosas(); Until Fin Until Fin PROCESO UNO PROCESO DOS
  • 5. Tercer algoritmo de Dekker PROGRAMA TRES; Variables P1A, P2A: Bool; Inicialización P1A = false; P2A = false; Si el Quantum de tiempo de los procesos finaliza precisamente después de la validación del While justo cuando ambas banderas tiene como valor “false” , pero antes del cambio en la variable P#A, puede presentarse el problema que ambos procesos ingresen a la región crítica al mismo tiempo, por lo que este algoritmo NO GARANTIZA EXCLUSIÓN MUTUA. Repeat Repeat Hace_Cosas(); Hace_Cosas(); While P2A Do; While P1A Do; P1A = true; P2A = true; REGION_CRITICA(); REGION_CRITICA(); P1A = False; P2A = False; Hace_mas_cosas(); Hace_mas_cosas(); Until Fin Until Fin PROCESO UNO PROCESO DOS
  • 6. Cuarto algoritmo de Dekker PROGRAMA CUATRO; Variables P1QE, P2QE: Bool; Inicialización P1QE = false; P2QE = false; El utilizar un tiempo random para forzar la salida en el ciclo While puede ser un tiempo muy largo o corto de sincronización que podría no darse en el peor de los casos, a este problema se le conoce como POSTERGACIÓN INDEFINIDA. Repeat Repeat Hace_Cosas(); Hace_Cosas(); P1QE = true; P2QE = true; While P2QE Do Begin P1QE = false; Delay (random()); P1QE = true; end; While P1QE Do Begin P2QE = false; Delay (random()); P2QE = true; end; REGION_CRITICA(); REGION_CRITICA(); P1QE = False; P2QE = False; Hace_mas_cosas(); Hace_mas_cosas(); Until Fin Until Fin PROCESO UNO PROCESO DOS
  • 7.
  • 8. Quinto algoritmo de Dekker PROGRAMA CINCO; Variables P1QE, P2QE: Bool; turno: Entero; Inicialización P1QE = false; P2QE = false; turno = 1; Combinación entre el algoritmo 1 y algoritmo 4 Repeat Repeat Hace_Cosas(); Hace_Cosas(); P1QE = true; P2QE = true; While P2QE Do Begin if(turno = 2) Begin P1QE = false; Delay (random()); P1QE = true; end; end; While P1QE Do Begin if(turno = 1) Begin P2QE = false; Delay (random()); P2QE = true; end; end; REGION_CRITICA(); REGION_CRITICA(); turno = 2; P1QE = False; turno = 1; P2QE = False; Hace_mas_cosas(); Hace_mas_cosas(); Until Fin Until Fin PROCESO UNO PROCESO DOS