Duda planificación super parcial diciembre del 2020 problema 2.

Duda planificación super parcial diciembre del 2020 problema 2.

de Luis Alberto Olivera Alonso -
Número de respuestas: 8

Tengo una duda sobre este ejercicio, se tiene que P1H1 y P1H2 ejecutan las rutinas R1 y R2 por lo que inicialmente el proceso P1 tendría un tiempo de ejecución restante de 4 + 8=12.

Mientras que el proceso P2 ejecuta la rutina R2 y tiene un tiempo restante de 8 y P3 ejecuta la rutina R3 y tiene un tiempo restante de 14.

La letra dice:

En todos los casos, los empates se resuelven primero priorizando el que tenga mayor tiempo de cómputo restante y luego por menor identificador, es decir, Pi tendrá mayor prioridad que Pj si i < j.

 

El problema es que inicialmente se le asigna el proceso P1 al E1 y el P3 a E2.La asignación no debería ser P1 al E2 y P3 al E1.Esto cambiaría el diagrama de planificación. No hay un error en el diagrama propuesto de solución.

En T==0 no hay un triple empate entre P1,P2 y P3.Se tiene P3 con 14 y P1 con 12.



En respuesta a Luis Alberto Olivera Alonso

Re: Duda planificación super parcial diciembre del 2020 problema 2.

de Manuel Freire -
Hola,

En que cpu ejecuta es arbitrario.

Saludos!
En respuesta a Manuel Freire

Re: Duda planificación super parcial diciembre del 2020 problema 2.

de Santiago Roberto Cancela Cardona -
Buenas,
Ya que se está discutiendo sobre este problema, aprovecho a plantear otra duda:
En el instante t = 12 se tiene que está ejecutando P1 y P3, y cuando terminan de ejecutar tienen prioridades 4 y 6 respectivamente. Por qué se queda con el procesador P1 y expropia y se lo da a P3?


En respuesta a Santiago Roberto Cancela Cardona

Re: Duda planificación super parcial diciembre del 2020 problema 2.

de Santiago Roberto Cancela Cardona -
Otra cosa, en t=20 el proceso 3 pasa de estar bloaqueado a ejecutar directamente. Eso se puede? Según el diagrama de los estados de procesos primero debería de pasar a un estado listo antes de ejecutar.
En respuesta a Santiago Roberto Cancela Cardona

Re: Duda planificación super parcial diciembre del 2020 problema 2.

de Santiago Roberto Cancela Cardona -
En respuesta a Santiago Roberto Cancela Cardona

Re: Duda planificación super parcial diciembre del 2020 problema 2.

de Federico Rivero -
Hola Santiago!

Respondo todas las preguntas en este mensaje

En el instante t = 12 se tiene que está ejecutando P1 y P3, y cuando terminan de ejecutar tienen prioridades 4 y 6 respectivamente. Por qué se queda con el procesador P1 y expropia y se lo da a P3?

El procesador es round robin. Lo cual significa que los procesos van rotando el uso de la CPU. En T=12, P1 ejecutó durante 2 ms por lo tanto debe seguir ejecutando. Por otro lado, p3 terminó su quantum y por esa razón debe ceder el procesador y pasa a ejecutar el primero en la cola de procesos listos: P2.

La parte de las prioridades ocurre SOLO cuando hay un empate, y el empate en round robin se da cuando dos procesos ingresan a la cola de procesos listos a la misma vez. En este caso no hay ningún empate, el orden está dado por el orden de la cola de procesos listos.

Otra cosa, en t=20 el proceso 3 pasa de estar bloaqueado a ejecutar directamente. Eso se puede? Según el diagrama de los estados de procesos primero debería de pasar a un estado listo antes de ejecutar.


Sí, es factible. En este caso el pasaje por la cola de procesos listos es instantánea porque consideramos despreciable el tiempo de ejecución del planificador. Pero lo que ocurriría es que una cierta rutina del sistema operativo encargada del manejo de la E/S desbloquearía al proceso y lo colocaría en la cola de procesos listos, y luego se llamaría al planificador el cual lo asignaría para ejecutar. Pero a nivel de diagrama figura todo en el mismo instante.

Saludos,

        Federico 

En respuesta a Federico Rivero

Re: Duda planificación super parcial diciembre del 2020 problema 2.

de Joel Cabrera Dechia -
Buenas!

A nivel de usuario en t = 10, P1H1 y P1H2 tienen CPU-Burst de 2 y 4 respectivamente. ¿Por qué se ejecuta P1H1? Es porque se puso primero en la lista? Pero ahí no sería FCFS? Para mi ahí debería de haber empate y ejecutarse P1H2. Si bien dijiste que el empate se da cuando llegan al mismo tiempo a la cola me parece que eso sigue FCFS.
O es por el q = 2? Yo pensaba que después de bloquearse un hilo, el q se reinicia pero capaz me equivoco.
Igualmente leyendo las diapositivas dice que: "Cuando un proceso consume su quantum es puesto al final de la cola." Es por eso? Porque en t = 8 P1H2 consume el quantum y como P1H1 ya estaba en la cola se pone P1H2 al final.

Por otro lado, qué pasa si un proceso viene de ser bloqueado y a otro se le termina el quantum? Es empate? Porque ahí llegarían al mismo tiempo a la lista, no?


Saludos,
Joel
En respuesta a Joel Cabrera Dechia

Re: Duda planificación super parcial diciembre del 2020 problema 2.

de Manuel Freire -

Hola,

Es por lo que comenta fede de que el tiempo de cómputo es un criterio de desempate, en el bloque T = 10 a T = 12 ejecuta el hilo 1 porque es el que estaba primero en la lista de Round Robin al comienzo (en el bloque anterior venía con L1). FCFS sería si se le diera el procesador al primer hilo hasta que se bloquee o termine algo que, como se puede ver en T = 2, no pasa acá.

Espero que haya quedado más claro.

Saludos!