Planificación de procesos

 

La planificación de procesos es el conjunto de políticas y mecanismos que un sistema operativo utiliza para determinar el orden en que se ejecutan los procesos y cómo se les asignan los recursos del sistema. Su objetivo principal es lograr la mayor productividad posible, es decir, la mayor cantidad de trabajo completado por unidad de tiempo.

Tipos de planificadores

La planificación se implementa a menudo en tres niveles o tipos de planificadores:

Planificación a Largo Plazo

Decide qué trabajos (conjuntos de procesos) son admitidos en el sistema desde una cola de espera. Su función es controlar el grado general de multiprogramación del sistema.

Planificación a Medio Plazo

Gestiona la suspensión y reanudación de procesos, moviéndolos entre la memoria principal y la memoria secundaria (intercambio o swapping).

Planificación a Corto Plazo

Es el planificador más frecuentemente invocado y se encarga de seleccionar el siguiente proceso del estado "listo" para que se ejecute en el procesador.

Criterios de planificación

Los criterios de planificación y rendimiento utilizados para evaluar la eficacia de los algoritmos de planificación incluyen:

Utilización del Procesador

El porcentaje de tiempo promedio en que el procesador está activamente ocupado, ya sea ejecutando programas de usuario o código del sistema operativo.

Productividad

La cantidad de trabajo útil completado por unidad de tiempo, como el número de procesos finalizados.

Tiempo de Espera

El tiempo total que un proceso pasa en la cola de procesos listos, esperando por la CPU.

Tiempo de Retorno

El tiempo total transcurrido desde la presentación de un proceso hasta su finalización, incluyendo el tiempo de ejecución, el tiempo de espera y el tiempo en operaciones de E/S.

Tiempo de Respuesta

El tiempo que transcurre desde que se envía una solicitud hasta que se produce la primera respuesta, especialmente relevante en sistemas interactivos.

Obra publicada con Licencia Creative Commons Reconocimiento Compartir igual 4.0

Creado con eXeLearning (Ventana nueva)