SlideShare una empresa de Scribd logo
1 de 11
Mecanismos para garantizar la exclusión mutua En sistemas de multiprogramación con un único procesador,  los procesos se intercalan en el tiempo para dar la apariencia de ejecución simultánea. Uno de los grandes problemas que nos podemos encontrar es que el hecho de compartir recursos está lleno de riesgos.  Por ejemplo, si dos procesos hacen uso al mismo tiempo de una variable global y ambos llevan a cabo tanto operaciones de lectura como de escritura sobre dicha variable, el orden en que se ejecuten estas lecturas y escrituras es crítico, puesto que se verá afectado el valor de la variable.
Mecanismos para garantizar la exclusión mutua Semáforos Monitores Algoritmo de Decker Algoritmo de Peterson
Semáforos Métodoclásicopararestringir o permitir el acceso a recursoscompartidos (porejemplo, un recurso de almacenamiento del sistema o variables del códigofuente) en un entorno de multiprocesamiento.  Programa del sistema operativo que controla el tráfico de procesos dentro del sistema. Se emplean para permitir el acceso a diferentes partes de programas (secciones críticas) donde se manipulan variables o recursos que deben ser accedidos de forma especial. Según el valor con que son inicializados se permiten a más o menos procesos utilizar el recurso de forma simultánea. Un tipo simple de semáforo es el binario, que puede tomar solamente los valores 0 y 1. Se inicializan en 1 y son usados cuando sólo un proceso puede acceder a un recurso a la vez.
En el siguiente ejemplo se crean y ejecutan n procesos que intentarán entrar en su sección crítica cada vez que puedan, y lo lograrán siempre de a uno por vez, gracias al uso del semáforo s inicializado en 1. constint n            /* número de procesos */  variable semaforo s;         /* declaración de la variable semáforo de valor entero*/  Inicia (s,1)           /* Inicializa un semáforo con nombre s con valor 1 */  void P (int i) {  while(cierto) {  P(s)         /* En semáforos binarios, lo correcto es poner un P(s) antes de 		entrar en la sección crítica, para restringir el uso de esta región 		del código*/ /* SECCIÓN CRÍTICA */             V(s) 	/* Tras la sección crítica, volvemos a poner el semáforo a 1 			para que otro proceso pueda usarla */  /* RESTO DEL CÓDIGO */ }  }  intmain( ){  Comenzar-procesos(P(1), P(2),...,P(n));  }
Monitores Dentro de un sistema operativo, un monitor es un programa que observa y administra los procesos dentro del CPU. Un monitor contiene el código relativo a un recurso compartido en un solo módulo de programa;  Ventajas:  	• mantenimiento más simple  	• menos errores de programación  La interfaz del monitor es un conjunto de funciones que representan las diferentes operaciones que pueden hacerse con el recurso.  La implementación del monitor garantiza la exclusión mutua  • mediante semáforos o algún otro mecanismo.  • o implícitamente en los lenguajes concurrentes.  Se pueden implementar en memoria u  otro recursos compartido..
Algoritmo de Decker Solución que garantiza la exclusión mutua al gestionar elegantemente este proceso.  Utiliza, además de las banderas de intención de entrar, una variable turno (proceso_favorecido) que resuelve en caso de conflicto.  Da la posibilidad de que el otro proceso entre en su sección crítica una segunda vez si lo hace antes que el proceso que acaba de dejar el bucle de espera, asigne el valor cierto a su intención de entrar. Pero cuando de nuevo tiene el procesador, realiza la asignación y es su turno, así que se ejecuta.  En consecuencia, no produce aplazamiento indefinido.
Algoritmo de Decker
Algoritmo de Peterson Simplifica el algoritmo de Decker.  El protocolo de entrada es más elegante con las mismas garantías de exclusión mutua, imposibilidad de bloqueo mutuo y de aplazamiento indefinido.
Algoritmo de Peterson
Mecanismos de exclusion mutua y algoritmos

Más contenido relacionado

La actualidad más candente

Requerimientos Funcionales y no Funcionales
Requerimientos Funcionales y no FuncionalesRequerimientos Funcionales y no Funcionales
Requerimientos Funcionales y no Funcionalessullinsan
 
Analizador Sintáctico
Analizador SintácticoAnalizador Sintáctico
Analizador SintácticoPablo Guerra
 
