Planificador de procesos

De Wiki de Sistemas Operativos
Revisión del 21:04 13 oct 2011 de Peducemar (discusión | contribuciones) (Ejemplo dado en clase)
Saltar a: navegación, buscar

¿Qué es el planificador de procesos?

El planificador de procesos (process scheduler, en inglés) es la parte del sistema operativo que se encarga seleccionar a qué proceso se asigna el recurso procesador y durante cuánto tiempo.

¿Qué funciones tiene el planificador de procesos?

El planificador de procesos tiene como funciones principales:

  • Llevar el control del estado de cada proceso.
  • Decidir qué proceso usará el procesador y durante cuanto tiempo, para ello empleará un cierto criterio en base al cual tomará las decisiones. Si implementa multiprogramación, deberá emplear un criterio que evite que un proceso monopolice el procesador.
  • Asignar el procesador al proceso, restableciendo el contexto de la ejecución del proceso por donde fuere.
  • Retirar el procesador al proceso, salvando el contexto de la ejecución del proceso, para poder restablecerlo posteriormente una vez que vuelva a ser asignado.

El planificador de procesos es software, por tanto, requiere emplear el recurso procesador para ejecutar su código.


Ejemplo dado en clase

Teniendo en cuenta las siguientes circunstancias:

  • Un proceso Pa, que bloquea cada 2 unidades de tiempo.
  • Un proceso Pb.
  • Prioridad Pa>Pb.
  • El evento externo que verifica el fin de bloqueo de Pa llega tras 2 unidades de tiempo.


La representación obtenida sería:

Procesos.jpg



En este ejercicio podríamos decir que el proceso A (Pa) es un proceso interactivo, ya que bloquea mucho y que el proceso B (Pb) es por lotes, ya que apenas bloquea.