Módulo del Sistema Operativo que realiza la planificación
El módulo del Sistema Operativo que realiza la planificación es el Planificador.
Planificación
de procesos en Sistemas Operativos
Conjunto de políticas y mecanismos incorporados al
sistema
operativo, a
través de un módulo denominado planificador, que debe decidir cuál de los
procesos en condiciones de ser ejecutado conviene ser despachado primero y qué
orden de ejecución debe seguirse. Esto debe realizarse sin perder de vista su
principal objetivo que consiste en el máximo aprovechamiento del sistema, lo
que implica proveer un buen servicio a los procesos existentes en un momento
dado.
Modo de decisión
Indica en
qué instante en el tiempo se aplica la función de selección. Las decisiones del
planificador deben efectuarse en una de las cinco circunstancias siguientes:
1ª.
Cuando un proceso cambia del estado de ejecución al estado de bloqueado.
2ª.
Cuando un proceso cambia del estado de ejecución al estado de listo.
3ª.
Cuando un proceso cambia del estado de bloqueado al estado de listo.
4ª.
Cuando llega un proceso nuevo. Del estado de nuevo al estado de listo.
5ª. Cuanto termina un proceso.
Cuando la
planificación tiene lugar únicamente en las situaciones 1ª y 5ª, decimos que el
esquema de planificación es no apropiativo. Solo pierde el control del
procesador cuando se bloquea por una operación de E/S o porque ha terminado.
En los
otros casos decimos que tenemos un esquema de planificación apropiativo. Se le
puede retirar el dominio del procesador a un proceso.
Algoritmos de Planificación
Primero en llegar primero en ser servido
Conocido como FCFS (First
Come First Served). Este algoritmo emplea una cola de
procesos, asignando un lugar a cada proceso por el orden de llegada. Cuando el
proceso llega es puesto en su lugar en la cola después del que llegó antes que
él y se pone en estado de listo. Cuando un proceso comienza a ejecutarse no se
interrumpe su ejecución hasta que termina de hacerlo.
Prioridad al más corto
Su nombre
es SJF (Shortest
Job First). El proceso que se encuentra en ejecución cambiará de
estado voluntariamente, o sea, no tendrá un tiempo de ejecución determinado
para el proceso. A cada proceso se le asigna el tiempo que usará cuando vuelva
a estar en ejecución, y se irá ejecutando el que tenga un menor tiempo
asignado. Si se da el caso de que dos procesos tengan igual valor en ese
aspecto emplea el algoritmo FCFS.
Round Robin
A cada
proceso se le asigna un tiempo determinado para su ejecución, el mismo tiempo
para todos. En caso de que un proceso no pueda ser ejecutado completamente en
ese tiempo se continuará su ejecución después de que todos los procesos
restantes sean ejecutados durante el tiempo establecido. Este es un algoritmo
basado en FCFS que trata la cola de procesos que se encuentran en estado de
listos como una cola circular.
Planificación por prioridad
En este
tipo de planificación a cada proceso se le asigna una prioridad siguiendo un
criterio determinado, y de acuerdo con esa prioridad será el orden en que se
atienda cada proceso.
Planificación garantizada
Para
realizar esta planificación el sistema tiene en cuenta el número de usuarios
que deben ser atendidos. Para un número "n" de usuarios se asignará a
cada uno un tiempo de ejecución igual a 1/n.
Planificación de Colas Múltiples
El nombre
se deriva de MQS (Multilevel Queue Schedulling). En este algoritmo la cola de
procesos que se encuentran en estado de listos es dividida en un número
determinado de colas más pequeñas. Los procesos son clasificados mediante un
criterio para determinar en qué cola será colocado cada uno cuando quede en
estado de listo. Cada cola puede manejar un algoritmo de planificación
diferente a las demás.
No hay comentarios.:
Publicar un comentario