Mecanismos de Sincronización
作者:Daniel Oliver Rojas
1. Candados (Locks)
1.1. Características: Previene acceso simultáneo, bloquea recursos hasta que se liberen
1.2. Funcionamiento: Utiliza métodos como "lock" y "unlock" para controlar el acceso
1.3. Implementación: Usualmente implementados a nivel de sistema operativo o lenguaje de programación
1.4. Algoritmos: Peterson's algorithm, Bakery algorithm
2. Transacciones
2.1. Características: Unidad de trabajo que se debe completar en su totalidad
2.2. Funcionamiento: Usa "commit" para finalizar y "rollback" para revertir
2.3. Implementación: Bases de datos y sistemas de manejo de memoria
2.4. Algoritmos: Two-Phase commit, Three-phase commit
3. Semáforos
3.1. Características: Variable especial que se usa para señalizar a otros procesos
3.2. Funcionamiento: Operaciones "wait" y "signal"
3.3. Implementación: Manejo de hilos y procesos
3.4. Algoritmos: Dijkstra's Semaphore, Counting semaphore
4. Monitores
4.1. Características: Mecanismo de alto nivel que encapsula datos y procedimientos
4.2. Funcionamiento: Procedimientos solo pueden ser ejecutados por un hilo a la vez
4.3. Implementación: A nivel de lenguaje de programación
4.4. Algoritmos: Hoare's Monitor
5. Modelos de Comunicación
5.1. Características: Determina cómo los procesos intercambian información
5.2. Funcionamiento: Puede ser sincrónico o asincrónico
5.3. Implementación: Sistemas distribuidos y de red
5.4. Algoritmos: Synchronous message passing, Asynchronous message passing