Comunicación y Sincronizacion de Procesos
Comunicación y Sincronizacion de ProcesosComunicación y Sincronizacion de Procesos
Comunicación y Sincronizacion de ProcesosLorena Ramos
 
automatas finitos
 automatas finitos automatas finitos
automatas finitosAnel Sosa
 
Creación de tablas y relaciones en mysql workbench
Creación de tablas y relaciones en mysql workbenchCreación de tablas y relaciones en mysql workbench
Creación de tablas y relaciones en mysql workbenchJair Ospino Ardila
 
Estructura del sistema_operativo - Sistemas por Capas
Estructura del sistema_operativo - Sistemas por CapasEstructura del sistema_operativo - Sistemas por Capas
Estructura del sistema_operativo - Sistemas por CapasOmar Salazar
 
Mecanismo de sincronización de procesos
Mecanismo de sincronización de procesosMecanismo de sincronización de procesos
Mecanismo de sincronización de procesosjulio izaguirre
 
Modelos de arquitecturas de computadoras
Modelos de arquitecturas de computadorasModelos de arquitecturas de computadoras
Modelos de arquitecturas de computadorasYESENIA CETINA
 
GESTION DE PROCESOS Sistemas Operativos
GESTION DE PROCESOS Sistemas OperativosGESTION DE PROCESOS Sistemas Operativos
GESTION DE PROCESOS Sistemas Operativosadriel91
 
Unidad 5 TransformacióN Er A Relacional NormalizacióN
Unidad 5 TransformacióN Er A Relacional   NormalizacióNUnidad 5 TransformacióN Er A Relacional   NormalizacióN
Unidad 5 TransformacióN Er A Relacional NormalizacióNSergio Sanchez
 
Componentes y Librerías - Tópicos avanzados de programación.
Componentes y Librerías - Tópicos avanzados de programación.Componentes y Librerías - Tópicos avanzados de programación.
Componentes y Librerías - Tópicos avanzados de programación.Giancarlo Aguilar
 
Arquitectura Multiprocesadores
Arquitectura Multiprocesadores Arquitectura Multiprocesadores
Arquitectura Multiprocesadores JUANR1022
 

La actualidad más candente (20)

Código intermedio
Código intermedioCódigo intermedio
Código intermedio
 
Requerimientos Funcionales y no Funcionales
Requerimientos Funcionales y no FuncionalesRequerimientos Funcionales y no Funcionales
Requerimientos Funcionales y no Funcionales
 
Procedimientos almacenados en MySQL
Procedimientos almacenados en MySQLProcedimientos almacenados en MySQL
Procedimientos almacenados en MySQL
 
Analizador Sintáctico
Analizador SintácticoAnalizador Sintáctico
Analizador Sintáctico
 
Comunicación y Sincronizacion de Procesos
Comunicación y Sincronizacion de ProcesosComunicación y Sincronizacion de Procesos
Comunicación y Sincronizacion de Procesos
 
automatas finitos
 automatas finitos automatas finitos
automatas finitos
 
Creación de tablas y relaciones en mysql workbench
Creación de tablas y relaciones en mysql workbenchCreación de tablas y relaciones en mysql workbench
Creación de tablas y relaciones en mysql workbench
 
Estructura del sistema_operativo - Sistemas por Capas
Estructura del sistema_operativo - Sistemas por CapasEstructura del sistema_operativo - Sistemas por Capas
Estructura del sistema_operativo - Sistemas por Capas
 
control de concurrencia
control de concurrenciacontrol de concurrencia
control de concurrencia
 
Mecanismo de sincronización de procesos
Mecanismo de sincronización de procesosMecanismo de sincronización de procesos
Mecanismo de sincronización de procesos
 
Modelos de arquitecturas de computadoras
Modelos de arquitecturas de computadorasModelos de arquitecturas de computadoras
Modelos de arquitecturas de computadoras
 
Configuración básica del router
Configuración básica del routerConfiguración básica del router
Configuración básica del router
 
Procesos e Hilos
Procesos e HilosProcesos e Hilos
Procesos e Hilos
 
Interrupciones
InterrupcionesInterrupciones
Interrupciones
 
GESTION DE PROCESOS Sistemas Operativos
GESTION DE PROCESOS Sistemas OperativosGESTION DE PROCESOS Sistemas Operativos
GESTION DE PROCESOS Sistemas Operativos
 
