Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Coordinacion y Sincronizacion de Procesos
Coordinacion y Sincronizacion de Procesos
Condiciones de carrera
Regiones crticas
Cmo evitamos las condiciones de carrera?
Exclusin Mutua
Exclusin mutua con espera ocupada Deshabilitando interrupciones Variables de candado Alternancia estricta Solucin de Peterson La instruccin TSL Dormir y despertar El problema del productor-consumidor (bfer limitado)
Regiones crticas
Algunas veces un proceso tiene que acceder a la memoria compartida o a archivos compartidos, o hacer otras cosas crticas que pueden producir carreras. Esa parte del programa en la que se accede a la memoria compartida se conoce como seccin crtica o regin crtica
Semforos
En 1965 E. W. Dijkstra sugiri el uso de una variable entera para contar el nmero de seales de despertar, guardadas para un uso futuro. En su propuesta introdujo un nuevo tipo de variable, al cual l le llam semforo.
Semforos
Operaciones Up (wakeup) Down (sleep)
Semforos
La operacin down en un semforo comprueba si el valor es mayor que 0. De ser as, disminuye el valor (es decir, utiliza una seal de despertar almacenada) y slo contina. Si el valor es 0, el proceso se pone a dormir sin completar la operacin down por el momento. Las acciones de comprobar el valor, modificarlo y posiblemente pasar a dormir, se realizan en conjunto como una sola accin atmica indivisible. Esta atomicidad es absolutamente esencial para resolver problemas de sincronizacin y evitar condiciones de carrera.
Mutexes
Es una versin simplificada del semforo Los mutexes son buenos slo para administrar la exclusin mutua para cierto recurso compartido o pieza de cdigo Un mutex es una variable que puede estar en uno de dos estados: abierto (desbloqueado) o cerrado (bloqueado). En consecuencia, se requiere slo 1 bit para representarla
Monitores
Un monitor es una coleccin de procedimientos, variables y estructuras de datos que se agrupan en un tipo especial de mdulo o paquete Los monitores tienen una importante propiedad que los hace tiles para lograr la exclusin mutua: slo puede haber un proceso activo en un monitor en cualquier instante