SlideShare una empresa de Scribd logo
1 de 3
ALGORITMO DE DEKKER 
La solución al problema de la exclusión mutua que sigue se atribuye al matemático holandés T. 
Dekker, y fue presentada por Dijkstra en 1968. Se utiliza, al igual que en la solución de Peterson, 
una variable turno. Ahora la variable sirve para establecer la prioridad relativa de los dos procesos y 
su actualización se realiza en la sección crítica, lo que evita que pueda haber interferencias entre los 
procesos. 
(* Exclusión Mutua:Solución de Dekker*) 
moduleExclusion_Mutua_D; 
varflag1,flag2: boolean; 
turno: integer; 
procedure bloqueo(var mi_flag, su_flag: boolean; su_turno: integer); 
begin 
mi_flag := true; 
while su_flag do (* otro proceso en la sección crítica *) 
if turno = su_turno then 
mi_flag := false; 
while turno =su_turno do 
; (* espera a que el otro acabe *) 
end; 
mi_flag := true; 
end; 
end; 
end bloqueo; 
procedure desbloqueo (var mi_flag: boolean; su_turno: integer); 
begin 
turno := su_turno; 
mi_flag := false 
end desbloqueo; 
process P1 
begin 
loop 
bloqueo(flag1,flag2,2); 
(* Uso del recurso Sección Crítica *) 
desbloqueo(flag1); 
(* resto del proceso *) 
end 
end P1; 
process P2 
begin 
loop 
bloqueo(flag2,flag1,1); 
(* Uso del recurso Sección Crítica *) 
desbloqueo(flag2); 
(* resto del proceso *) 
end 
end P2; 
begin (* Exclusion_Mutua_P*) 
flag1 := FALSE; 
flag2 := FALSE;
turno := 1; 
cobegin 
P1; 
P2; 
coend 
end Exclusion_Mutua_D. 
El programa se inicia con el valor de turno igual a 1 lo que da prioridad al proceso P1. Si ambos 
procesos piden a la vez el acceso a su sección crítica, ponen en activo sus respectivos indicadores y 
comprueban si el indicador del otro está activado. Ambos encuentran que sí, por lo que pasan a 
evaluar el turno. El segundo se encuentra con que no es su turno, desactiva su indicador y se queda 
en espera de que lo sea. P1 comprueba que sí es su turno y pasa a valorar el estado del indicador de 
P2, entrará en su sección crítica y dará el turno a P2 antes de desactivar su indicador. Esto permite 
que el proceso P2 gane el acceso a su sección crítica aunque el proceso P1 haga una nueva solicitud 
de entrar a la región crítica inmediatamente después de desactivar su indicador. 
Los algoritmos de Peterson y Dekker se pueden extender, aunque no de manera sencilla, al caso 
más general en el que haya n procesos en ejecución concurrente; pero no son soluciones adecuadas 
ya que la espera de acceso a un recurso siempre se realiza de forma “ocupada”. El proceso se queda 
permanentemente comprobando una variable, lo que puede suponer un derroche de los recursos del 
sistema. Si, por ejemplo, se dispone de un único procesador, éste tendrá que ocupar parte de su 
tiempo en la comprobación reiterada de una variable. 
ALGORITMO DE PETERSON 
Una solución posible es la proporcionada por Peterson (1981). En esta solución se introduce una 
variable adicional, que denominaremos turno, que solamente resultará útil cuando se produzca un 
problema de petición simultánea de acceso a la región crítica. 
(* Exclusión Mutua:Solución de Peterson*) 
moduleExclusion_Mutua_P; 
var flag1,flag2: boolean; 
turno: integer; 
procedure bloqueo(var mi_flag, su_flag: boolean; su_turno:integer); 
begin 
mi_flag := true; 
turno := su_turno; 
while su_flag and (turno = su_turno) do ; end 
end bloqueo; 
procedure desbloqueo(var mi_flag: boolean); 
begin mi_flag := false; 
end desbloqueo; 
process P1 
begin 
loop 
bloqueo(flag1,flag2,2); 
(* Uso del recurso Sección Crítica *) 
desbloqueo(flag1); 
(* resto del proceso *)
end 
end P1; 
process P2 
begin 
loop 
bloqueo(flag2,flag1,1); 
(* Uso del recurso Sección Crítica *) 
desbloqueo(flag2); 
(* resto del proceso *) 
end 
end P2; 
begin (* Exclusion_Mutua_P*) 
flag1 := FALSE; 
flag2 := FALSE; 
cobegin 
P1; 
P2; 
coend 
end Exclusion_Mutua_P. 
Si sólo uno de los procesos intenta acceder a la sección crítica lo podrá hacer sin ningún problema. 
Sin embargo, si ambos intentan entrar a la vez el valor de turno se pondrá a 1 y 2 pero sólo un valor 
de ellos permanecerá al escribirse sobre el otro, permitiendo el acceso de un proceso a su región 
crítica. 
El algoritmo permite resolver el problema de la exclusión mutua y garantiza que ambos procesos 
usarán de forma consecutiva el recurso en el caso de que lo soliciten a la vez y se impedirá el cierre 
del otro proceso. Si, por ejemplo, P1 ha entrado en su sección crítica bloqueando el acceso de P2 
éste entrará una vez haya finalizado aquél, ya que cuando P1 sale de su región crítica desactiva su 
indicador, permitiendo el acceso de P2; si una vez que P1 sale de su sección crítica P2 no está en 
ejecución, P1 deberá permanecer en espera hasta que P2 haya entrado y haya desactivado su 
indicador. De esta manera se evita que P2 pueda quedar relegado por P1 en el uso del recurso, es 
decir ambos gozan de la misma prioridad en el uso del recurso.

