Diferencia entre revisiones de «Ejercicios planificación de procesos»

De Wiki de Sistemas Operativos
Saltar a: navegación, buscar
(Ejercicio 2: nota en el enunciado)
(Ejercicio 6: Este ejercicio está inventado, tiene que estar propuesto con el consentimiento del profesor)
Línea 143: Línea 143:
  
 
[[sol-ejer-planif-procesos-5|Ver solución del ejercicio 5]]
 
[[sol-ejer-planif-procesos-5|Ver solución del ejercicio 5]]
 
=Ejercicio 6=
 
 
Dada la siguiente configuración de procesos:
 
 
      H0  t
 
P<sub>A</sub>  0  3
 
P<sub>B</sub>  2  1
 
P<sub>C</sub>  3  4
 
P<sub>D</sub>  5  6
 
 
El proceso A bloquea cada unidad de tiempo, y dura en estado bloqueado 3 unidades de tiempo.
 
El proceso C bloquea cada dos unidades de tiempo, su situación de bloqueo se resuelve en una unidad de tiempo.
 
 
Realice la traza de la ejecución de dichos procesos para los siguientes criterios de planificación:
 
 
* Round Robin estricto (quantum de 1 unidad de tiempo)
 
  ¿Puede realizar alguna observacion respecto al planificador de procesos en base al rendimiento?
 
* SJF (apropiativo y no apropiativo)
 
* Indice de penalización no apropiativo (si se da un empate aplicar SJF), calcule los indices de penalizacion resultantes
 
 
[[Sol-ejer6-planif-procesos|Ver solución del ejercicio 6]]
 
 
IMPORTANTE: Este ejercicio aún no ha sido revisado por ningún profesor.
 

Revisión del 19:59 23 nov 2011

Ejercicio 1

Dada la siguiente configuración de procesos:

     H0  t
PA   0   5
PB   1   3
PC   2   1
PD   3   6
PE   4   2

Realice la traza de la ejecución de dichos procesos para los siguientes criterios de planificación:

  • FIFO (no apropiativo)
  • SJF (apropiativo y no apropiativo)
  • Índice de penalización (no apropiativo)

Ver solución ejercicio 1

Ejercicio 2

Dada la siguiente configuración de procesos:

     H0  t
PA   0   3
PB   1   5
PC   2   6

Teniendo en cuenta el siguiente comportamiento:

  • El proceso A cada 1 unidad de tiempo de ejecución bloquea por operación de E/S
  • El proceso B cada 3 unidades de tiempo de ejecución bloquea por operación de E/S

Suponga que el tiempo de bloqueo de todos los procesos es de 2 unidades de tiempo debido al tiempo de acceso al dispositivo de E/S.

En caso de empate, considere que el orden de inserción a la cola de preparados es por orden de llegada (FIFO).

Realice la traza temporal de ejecución de dichos procesos para los siguientes criterios de planificación:

  • Turno rotatorio estricto, suponiendo que el quantum es de 2 unidades de tiempo.
  • Por prioridades, suponiendo que A < B < C.
  • Turno rotatorio proporcional al número de procesos en estado preparado, suponiendo que el quantum es de 2 unidades de tiempo. Si hay dos o más procesos preparados el quantum pasa a ser de una unidad de tiempo.

Ver solución ejercicio 2

Ejercicio 3

En un planificador multinivel con realimentación se dispone de dos colas:

  • La primera cola tiene procesos que reciben un quantum de 4 unidades de tiempo.
  • La segunda cola tiene procesos que reciben un quantum de 2 unidades de tiempo. Los procesos en esta cola reciben dos oportunidades de ejecución. Por tanto, se itera dos veces sobre esta cola antes de pasar a la primera cola.

Los procesos que acaban de ser lanzados pasan inicialmente a la segunda cola. Si consumen completamente el quantum una vez, promocionan a la primera cola. Si dejan de consumir completamente el quantum una vez, descienden a la segunda.

Dada la siguiente configuración de procesos:

    H0  t
Pa   0  4
Pb   1  4
Pc   2  12
Pd   3  12

Suponga que los procesos A y B bloquean por operación de E/S tras 1 unidad de ejecución. Los procesos C y D no bloquean. Los tiempos de bloqueo por E/S son de 1 unidad de tiempo. Represente graficamente la evolución temporal de la asignación del procesador.

Ver solución ejercicio 3

Ejercicio 4

[Este ejercicio formó parte del Primer Parcial de Evaluación Contínua del curso 2010/11 del 23 de marzo de 2011]

Dada la siguiente configuracion de procesos:

Proceso H0 t
PA 0 3
PB 1 5
PC 2 6

Teniendo en cuenta el siguiente comportamiento:

  • El proceso A cada 1 unidad de tiempo de ejecución bloquea .
  • El proceso B cada 3 unidades de tiempo de ejecución bloquea.

Suponga que el tiempo de bloqueo de todos los procesos es de 2 unidades de tiempo debido al tiempo de acesso al dispositivo de E/S.

Realice la traza de ejecución de dichos procesos y los índices de penalización para los siguientes criterios de planificación:

  1. Turno rotatorio con compensacion con quantum de 2 unidades de tiempo.


  • En caso de que un proceso haya consumido el 50% de su quantum y en la cola de procesos preparados haya un unico proceso, insertelo delante de este.
  • Si dos o mas procesos pasan de estado preparado a la vez, considere que el orden de insercion en la cola de preparados es el siguiente: 1ºA 2ºB 3ºC
  • Recuerde que un proceso en estado bloqueado se inserta en la cola de preparados una vez que pasa el tiempo de bloqueo ( que en este ejercicio se trata de 2 unidades de tiempo)
  • En toda decisión del planificador tenga en cuenta a los procesos que justo acaban de pasar a estado preparado tras un bloqueo.

Ver solución ejercicio 4

Ejercicio 5

[Este ejercicio formó parte del Primer Parcial de Evaluación Contínua del curso 2011/12 del 8 de Noviembre de 2011]

Dado el código de los siguientes procesos:

Código proceso A:

int fd;                                         #1
fd = open("fichero.txt", O_WRONLY, 0600);       #2
for(int i=0;i<2;i++) {                          #3
  write(fd, "%d", sizeof(int));                 #4
}
close(fd);                                      #5

Código proceso B:

int fd, contador = 0;                           #1
for(int i=0;i<2;i++) {                          #2
  contador+=2;                                  #3
}
printf("el contador vale: %d\n", contador);     #4

De manera teórica, suponga que la ejecución de cada línea de código toma una unidad de tiempo. Considere que las llamadas write y printf son bloqueantes puesto que suponen accesos a dispositivos de E/S, siendo los tiempos de bloqueo de 3 unidades de tiempo. Suponga que ambos procesos se lanzan a la vez, pero el planificador da paso en primer lugar al proceso A.

Realice la traza temporal de ejecución de dichos procesos y los índices de penalización suponiendo planificación por turno rotatorio con compensación con quantum de 2 unidades de tiempo:

  • En caso de que un proceso haya consumido el 50% de su quantum y en la cola de procesos preparados haya un único proceso, insértelo delante de éste.
  • Si dos o más procesos pasan a estado preparado a la vez, considere que el orden de inserción de preparados en la cola es el siguiente: 1º-A, 2º-B.
  • Recuerde que un proceso en estado bloqueado se inserta en la cola de preparados una vez que pasa el tiempo de bloqueo (que en este ejercicio se trata de 3 unidades de tiempo.
  • En toda decisión del planificador tenga en cuenta los procesos que justo acaban de pasar a estado preparado tras un bloqueo.

Ver solución del ejercicio 5