Unidad 5 TransformacióN Er A Relacional NormalizacióN
Unidad 5 TransformacióN Er A Relacional   NormalizacióNUnidad 5 TransformacióN Er A Relacional   NormalizacióN
Unidad 5 TransformacióN Er A Relacional NormalizacióN
 
Componentes y Librerías - Tópicos avanzados de programación.
Componentes y Librerías - Tópicos avanzados de programación.Componentes y Librerías - Tópicos avanzados de programación.
Componentes y Librerías - Tópicos avanzados de programación.
 
Arquitectura Multiprocesadores
Arquitectura Multiprocesadores Arquitectura Multiprocesadores
Arquitectura Multiprocesadores
 
Unidad de Control
Unidad de ControlUnidad de Control
Unidad de Control
 
Investigacion errores lexicos
Investigacion errores lexicosInvestigacion errores lexicos
Investigacion errores lexicos
 

Similar a Mecanismos de exclusion mutua y algoritmos

Similar a Mecanismos de exclusion mutua y algoritmos (20)

Procesos_so
Procesos_soProcesos_so
Procesos_so
 
Programacion concurrente
Programacion concurrenteProgramacion concurrente
Programacion concurrente
 
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
 
Unidad 2
Unidad 2Unidad 2
Unidad 2
 
Unidad 2 jacinto
Unidad 2 jacintoUnidad 2 jacinto
Unidad 2 jacinto
 
UNIDAD II SISTEMAS OPERATIVOS
UNIDAD II SISTEMAS OPERATIVOSUNIDAD II SISTEMAS OPERATIVOS
UNIDAD II SISTEMAS OPERATIVOS
 
Presentación1
Presentación1Presentación1
Presentación1
 
Tema0397
Tema0397Tema0397
Tema0397
 
Unidad 2 sist. oper. 1
Unidad 2 sist. oper. 1Unidad 2 sist. oper. 1
Unidad 2 sist. oper. 1
 
Sistemas operativos unidad 2
Sistemas operativos unidad 2Sistemas operativos unidad 2
Sistemas operativos unidad 2
 
Sincronización de Procesos
Sincronización de Procesos Sincronización de Procesos
Sincronización de Procesos
 
Pseint.
Pseint.Pseint.
Pseint.
 
Pseint
PseintPseint
Pseint
 
2° unidad sistemas operativos
2° unidad sistemas operativos2° unidad sistemas operativos
2° unidad sistemas operativos
 
UNIDAD II ADMINISTRADOR DE PROCESADOR
UNIDAD II ADMINISTRADOR DE PROCESADORUNIDAD II ADMINISTRADOR DE PROCESADOR
UNIDAD II ADMINISTRADOR DE PROCESADOR
 
Funciones de un SO
Funciones de un SOFunciones de un SO
Funciones de un SO
 
Portafolio 2
Portafolio 2Portafolio 2
Portafolio 2
 
:)Resumen
:)Resumen:)Resumen
:)Resumen
 
104842258 unidad-2-administracion-de-procesos-del-procesador
104842258 unidad-2-administracion-de-procesos-del-procesador104842258 unidad-2-administracion-de-procesos-del-procesador
104842258 unidad-2-administracion-de-procesos-del-procesador
 

Más de Abimael hernandez

Más de Abimael hernandez (15)

El barbero dormilón
El barbero dormilónEl barbero dormilón
El barbero dormilón
 
Ejecución en modo del núcleo
Ejecución en modo del núcleoEjecución en modo del núcleo
Ejecución en modo del núcleo
 
Linea de ltiempo
Linea de ltiempoLinea de ltiempo
Linea de ltiempo
 
Modulo 1 ubuntu_en_live_cd
Modulo 1 ubuntu_en_live_cdModulo 1 ubuntu_en_live_cd
Modulo 1 ubuntu_en_live_cd
 
Modulo 3 software libre
Modulo 3 software libreModulo 3 software libre
Modulo 3 software libre
 
Problemas de sincronizacion de procesos
Problemas de sincronizacion de procesosProblemas de sincronizacion de procesos
Problemas de sincronizacion de procesos
 
Practica 1. S.O MS - dos
Practica 1.  S.O MS - dosPractica 1.  S.O MS - dos
Practica 1. S.O MS - dos
 