Más contenido relacionado

La actualidad más candente

Estructura de un interprete
Estructura de un interpreteEstructura de un interprete
Estructura de un interpreteperlallamas
 
Gestion Procesos, Sistemas Operativos
Gestion Procesos, Sistemas OperativosGestion Procesos, Sistemas Operativos
Gestion Procesos, Sistemas OperativosMarvin Romero
 
Programacion concurrente
Programacion concurrenteProgramacion concurrente
Programacion concurrentepuracastillo
 
Pasos para la construcción de una máquina de turing
Pasos para la construcción de una máquina de turingPasos para la construcción de una máquina de turing
Pasos para la construcción de una máquina de turingJonathan Bastidas
 
Clases de complejidad computacional
Clases de complejidad computacionalClases de complejidad computacional
Clases de complejidad computacionalvmtorrealba
 
Lenguajes libre de contexto
Lenguajes libre de contextoLenguajes libre de contexto
Lenguajes libre de contextoVerónica Es'Loo
 
Planificacion del procesador
Planificacion del procesadorPlanificacion del procesador
Planificacion del procesadorManuel Ceron
 
Diagrama de 7 estados
Diagrama de 7 estadosDiagrama de 7 estados
Diagrama de 7 estadoszombra18
 
Estructura de un compilador 2
Estructura de un compilador 2Estructura de un compilador 2
Estructura de un compilador 2perlallamas
 
Algoritmo divide y vencerás
Algoritmo divide y vencerásAlgoritmo divide y vencerás
Algoritmo divide y vencerásloco8888
 
Definición de compuertas logicas
Definición de compuertas logicasDefinición de compuertas logicas
Definición de compuertas logicaslupicesa22
 
Funciones principales de los sistemas operativos
Funciones principales de los sistemas operativosFunciones principales de los sistemas operativos
Funciones principales de los sistemas operativosIrving Hofstadter
 
Método de jacobi Métodos Númericos
Método de jacobi Métodos NúmericosMétodo de jacobi Métodos Númericos
Método de jacobi Métodos NúmericosTensor
 

La actualidad más candente (20)

Estructura de un interprete
Estructura de un interpreteEstructura de un interprete
Estructura de un interprete
 
Gestion Procesos, Sistemas Operativos
Gestion Procesos, Sistemas OperativosGestion Procesos, Sistemas Operativos
Gestion Procesos, Sistemas Operativos
 
Tutorial de JFLAP
Tutorial de JFLAPTutorial de JFLAP
Tutorial de JFLAP
 
