Wednesday, February 08, 2006

6- Bloqueos al compartir discos:

Los discos están diseñados para ser compartidos y sin controles para regular su uso los procesos que lo necesitan pueden enviarle comandos conflictivos. Un ejemplo sería el de dos procesos P1 y P2. P1 necesita leer un archivo del cilindro 20 y P2 necesita escribir uno en el cilindro 310.
a) P1 emite un comando de leer del cilindro 20 y el brazo del disco comienza a moverse hacia allá. P1 queda en espera.
b) En ese instante el canal de E/S queda liberado y P2 emite un comando de escribir en el cilindro 310 y el brazo del disco acepta el comando.
c) P1 cree que el brazo está listo para leer del cilindro 20 y emite de nuevo su comando de lectura, pero el brazo necesita moverse de nuevo.
d) A P2 le ocurre lo mismo y emite de nuevo su comando para ir al cilindro 310.El brazo está en constante movimiento pero no satisface ninguno de los dos comandos completamente.

No comments: