Tabla de contenido:
- Definición: ¿Qué significa la exclusión mutua (Mutex)?
- Techopedia explica la exclusión mutua (Mutex)
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.
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 de ocupado mediante colas y cambios de contexto. 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 Dekker, el algoritmo de panadería blanco y negro, el algoritmo de Szymanski, el algoritmo de Peterson y el algoritmo de panadería de Lamport.
Se pueden definir lectores mutuamente exclusivos y códigos de clase mutex de lectura / escritura para una implementación eficiente de mutex.