Programacion concurrente
Programacion concurrenteProgramacion concurrente
Programacion concurrente
 
Pasos para la construcción de una máquina de turing
Pasos para la construcción de una máquina de turingPasos para la construcción de una máquina de turing
Pasos para la construcción de una máquina de turing
 
Algoritmo voraces
Algoritmo voracesAlgoritmo voraces
Algoritmo voraces
 
Técnica del backtracking o vuelta atrás
Técnica del backtracking o vuelta atrásTécnica del backtracking o vuelta atrás
Técnica del backtracking o vuelta atrás
 
Clases de complejidad computacional
Clases de complejidad computacionalClases de complejidad computacional
Clases de complejidad computacional
 
Lenguajes libre de contexto
Lenguajes libre de contextoLenguajes libre de contexto
Lenguajes libre de contexto
 
Planificacion del procesador
Planificacion del procesadorPlanificacion del procesador
Planificacion del procesador
 
Diagrama de 7 estados
Diagrama de 7 estadosDiagrama de 7 estados
Diagrama de 7 estados
 
Analisis lexico automatas i
Analisis lexico automatas iAnalisis lexico automatas i
Analisis lexico automatas i
 
Estructura de un compilador 2
Estructura de un compilador 2Estructura de un compilador 2
Estructura de un compilador 2
 
Algoritmo divide y vencerás
Algoritmo divide y vencerásAlgoritmo divide y vencerás
Algoritmo divide y vencerás
 
Algoritmo SJR
Algoritmo SJRAlgoritmo SJR
Algoritmo SJR
 
Código Huffman
Código HuffmanCódigo Huffman
Código Huffman
 
Definición de compuertas logicas
Definición de compuertas logicasDefinición de compuertas logicas
Definición de compuertas logicas
 
Funciones principales de los sistemas operativos
Funciones principales de los sistemas operativosFunciones principales de los sistemas operativos
Funciones principales de los sistemas operativos
 
Método de jacobi Métodos Númericos
Método de jacobi Métodos NúmericosMétodo de jacobi Métodos Númericos
Método de jacobi Métodos Númericos
 
Sjf srtf
Sjf   srtfSjf   srtf
Sjf srtf
 

Destacado

Wertherbruch Wills Wissen - Buergerversammlung 18.03.2014 zum Thema Glasfaser
Wertherbruch Wills Wissen - Buergerversammlung 18.03.2014 zum Thema GlasfaserWertherbruch Wills Wissen - Buergerversammlung 18.03.2014 zum Thema Glasfaser
Wertherbruch Wills Wissen - Buergerversammlung 18.03.2014 zum Thema GlasfaserChristoph Nienhaus
 
Innovacion educativa
Innovacion educativaInnovacion educativa
Innovacion educativaJoss1509
 
E-LIB Bremen - Inhaltserschließung als Navigationspunkte für den Suchprozess:...
E-LIB Bremen - Inhaltserschließung als Navigationspunkte für den Suchprozess:...E-LIB Bremen - Inhaltserschließung als Navigationspunkte für den Suchprozess:...
E-LIB Bremen - Inhaltserschließung als Navigationspunkte für den Suchprozess:...Martin Blenkle
 
examen puentes
examen puentesexamen puentes
examen puentesariana1020
 
Leyes de medio ambiente
Leyes de medio ambienteLeyes de medio ambiente
Leyes de medio ambienteMiriam Salazar
 
Morning linede alfonsorodriguezveralar26sep15
Morning linede alfonsorodriguezveralar26sep15Morning linede alfonsorodriguezveralar26sep15
Morning linede alfonsorodriguezveralar26sep15Winston1968
 
Pfarrei Suhr Projekt 2015
Pfarrei Suhr Projekt 2015Pfarrei Suhr Projekt 2015
Pfarrei Suhr Projekt 2015Beziehungs_abc
 
Morning linedealfonsorodriguezveralar28nov15[1]
Morning linedealfonsorodriguezveralar28nov15[1]Morning linedealfonsorodriguezveralar28nov15[1]
Morning linedealfonsorodriguezveralar28nov15[1]Winston1968
 

Destacado (20)

