lunes, 1 de julio de 2013

2.5 Niveles, Objetivos y Criterios de Planificación

Se consideran tres niveles importantes de planificación, los que se detallan a continuación:
  • Planificación de alto nivel: Se encarga de llevar procesos de disco a memoria y viceversa. Seleccionando los trabajos que deben admitirse en el sistema.
  • También se denomina Planificación de trabajos. Determina a qué trabajos se les va a permitir competir activamente por los recursos del sistema, lo cual se denomina Planificación de admisión. Administrar todos los recursos del sistema excepto el CPU. Mantiene las colas de procesos bloqueados y suspendidos. Controla la creación de procesos. Maneja el nivel de multiprogramación.
  • Planificación de nivel intermedio: En algunos casos, en especial cuando el sistema está sobrecargado, el planificador de nivel medio encuentra ventajoso retirar trabajos activos de la memoria para reducir el grado de multiprogramación, y por lo tanto, permitir que los trabajos se completen mas aprisa. Este subadministrador controla los trabajos que se intercambian hacia fuera y de regreso.
  • Determina a qué procesos se les puede permitir competir por la CPU. O Efectúa “suspensiones” y “activaciones” (“reanudaciones”) de procesos. Debe ayudar a alcanzar ciertas metas en el rendimiento total del sistema. Equilibrar la administración de trabajos en el sistema con la asignación del CPU a dichos procesos. Nivelar la carga del sistema (procesos activos y pasivos).
  • Planificación de bajo nivel: Se encarga de pasar de un proceso a otro en memoria principal. Determinando a cuál proceso listo se le asignará el CPU cuando éste se encuentra disponible. Determina a qué proceso listo se le asigna la cpu cuando esta queda disponible y asigna la cpu al mismo, es decir que “despacha” la cpu al proceso.
Objetivos de la planificación
Los objetivos de la planificación del procesador son los siguientes e involucran a los conceptos detallados seguidamente:

  • Ser justa: Todos los procesos son tratados de igual manera. Ningún proceso es postergado indefinidamente.
  • Maximizar la capacidad de ejecución: Maximizar el número de procesos servidos por unidad de tiempo.
  • Maximizar el número de usuarios interactivos que reciban unos tiempos de respuesta aceptables: En un máximo de unos segundos.
  • Ser predecible: Un trabajo dado debe ejecutarse aproximadamente en la misma cantidad de tiempo independientemente de la carga del sistema.
  • Minimizar la sobrecarga: No suele considerarse un objetivo muy importante.
  • Equilibrar el uso de recursos: Favorecer a los procesos que utilizarán recursos infrautilizados.
  • Equilibrar respuesta y utilización: La mejor manera de garantizar buenos tiempos de respuesta es disponer de los recursos suficientes cuando se necesitan, pero la utilización total de recursos podrá ser pobre.
  • Evitar la postergación indefinida: Se utiliza la estrategia del “envejecimiento” . Mientras un proceso espera por un recurso su prioridad debe aumentar, así la prioridad llegará a ser tan alta que el proceso recibirá el recurso esperado.
  • Asegurar la prioridad: Los mecanismos de planificación deben favorecer a los procesos con prioridades más altas.
  • Dar preferencia a los procesos que mantienen recursos claves: Un proceso de baja prioridad podría mantener un recurso clave, que puede ser requerido por un proceso de más alta prioridad.
  • Dar mejor tratamiento a los procesos que muestren un “comportamiento deseable”: Un ejemplo de comportamiento deseable es una tasa baja de paginación.
  • Degradarse suavemente con cargas pesadas: Un mecanismo de planificación no debe colapsar con el peso de una exigente carga del sistema. Se debe evitar una carga excesiva mediante las siguientes acciones: No permitiendo que se creen nuevos procesos cuando la carga ya es pesada. Dando servicio a la carga más pesada al proporcionar un nivel moderadamente reducido de servicio a todos los procesos.
Criterios de planificación
  • Equidad Garantizar que cada proceso obtiene su proporción justa de la cpu.
  • Eficacia Mantener ocupada la cpu el ciento por ciento del tiempo.
  • Tiempo de respuesta Minimizar el tiempo de respuesta para los usuarios interactivos.
  • Tiempo de regreso Minimizar el tiempo que deben esperar los usuarios por lotes(batch) para obtener sus resultados.
  • Rendimiento Maximizar el número de tareas procesadas por hora.





No hay comentarios:

Publicar un comentario