Políticas y Criterios de Planificación
Una
estrategia
de planificación debe buscar que los
procesos obtengan sus turnos de ejecución
apropiadamente, conjuntamente con un buen rendimiento
y minimización de la sobrecarga (overhead) del
planificador mismo.
En
general, se buscan los siguientes objetivos
principales:
- Justicia.
Todos los procesos son tratados de la
misma manera y ninguno experimenta postergación
indefinida.
- Maximizar
la capacidad de ejecución. Debe intentar
dar servicio al número máximo de procesos por unidad
de tiempo.
- Maximizar
el tiempo de respuesta. Cada usuario o
proceso debe observar que el sistema les responda
consistentemente a sus requerimientos.
- Evitar
el aplazamiento indefinido. Los procesos
deben terminar de ejecutarse en un plazo finito de
tiempo.
- El
sistema debe ser predecible. Un trabajo
dado debe ejecutarse, aproximadamente, en la misma
cantidad de tiempo y costo con independencia de la
carga del sistema.
- Equilibrar
el uso de recursos. El planificador debe
mantener ocupados los recursos del sistema.
- Mantener
bien definidas las prioridades de los procesos.
Establecer las prioridades de los procesos en cuanto
al uso de los recursos.
C.
Criterios de planificación
Para
poder alcanzar los objetivos de la planificación
mencionados en el punto anterior, los mecanismos de
planificación deben considerar los siguientes criterios
o características:
- Limitación
de un proceso a operaciones de entrada/salida.
El proceso nada más entra a CPU a esperar un evento
de entrada/salida, solo la utiliza brevemente.
- Limitación
de un proceso al CPU. El proceso tiende a
usar el CPU hasta que termina su tiempo.
- Si
un proceso es por lote o interactivo. Por
lote, los procesos se realizan ininterrumpidamente;
interactivo, permite la interacción usuario-máquina,
que lleva más tiempo.
- Rapidez
de respuesta. Si los procesos deben dar
respuesta en tiempo real se requiere que tengan
prioridad para los turnos de ejecución.
- Prioridad.
Los procesos de alta prioridad deben recibir mejor
tratamiento que los de prioridad baja.
- Tiempo
de ejecución real. Cuánto tiempo requiere el
proceso para ejecutarse.
- Tiempo
de ejecución adicional. Cuánto tiempo más
requiere el proceso para terminar de ejecutarse.
|