Zusatzfolien block 1
Zusatzfolien block 1Zusatzfolien block 1
Zusatzfolien block 1
 
Bienes y su clasificación
Bienes y su clasificaciónBienes y su clasificación
Bienes y su clasificación
 
München
MünchenMünchen
München
 
Exposic ed virtual
Exposic ed virtualExposic ed virtual
Exposic ed virtual
 
Wertherbruch Wills Wissen - Buergerversammlung 18.03.2014 zum Thema Glasfaser
Wertherbruch Wills Wissen - Buergerversammlung 18.03.2014 zum Thema GlasfaserWertherbruch Wills Wissen - Buergerversammlung 18.03.2014 zum Thema Glasfaser
Wertherbruch Wills Wissen - Buergerversammlung 18.03.2014 zum Thema Glasfaser
 
Innovacion educativa
Innovacion educativaInnovacion educativa
Innovacion educativa
 
E-LIB Bremen - Inhaltserschließung als Navigationspunkte für den Suchprozess:...
E-LIB Bremen - Inhaltserschließung als Navigationspunkte für den Suchprozess:...E-LIB Bremen - Inhaltserschließung als Navigationspunkte für den Suchprozess:...
E-LIB Bremen - Inhaltserschließung als Navigationspunkte für den Suchprozess:...
 
Kommunikation in zukunft
Kommunikation in zukunftKommunikation in zukunft
Kommunikation in zukunft
 
pokemones
pokemones pokemones
pokemones
 
examen puentes
examen puentesexamen puentes
examen puentes
 
Las ti cblog
Las ti cblogLas ti cblog
Las ti cblog
 
Leyes de medio ambiente
Leyes de medio ambienteLeyes de medio ambiente
Leyes de medio ambiente
 
Hardware1
Hardware1Hardware1
Hardware1
 
Trabajo de TICS
Trabajo de TICSTrabajo de TICS
Trabajo de TICS
 
Morning linede alfonsorodriguezveralar26sep15
Morning linede alfonsorodriguezveralar26sep15Morning linede alfonsorodriguezveralar26sep15
Morning linede alfonsorodriguezveralar26sep15
 
Das Pulver.
Das Pulver.Das Pulver.
Das Pulver.
 
Pfarrei Suhr Projekt 2015
Pfarrei Suhr Projekt 2015Pfarrei Suhr Projekt 2015
Pfarrei Suhr Projekt 2015
 
Exposicion gbi
Exposicion gbiExposicion gbi
Exposicion gbi
 
Morning linedealfonsorodriguezveralar28nov15[1]
Morning linedealfonsorodriguezveralar28nov15[1]Morning linedealfonsorodriguezveralar28nov15[1]
Morning linedealfonsorodriguezveralar28nov15[1]
 
Vih
Vih Vih
Vih
 

Similar a Algoritmo de dekker

Presentación1
Presentación1Presentación1
Presentación1janet290
 
Comunicación y Sincronizacion de Procesos
Comunicación y Sincronizacion de ProcesosComunicación y Sincronizacion de Procesos
Comunicación y Sincronizacion de ProcesosLorena Ramos
 
Algorit. De Dekker
Algorit. De DekkerAlgorit. De Dekker
Algorit. De DekkerLuz_star
 
Taller concurrencia y exclusión mutua.
Taller concurrencia y exclusión mutua.Taller concurrencia y exclusión mutua.
Taller concurrencia y exclusión mutua.Andrea
 
Unidad 2 sist. oper. 1
Unidad 2 sist. oper. 1Unidad 2 sist. oper. 1
Unidad 2 sist. oper. 1honeyjimenez
 
Sincronizacion de procesos
Sincronizacion de procesosSincronizacion de procesos
Sincronizacion de procesoskruskaya salazar
 
Exclusión mutua
Exclusión mutuaExclusión mutua
Exclusión mutuatatyseli
 
Mecanismos de exclusion mutua y algoritmos
Mecanismos de exclusion mutua y algoritmosMecanismos de exclusion mutua y algoritmos
Mecanismos de exclusion mutua y algoritmosAbimael hernandez
 
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
 