Lectores y escritores
Lectores y escritoresLectores y escritores
Lectores y escritores
 
Panaderia lamport
Panaderia lamportPanaderia lamport
Panaderia lamport
 
Filosofos
FilosofosFilosofos
Filosofos
 
Sistema operativo ubuntu
Sistema operativo ubuntuSistema operativo ubuntu
Sistema operativo ubuntu
 
Sistema operativo ubuntu parte 2
Sistema operativo ubuntu parte 2Sistema operativo ubuntu parte 2
Sistema operativo ubuntu parte 2
 
Unidad ii b sistemas operativos 2011
Unidad ii b sistemas operativos 2011Unidad ii b sistemas operativos 2011
Unidad ii b sistemas operativos 2011
 
Unidad 2 sistemas operativos 2011
Unidad 2  sistemas operativos 2011Unidad 2  sistemas operativos 2011
Unidad 2 sistemas operativos 2011
 
Unidad 1 sistemas_operativos_2011
Unidad 1 sistemas_operativos_2011Unidad 1 sistemas_operativos_2011
Unidad 1 sistemas_operativos_2011
 

Último

Analisis del art. 37 de la Ley del Impuesto a la Renta
Analisis del art. 37 de la Ley del Impuesto a la RentaAnalisis del art. 37 de la Ley del Impuesto a la Renta
Analisis del art. 37 de la Ley del Impuesto a la Rentamarbin6
 
Ficha de datos de seguridad MSDS Ethanol (Alcohol etílico)
Ficha de datos de seguridad MSDS Ethanol (Alcohol etílico)Ficha de datos de seguridad MSDS Ethanol (Alcohol etílico)
Ficha de datos de seguridad MSDS Ethanol (Alcohol etílico)KwNacional
 
Catalogo de tazas para la tienda nube de dostorosmg
Catalogo de tazas para la tienda nube de dostorosmgCatalogo de tazas para la tienda nube de dostorosmg
Catalogo de tazas para la tienda nube de dostorosmgdostorosmg
 
Reporte Tributario para Entidades Financieras.pdf
Reporte Tributario para Entidades Financieras.pdfReporte Tributario para Entidades Financieras.pdf
Reporte Tributario para Entidades Financieras.pdfjosephtena
 
GUIA UNIDAD 3 costeo variable fce unc.docx
GUIA UNIDAD 3 costeo variable fce unc.docxGUIA UNIDAD 3 costeo variable fce unc.docx
GUIA UNIDAD 3 costeo variable fce unc.docxAmyKleisinger
 
Distribuciones de frecuencia cuarto semestre
Distribuciones de frecuencia cuarto semestreDistribuciones de frecuencia cuarto semestre
Distribuciones de frecuencia cuarto semestreAndresUseda3
 
DECRETO-2535-DE-1993-pdf.pdf VIGILANCIA PRIVADA
DECRETO-2535-DE-1993-pdf.pdf VIGILANCIA PRIVADADECRETO-2535-DE-1993-pdf.pdf VIGILANCIA PRIVADA
DECRETO-2535-DE-1993-pdf.pdf VIGILANCIA PRIVADAgordonruizsteffy
 
Presentacion encuentra tu creatividad papel azul.pdf
Presentacion encuentra tu creatividad papel azul.pdfPresentacion encuentra tu creatividad papel azul.pdf
Presentacion encuentra tu creatividad papel azul.pdfaldonaim115
 
Tesis_liderazgo_desempeño_laboral_colaboradores_cooperativa_agraria_rutas_Inc...
Tesis_liderazgo_desempeño_laboral_colaboradores_cooperativa_agraria_rutas_Inc...Tesis_liderazgo_desempeño_laboral_colaboradores_cooperativa_agraria_rutas_Inc...
Tesis_liderazgo_desempeño_laboral_colaboradores_cooperativa_agraria_rutas_Inc...MIGUELANGELLEGUIAGUZ
 
Manual de Imagen Personal y uso de uniformes
Manual de Imagen Personal y uso de uniformesManual de Imagen Personal y uso de uniformes
Manual de Imagen Personal y uso de uniformesElizabeth152261
 
Las sociedades anónimas en el Perú , de acuerdo a la Ley general de sociedades
Las sociedades anónimas en el Perú , de acuerdo a la Ley general de sociedadesLas sociedades anónimas en el Perú , de acuerdo a la Ley general de sociedades
Las sociedades anónimas en el Perú , de acuerdo a la Ley general de sociedadesPatrickSteve4
 
