Exclusión Mutua (Mutex)

Autor: Lewis Jackson
Fecha De Creación: 8 Mayo 2021
Fecha De Actualización: 15 Mayo 2024
Anonim
Exclusión Mutua (Mutex) - Tecnología
Exclusión Mutua (Mutex) - Tecnología

Contenido

Definición: ¿Qué significa la exclusión mutua (Mutex)?

Una exclusión mutua (mutex) es un objeto de programa que impide el acceso simultáneo a un recurso compartido. Este concepto se utiliza en la programación concurrente con una sección crítica, un fragmento de código en el que los procesos o subprocesos acceden a un recurso compartido. Solo un subproceso posee el mutex a la vez, por lo tanto, se crea un mutex con un nombre único cuando se inicia un programa. Cuando un subproceso contiene un recurso, tiene que bloquear el mutex de otros subprocesos para evitar el acceso concurrente del recurso. Al liberar el recurso, el hilo desbloquea el mutex.


Una introducción a Microsoft Azure y la nube de Microsoft | A lo largo de esta guía, aprenderá de qué se trata la computación en la nube y cómo Microsoft Azure puede ayudarlo a migrar y administrar su negocio desde la nube.

Techopedia explica la exclusión mutua (Mutex)

Mutex entra en escena cuando dos subprocesos trabajan en los mismos datos al mismo tiempo. Actúa como un candado y es la herramienta de sincronización más básica. Cuando un subproceso intenta adquirir un mutex, gana el mutex si está disponible; de ​​lo contrario, el subproceso se establece en la condición de suspensión. La exclusión mutua reduce la latencia y las esperas ocupadas mediante colas y conmutadores. Mutex puede aplicarse tanto a nivel de hardware como de software.

Deshabilitar las interrupciones para el menor número de instrucciones es la mejor manera de aplicar mutex a nivel del núcleo y evitar la corrupción de las estructuras de datos compartidos. Si varios procesadores comparten la misma memoria, se establece un indicador para habilitar y deshabilitar la adquisición de recursos en función de la disponibilidad. El mecanismo de espera ocupada aplica mutex en las áreas de software. Esto está provisto de algoritmos como el algoritmo de Dekkers, el algoritmo de panadería blanco y negro, el algoritmo de Szymanskis, el algoritmo de Petersons y el algoritmo de panadería de Lamports.


Se pueden definir lectores mutuamente exclusivos y códigos de clase mutex de lectura / escritura para una implementación eficiente de mutex.