Sincronizacion de Procesos
Sincronizacion de ProcesosSincronizacion de Procesos
Sincronizacion de Procesosmastermind87
 
Mecanismo de-semáforos
Mecanismo de-semáforosMecanismo de-semáforos
Mecanismo de-semáforosmarioadair1298
 

Similar a Algoritmo de dekker (20)

UNIDAD II ADMINISTRADOR DE PROCESADOR
UNIDAD II ADMINISTRADOR DE PROCESADORUNIDAD II ADMINISTRADOR DE PROCESADOR
UNIDAD II ADMINISTRADOR DE PROCESADOR
 
Presentación1
Presentación1Presentación1
Presentación1
 
Comunicación y Sincronizacion de Procesos
Comunicación y Sincronizacion de ProcesosComunicación y Sincronizacion de Procesos
Comunicación y Sincronizacion de Procesos
 
2.4 Cuestionario de comunicacion entre procesos
2.4 Cuestionario de comunicacion entre procesos2.4 Cuestionario de comunicacion entre procesos
2.4 Cuestionario de comunicacion entre procesos
 
Algorit. De Dekker
Algorit. De DekkerAlgorit. De Dekker
Algorit. De Dekker
 
Taller concurrencia y exclusión mutua.
Taller concurrencia y exclusión mutua.Taller concurrencia y exclusión mutua.
Taller concurrencia y exclusión mutua.
 
Unidad 2 sist. oper. 1
Unidad 2 sist. oper. 1Unidad 2 sist. oper. 1
Unidad 2 sist. oper. 1
 
Sincronizacion de procesos
Sincronizacion de procesosSincronizacion de procesos
Sincronizacion de procesos
 
Procesos
ProcesosProcesos
Procesos
 
Tema0397
Tema0397Tema0397
Tema0397
 
Concepto de proceso
Concepto de procesoConcepto de proceso
Concepto de proceso
 
Exclusión mutua
Exclusión mutuaExclusión mutua
Exclusión mutua
 
Mecanismos de exclusion mutua y algoritmos
Mecanismos de exclusion mutua y algoritmosMecanismos de exclusion mutua y algoritmos
Mecanismos de exclusion mutua y algoritmos
 
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
 
2 unidad sistemas operativos
2 unidad sistemas operativos 2 unidad sistemas operativos
2 unidad sistemas operativos
 
Monitores
MonitoresMonitores
Monitores
 
So 07-concurrencia-6x1
So 07-concurrencia-6x1So 07-concurrencia-6x1
So 07-concurrencia-6x1
 
s.o.
s.o.s.o.
s.o.
 
Sincronizacion de Procesos
Sincronizacion de ProcesosSincronizacion de Procesos
Sincronizacion de Procesos
 
Mecanismo de-semáforos
Mecanismo de-semáforosMecanismo de-semáforos
Mecanismo de-semáforos
 

Último

Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersIván López Martín
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...JaquelineJuarez15
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptMiguelAtencio10
 
ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofJuancarlosHuertasNio1
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxJOSEMANUELHERNANDEZH11
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaarkananubis
 

Último (20)

Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.ppt
 
ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sof
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptx
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en mina
 