liderazgo guia.pdf.............................
liderazgo guia.pdf.............................liderazgo guia.pdf.............................
liderazgo guia.pdf.............................MIGUELANGELLEGUIAGUZ
 
Comparativo DS 024-2016-EM vs DS 023-2017-EM - 21.08.17 (1).pdf
Comparativo DS 024-2016-EM vs DS 023-2017-EM - 21.08.17 (1).pdfComparativo DS 024-2016-EM vs DS 023-2017-EM - 21.08.17 (1).pdf
Comparativo DS 024-2016-EM vs DS 023-2017-EM - 21.08.17 (1).pdfAJYSCORP
 
DIAPOSITIVAS LIDERAZGO Y GESTION INTERGENERACION (3).pptx
DIAPOSITIVAS LIDERAZGO Y GESTION INTERGENERACION (3).pptxDIAPOSITIVAS LIDERAZGO Y GESTION INTERGENERACION (3).pptx
DIAPOSITIVAS LIDERAZGO Y GESTION INTERGENERACION (3).pptx7500222160
 
Contabilidad Gubernamental guia contable
Contabilidad Gubernamental guia contableContabilidad Gubernamental guia contable
Contabilidad Gubernamental guia contableThairyAndreinaLira1
 
Correcion del libro al medio hay sitio.pptx
Correcion del libro al medio hay sitio.pptxCorrecion del libro al medio hay sitio.pptx
Correcion del libro al medio hay sitio.pptxHARLYJHANSELCHAVEZVE
 
Sostenibilidad y continuidad huamcoli robin-cristian.pptx
Sostenibilidad y continuidad huamcoli robin-cristian.pptxSostenibilidad y continuidad huamcoli robin-cristian.pptx
Sostenibilidad y continuidad huamcoli robin-cristian.pptxmarlonrea6
 
CARPETA PEDAGOGICA 2024 ARITA.sadasdasddocx
CARPETA PEDAGOGICA 2024 ARITA.sadasdasddocxCARPETA PEDAGOGICA 2024 ARITA.sadasdasddocx
CARPETA PEDAGOGICA 2024 ARITA.sadasdasddocxWILIANREATEGUI
 
SENTENCIA COLOMBIA DISCRIMINACION SELECCION PERSONAL.pdf
SENTENCIA COLOMBIA DISCRIMINACION SELECCION PERSONAL.pdfSENTENCIA COLOMBIA DISCRIMINACION SELECCION PERSONAL.pdf
SENTENCIA COLOMBIA DISCRIMINACION SELECCION PERSONAL.pdfJaredQuezada3
 
DISEÑO DE ESTRATEGIAS EN MOMENTOS DE INCERTIDUMBRE
DISEÑO DE ESTRATEGIAS EN MOMENTOS DE INCERTIDUMBREDISEÑO DE ESTRATEGIAS EN MOMENTOS DE INCERTIDUMBRE
DISEÑO DE ESTRATEGIAS EN MOMENTOS DE INCERTIDUMBREdianayarelii17
 

Último (20)

Analisis del art. 37 de la Ley del Impuesto a la Renta
Analisis del art. 37 de la Ley del Impuesto a la RentaAnalisis del art. 37 de la Ley del Impuesto a la Renta
Analisis del art. 37 de la Ley del Impuesto a la Renta
 
Ficha de datos de seguridad MSDS Ethanol (Alcohol etílico)
Ficha de datos de seguridad MSDS Ethanol (Alcohol etílico)Ficha de datos de seguridad MSDS Ethanol (Alcohol etílico)
Ficha de datos de seguridad MSDS Ethanol (Alcohol etílico)
 
Catalogo de tazas para la tienda nube de dostorosmg
Catalogo de tazas para la tienda nube de dostorosmgCatalogo de tazas para la tienda nube de dostorosmg
Catalogo de tazas para la tienda nube de dostorosmg
 
Reporte Tributario para Entidades Financieras.pdf
Reporte Tributario para Entidades Financieras.pdfReporte Tributario para Entidades Financieras.pdf
Reporte Tributario para Entidades Financieras.pdf
 
