Ejercicio Planificación Procesos – Hilos

Sea un sistema operativo cuyo kernel gestiona los hilos de los procesos. El planificador que utiliza es SRTN para las tareas y Round Robin con quantum de 10 ms para los hilos. El tiempo que necesita el sistema para realizar un cambio de tarea es de 10 ms. Dada la tabla adjunta se pide dibujar el diagrama de asignación de procesos y calcular:

Instante
Llegada
Duración Ráfaga E/S Duración Ráfaga
Tarea 1 0 Hilo 1 20
Hilo 2 20 30 20
Hilo 3 30
Tarea 2 30 Hilo 1 20
Hilo 2 10 40 10
Tarea 3 30 Hilo 1 10
Hilo 2 30 20 10

a) El uso efectivo de CPU expresado en porcentaje
b) La sobrecarga generada por el sistema operativo expresada en porcentaje


Consideraciones que se han tenido en cuenta:

  • El cambio de tarea se considera tiempo perdido pero la CPU no está ociosa
  • La CPU esta ociosa cuando todos las tareas están en E/S
  • Una tarea cede la CPU cuando todos sus hilos están en E/S o han terminado

Se ha usado STRN que es expulsivo cuando la tarea se queda bloqueada en E/S. Como trabajamos con hilos, todos los hilos de la tarea deben estar en E/S para que el S.O. lance el planificador. El planificador también se pone en funcionamiento cuando llega una tarea y si esta tiene menor carga entonces se produce un cambio de tarea. Los hilos dentro de una tarea se gestionan con Round Robin.

Tiempo total: 240
Tiempo perdido: 60
Tiempo útil: 180

Uso efectivo de la CPU = tiempo_util / (tiempo_util + tiempo_perdido)

Uso efectivo de la CPU = 180/ 240 = 75.00%

Sobrecarga = 60 / 240 = 25,00% %

La CPU está ociosa el 0% del tiempo porque coincide que cuando únicamente hay E/S el S.O. está planificando la tarea que corresponde.

3 comentarios en “Ejercicio Planificación Procesos – Hilos”

  1. Buenas, estoy practicando ejercicios de planificación de procesos y me he encontrado uno con operaciones de entrada y salida. El ejercicio te da una tabla de procesos pero es SIN hilos.

Deja un comentario