Algoritmo de dekker

  • 1. ALGORITMO DE DEKKER La solución al problema de la exclusión mutua que sigue se atribuye al matemático holandés T. Dekker, y fue presentada por Dijkstra en 1968. Se utiliza, al igual que en la solución de Peterson, una variable turno. Ahora la variable sirve para establecer la prioridad relativa de los dos procesos y su actualización se realiza en la sección crítica, lo que evita que pueda haber interferencias entre los procesos. (* Exclusión Mutua:Solución de Dekker*) moduleExclusion_Mutua_D; varflag1,flag2: boolean; turno: integer; procedure bloqueo(var mi_flag, su_flag: boolean; su_turno: integer); begin mi_flag := true; while su_flag do (* otro proceso en la sección crítica *) if turno = su_turno then mi_flag := false; while turno =su_turno do ; (* espera a que el otro acabe *) end; mi_flag := true; end; end; end bloqueo; procedure desbloqueo (var mi_flag: boolean; su_turno: integer); begin turno := su_turno; mi_flag := false end desbloqueo; process P1 begin loop bloqueo(flag1,flag2,2); (* Uso del recurso Sección Crítica *) desbloqueo(flag1); (* resto del proceso *) end end P1; process P2 begin loop bloqueo(flag2,flag1,1); (* Uso del recurso Sección Crítica *) desbloqueo(flag2); (* resto del proceso *) end end P2; begin (* Exclusion_Mutua_P*) flag1 := FALSE; flag2 := FALSE;
  • 2. turno := 1; cobegin P1; P2; coend end Exclusion_Mutua_D. El programa se inicia con el valor de turno igual a 1 lo que da prioridad al proceso P1. Si ambos procesos piden a la vez el acceso a su sección crítica, ponen en activo sus respectivos indicadores y comprueban si el indicador del otro está activado. Ambos encuentran que sí, por lo que pasan a evaluar el turno. El segundo se encuentra con que no es su turno, desactiva su indicador y se queda en espera de que lo sea. P1 comprueba que sí es su turno y pasa a valorar el estado del indicador de P2, entrará en su sección crítica y dará el turno a P2 antes de desactivar su indicador. Esto permite que el proceso P2 gane el acceso a su sección crítica aunque el proceso P1 haga una nueva solicitud de entrar a la región crítica inmediatamente después de desactivar su indicador. Los algoritmos de Peterson y Dekker se pueden extender, aunque no de manera sencilla, al caso más general en el que haya n procesos en ejecución concurrente; pero no son soluciones adecuadas ya que la espera de acceso a un recurso siempre se realiza de forma “ocupada”. El proceso se queda permanentemente comprobando una variable, lo que puede suponer un derroche de los recursos del sistema. Si, por ejemplo, se dispone de un único procesador, éste tendrá que ocupar parte de su tiempo en la comprobación reiterada de una variable. ALGORITMO DE PETERSON Una solución posible es la proporcionada por Peterson (1981). En esta solución se introduce una variable adicional, que denominaremos turno, que solamente resultará útil cuando se produzca un problema de petición simultánea de acceso a la región crítica. (* Exclusión Mutua:Solución de Peterson*) moduleExclusion_Mutua_P; var flag1,flag2: boolean; turno: integer; procedure bloqueo(var mi_flag, su_flag: boolean; su_turno:integer); begin mi_flag := true; turno := su_turno; while su_flag and (turno = su_turno) do ; end end bloqueo; procedure desbloqueo(var mi_flag: boolean); begin mi_flag := false; end desbloqueo; process P1 begin loop bloqueo(flag1,flag2,2); (* Uso del recurso Sección Crítica *) desbloqueo(flag1); (* resto del proceso *)
  • 3. end end P1; process P2 begin loop bloqueo(flag2,flag1,1); (* Uso del recurso Sección Crítica *) desbloqueo(flag2); (* resto del proceso *) end end P2; begin (* Exclusion_Mutua_P*) flag1 := FALSE; flag2 := FALSE; cobegin P1; P2; coend end Exclusion_Mutua_P. Si sólo uno de los procesos intenta acceder a la sección crítica lo podrá hacer sin ningún problema. Sin embargo, si ambos intentan entrar a la vez el valor de turno se pondrá a 1 y 2 pero sólo un valor de ellos permanecerá al escribirse sobre el otro, permitiendo el acceso de un proceso a su región crítica. El algoritmo permite resolver el problema de la exclusión mutua y garantiza que ambos procesos usarán de forma consecutiva el recurso en el caso de que lo soliciten a la vez y se impedirá el cierre del otro proceso. Si, por ejemplo, P1 ha entrado en su sección crítica bloqueando el acceso de P2 éste entrará una vez haya finalizado aquél, ya que cuando P1 sale de su región crítica desactiva su indicador, permitiendo el acceso de P2; si una vez que P1 sale de su sección crítica P2 no está en ejecución, P1 deberá permanecer en espera hasta que P2 haya entrado y haya desactivado su indicador. De esta manera se evita que P2 pueda quedar relegado por P1 en el uso del recurso, es decir ambos gozan de la misma prioridad en el uso del recurso.