Duda ejercicio 21

Duda ejercicio 21

de Ihara Belen Olivera Vazquez -
Número de respuestas: 2

Buenas tardes,


Realizando el ejercicio 21 llegue a la situacion en que se agoto el quantum a nivel de usuario de un proceso pero no a nivel de nucleo y al mismo tiempo ningun otro proceso estaba en estado listo para ejecutarse.

 
En dicha situacion debo igualmente dejar en listo el proceso al menos una unidad de tiempo porque el quantum a nivel de usuario se agotó o puedo igualmente seguir ejecutandolo?
Espero se logre entender la duda, quedo a la espera de la respuesta.

Saludos!
Belen

En respuesta a Ihara Belen Olivera Vazquez

Re: Duda ejercicio 21

de Federico Rivero -
Hola!

En ese caso el proceso continua ejecutando, el proceso no va a estar nunca en estado listo, explico por qué. En primer lugar, porque el planificador tiene la tarea de no dejar nunca el CPU ocioso porque sí. Si hay algún proceso en estado listo, se va a ejecutar. Por otro lado, los tiempos del llamado al planificador y los tiempos de cambio de contexto en este tipo de ejercicios los consideramos despreciables (con respecto al quantum), así que si la idea de dejar un tiempo la CPU ociosa viene por considerar este tiempo, aviso que eso no es necesario.

Finalmente, miremos lo que pasa a nivel de los planificadores. Si el quantum a nivel de núcleo no se acabó, entonces el planificador a nivel de núcleo no se va a invocar, es decir que en la planificación a nivel de núcleo, el proceso ejecuta durante ambos bloques. A nivel de usuario lo que ocurre es que el quantum se agota, se invoca el planificador a nivel de usuario, y este, en un tiempo despreciable, calcula que solo queda un hilo ejecutando y que por tanto debe ser nuevamente seleccionado para ejecutar. Se le reinicia el quantum a nivel de usuario y continúa ejecutando.

Saludos,
Federico