UTNianos

Versión completa: Duda - Ejercicio Practico Deadlock FINAL 22/05/2013
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Gente alguien sabe como se resuelve el ejercicios de deadlock de esa fecha? La verdad es que habria que inventar instancias de los recursos, dado que no se dispone de esa informacion.
Por ahora el vector de disponibilidad deberia ser [0 0 2 2]

Gracias!
Yo rendi ese final. Aprobe. Mi respuesta fue 0 0 2 2 si mal no recuerdo.
Hola, yo lo haría de la siguiente manera:

Recursos usados:
R1 R2 R3 R4
3 5 4 0

R1 R2 R3 R4
P1 1 0 0 1
P2 0 2 0 1
P3 0 0 0 2
Recursos que Todavía Necesitan

Opción 1)
Para ejecutar P1 necesito 1 0 0 1
y cuando libera queda 1 2 0 1
Puedo ejecutar P2 queda 2 3 2 1
Para ejecutar P3 necesito 2 3 2 2
O sea que en total haya: 4 5 4 2

Opción 2)
Para ejecutar P2 necesito 0 2 0 1
y cuando libera queda 1 3 2 1
Puedo ejecutar P1 queda 1 5 2 1
Para ejecutar P3 necesito 1 5 2 2
O sea que en total haya: 3 7 4 2

Opción 3)
Para ejecutar P3 necesito 0 0 0 2
y cuando libera queda 2 2 2 2
Puedo ejecutar P2 queda 3 3 2 2
Puedo ejecutar P1 queda 3 5 2 2

Elijo la tercera opción que es en la que menos recursos disponibles necesito.
El vector de recursos disponibles sería 0 0 0 2 una vez ya asignadas las 2 instancias del recurso 3 a P2.
Por lo tanto, antes de asignarlo el vector debe ser:
R1 R2 R3 R4
0 0 2 2

Está también resuelto en el Campus Virtual, podés entrar como invitado:
http://www.campusvirtual.frba.utn.edu.ar...hp?d=21138
VoF:

1) VERDADERO. El algoritmo FIFO es apropiativo de la CPU, y al no haber otros procesos, no puede presentarse la condicion de carrera.
2) VERDADERO . Gerera Segmentation Fault (no estoy muy seguro de esta)
3) FALSO. Los Hard Links no pueden ser realizados entre dos particiones distintas
4) FALSO. Falta las otras dos: retencion y espera, y sin desalojo
5) FALSO. Puede seguir ejecutando un hilo de usuario, del mismo proceso.
pregunta, el 5 Esteban puso:
5.- Falso. La afirmación solo aplica para ULTs.

Me surge la duda si cuando habla de "Siempre que a un hilo se le termine el quantum de ejecución, se pasará a ejecutar otro hilo de otro
proceso." se refiere a que el quantum que se termina es del HILO o a nivel PROCESO (en caso de los ULT).
Si el quantum que se termina es a nivel PROCESO para mi pasa a otro hilo de otro proceso, si el quantum que se termina a nivel HILO, podría pasar a otro hilo del mismo proceso (Siempre hablando en caso de los ULT).

Para los KLT es 100% falso, pero me surgía esa duda en los ULT como para tenerlo en cuenta.

Saludos!!!!
La 5 es falsa:
-Si tenes 1 proceso con dos KLT y se le acaba el quantum a un hilo OK; ejecuta el otro hilo y nunca cambiaste de proceso.
Ahora bien si tenes un KLT (un proceso) y éste posee dos hilos de usuarios y la planificacion de la biblioteca de hilos usa rr de 3 OK, pasa lo mismo
ejecuta un ULT , se le acaba el quantum y ejecuta el otro ULT.
Aca se podrian bloquear los hilos de usuario OK pero como dijeron en el campus virtual uno no quiere que el hilo de usuario se bloquee asi que podria implementar en la biblioteca de usuario algo como para hacer que siga ejecutando el otro hilo de usuario

Fuente:
Campus virtual
Hilos de Usuario - E/S
de Leandro Zanolo - martes, 16 de septiembre de 2014, 19:54

http://www.campusvirtual.frba.utn.edu.ar...hp?d=29863
URLs de referencia