GUIA UNIDAD 3 costeo variable fce unc.docx
GUIA UNIDAD 3 costeo variable fce unc.docxGUIA UNIDAD 3 costeo variable fce unc.docx
GUIA UNIDAD 3 costeo variable fce unc.docx
 
Distribuciones de frecuencia cuarto semestre
Distribuciones de frecuencia cuarto semestreDistribuciones de frecuencia cuarto semestre
Distribuciones de frecuencia cuarto semestre
 
DECRETO-2535-DE-1993-pdf.pdf VIGILANCIA PRIVADA
DECRETO-2535-DE-1993-pdf.pdf VIGILANCIA PRIVADADECRETO-2535-DE-1993-pdf.pdf VIGILANCIA PRIVADA
DECRETO-2535-DE-1993-pdf.pdf VIGILANCIA PRIVADA
 
Presentacion encuentra tu creatividad papel azul.pdf
Presentacion encuentra tu creatividad papel azul.pdfPresentacion encuentra tu creatividad papel azul.pdf
Presentacion encuentra tu creatividad papel azul.pdf
 
Tesis_liderazgo_desempeño_laboral_colaboradores_cooperativa_agraria_rutas_Inc...
Tesis_liderazgo_desempeño_laboral_colaboradores_cooperativa_agraria_rutas_Inc...Tesis_liderazgo_desempeño_laboral_colaboradores_cooperativa_agraria_rutas_Inc...
Tesis_liderazgo_desempeño_laboral_colaboradores_cooperativa_agraria_rutas_Inc...
 
Manual de Imagen Personal y uso de uniformes
Manual de Imagen Personal y uso de uniformesManual de Imagen Personal y uso de uniformes
Manual de Imagen Personal y uso de uniformes
 
Las sociedades anónimas en el Perú , de acuerdo a la Ley general de sociedades
Las sociedades anónimas en el Perú , de acuerdo a la Ley general de sociedadesLas sociedades anónimas en el Perú , de acuerdo a la Ley general de sociedades
Las sociedades anónimas en el Perú , de acuerdo a la Ley general de sociedades
 
liderazgo guia.pdf.............................
liderazgo guia.pdf.............................liderazgo guia.pdf.............................
liderazgo guia.pdf.............................
 
Comparativo DS 024-2016-EM vs DS 023-2017-EM - 21.08.17 (1).pdf
Comparativo DS 024-2016-EM vs DS 023-2017-EM - 21.08.17 (1).pdfComparativo DS 024-2016-EM vs DS 023-2017-EM - 21.08.17 (1).pdf
Comparativo DS 024-2016-EM vs DS 023-2017-EM - 21.08.17 (1).pdf
 
DIAPOSITIVAS LIDERAZGO Y GESTION INTERGENERACION (3).pptx
DIAPOSITIVAS LIDERAZGO Y GESTION INTERGENERACION (3).pptxDIAPOSITIVAS LIDERAZGO Y GESTION INTERGENERACION (3).pptx
DIAPOSITIVAS LIDERAZGO Y GESTION INTERGENERACION (3).pptx
 
Contabilidad Gubernamental guia contable
Contabilidad Gubernamental guia contableContabilidad Gubernamental guia contable
Contabilidad Gubernamental guia contable
 
Correcion del libro al medio hay sitio.pptx
Correcion del libro al medio hay sitio.pptxCorrecion del libro al medio hay sitio.pptx
Correcion del libro al medio hay sitio.pptx
 
Sostenibilidad y continuidad huamcoli robin-cristian.pptx
Sostenibilidad y continuidad huamcoli robin-cristian.pptxSostenibilidad y continuidad huamcoli robin-cristian.pptx
Sostenibilidad y continuidad huamcoli robin-cristian.pptx
 
CARPETA PEDAGOGICA 2024 ARITA.sadasdasddocx
CARPETA PEDAGOGICA 2024 ARITA.sadasdasddocxCARPETA PEDAGOGICA 2024 ARITA.sadasdasddocx
CARPETA PEDAGOGICA 2024 ARITA.sadasdasddocx
 
SENTENCIA COLOMBIA DISCRIMINACION SELECCION PERSONAL.pdf
SENTENCIA COLOMBIA DISCRIMINACION SELECCION PERSONAL.pdfSENTENCIA COLOMBIA DISCRIMINACION SELECCION PERSONAL.pdf
SENTENCIA COLOMBIA DISCRIMINACION SELECCION PERSONAL.pdf
 
DISEÑO DE ESTRATEGIAS EN MOMENTOS DE INCERTIDUMBRE
DISEÑO DE ESTRATEGIAS EN MOMENTOS DE INCERTIDUMBREDISEÑO DE ESTRATEGIAS EN MOMENTOS DE INCERTIDUMBRE
DISEÑO DE ESTRATEGIAS EN MOMENTOS DE INCERTIDUMBRE
 

Mecanismos de exclusion mutua y algoritmos

  • 1. Mecanismos para garantizar la exclusión mutua En sistemas de multiprogramación con un único procesador, los procesos se intercalan en el tiempo para dar la apariencia de ejecución simultánea. Uno de los grandes problemas que nos podemos encontrar es que el hecho de compartir recursos está lleno de riesgos. Por ejemplo, si dos procesos hacen uso al mismo tiempo de una variable global y ambos llevan a cabo tanto operaciones de lectura como de escritura sobre dicha variable, el orden en que se ejecuten estas lecturas y escrituras es crítico, puesto que se verá afectado el valor de la variable.
  • 2. Mecanismos para garantizar la exclusión mutua Semáforos Monitores Algoritmo de Decker Algoritmo de Peterson
  • 3. Semáforos Métodoclásicopararestringir o permitir el acceso a recursoscompartidos (porejemplo, un recurso de almacenamiento del sistema o variables del códigofuente) en un entorno de multiprocesamiento. Programa del sistema operativo que controla el tráfico de procesos dentro del sistema. Se emplean para permitir el acceso a diferentes partes de programas (secciones críticas) donde se manipulan variables o recursos que deben ser accedidos de forma especial. Según el valor con que son inicializados se permiten a más o menos procesos utilizar el recurso de forma simultánea. Un tipo simple de semáforo es el binario, que puede tomar solamente los valores 0 y 1. Se inicializan en 1 y son usados cuando sólo un proceso puede acceder a un recurso a la vez.
  • 4. En el siguiente ejemplo se crean y ejecutan n procesos que intentarán entrar en su sección crítica cada vez que puedan, y lo lograrán siempre de a uno por vez, gracias al uso del semáforo s inicializado en 1. constint n /* número de procesos */ variable semaforo s; /* declaración de la variable semáforo de valor entero*/ Inicia (s,1) /* Inicializa un semáforo con nombre s con valor 1 */ void P (int i) { while(cierto) { P(s) /* En semáforos binarios, lo correcto es poner un P(s) antes de entrar en la sección crítica, para restringir el uso de esta región del código*/ /* SECCIÓN CRÍTICA */ V(s) /* Tras la sección crítica, volvemos a poner el semáforo a 1 para que otro proceso pueda usarla */ /* RESTO DEL CÓDIGO */ } } intmain( ){ Comenzar-procesos(P(1), P(2),...,P(n)); }
  • 5. Monitores Dentro de un sistema operativo, un monitor es un programa que observa y administra los procesos dentro del CPU. Un monitor contiene el código relativo a un recurso compartido en un solo módulo de programa; Ventajas: • mantenimiento más simple • menos errores de programación La interfaz del monitor es un conjunto de funciones que representan las diferentes operaciones que pueden hacerse con el recurso. La implementación del monitor garantiza la exclusión mutua • mediante semáforos o algún otro mecanismo. • o implícitamente en los lenguajes concurrentes. Se pueden implementar en memoria u otro recursos compartido..
  • 6. Algoritmo de Decker Solución que garantiza la exclusión mutua al gestionar elegantemente este proceso. Utiliza, además de las banderas de intención de entrar, una variable turno (proceso_favorecido) que resuelve en caso de conflicto. Da la posibilidad de que el otro proceso entre en su sección crítica una segunda vez si lo hace antes que el proceso que acaba de dejar el bucle de espera, asigne el valor cierto a su intención de entrar. Pero cuando de nuevo tiene el procesador, realiza la asignación y es su turno, así que se ejecuta. En consecuencia, no produce aplazamiento indefinido.
  • 8.
  • 9. Algoritmo de Peterson Simplifica el algoritmo de Decker. El protocolo de entrada es más elegante con las mismas garantías de exclusión mutua, imposibilidad de bloqueo mutuo y de aplazamiento indefinido.