UTNianos

Versión completa: [Sistemas Operativos ] Duda con ejercicio de Planificacion Final 20/12/2016
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Buenas !!

Estoy trabado en el instante 13. Revisé este link donde se plantea la misma duda, la cual Adro le contesta pero sigo sin entender..

Adjunto imágenes de mi resolución hasta el instante 13, la resolución oficial y el enunciado.


[attachment=14928]

[attachment=14929]

[attachment=14927]




En el instante 13 el KLT2 vuelve de I/O y el hilo ULT está esperando en la cola de ready. El algoritmo es SJF.
Próxima rafaga del KLT2 es 1 CPU
Próxima ráfaga del ULT es 3 CPU.

Por qué se ejecuta el ULT si tiene una ráfaga más grande?




Gracias!
Buenas... si bien no estoy seguro entiendo que es porque la biblioteca de hilos no devolvió el control al SO, por eso sigue planificando el otro ULT.
El algoritmo principal es SJF sin desalojo, por lo tanto en el instante 12 le dio el turno al KLT3 porque era el único que esta Ready, luego en el instante 13 el planificador no ve lo que esta pasando entre los ULT. La Biblioteca que también planifica con SJF sin desalojo en el instante 12 siguió ejecutando el ULT1 que volvió de I/O y después paso al ULT2 hasta que este pidió I/O y recién ahí devolvió el control al SO.
Espero que alguien que la tenga mas clara lo confirme o de la explicación.
Rindo mañana y aun me quedan dudas.
Saludos.
hola Nicco, no se si ya sacaste OS, pero paso a contestar lo que sucede. Teniendo en cuenta el ejemplo que ofrece el libro W. Stalling en el capitulo de hilos (pag 167). El planificador del OS no se entera lo que pasa a nivel de procesos en su biblioteca de hilos (como dice JPFx), entonces, en t=13 el proceso 1, su hilo KLT2 esta bloqueado y el proceso 2 con su hilo generico KLT3 se esta 'ejecutando', entonces, la biblioteca de hilos cambia internamente colocando el ult1 a 'finalizado' y el ult2 que estaba en 'listo' a 'ejecutando' por eso sigue ejecutando y el planificador del OS no tiene control sobre eso interpreta que KLT3 tuvo una rafaga de 4 ciclos de reloj. Como sigue supongo que no hace falta explicar.

Cualquier cosa que no se entienda avisame! Saludos
URLs de referencia