sábado, 2 de julio de 2016

PLANIFICACIÓN DE TRABAJOS EN COMPARACIÓN CON PLANIFICACIÓN DE PROCESOS.

Se denomina planificador al software del sistema operativo encargado de asignar los recursos de un sistema entre los procesos que los solicitan. Siempre que haya tomar una decisión, el planificador debe decidir cuál de los procesos que compiten por la posesión de un determinado recursos lo recibirá. El administrador del procesador está compuesto por dos sub-administradores. Se conocen como el planificador de trabajos y el planificador de procesos.






Cada trabajo o programa pasa a través de una jerarquía de administradores. El primero que encuentra es el planificador de trabajos, también se conoce como planificador de alto nivel. Este sub-administrador sólo se ocupa de elegir los trabajos de una cola de trabajos que llegan y colocarlas en la cola de procesos con base en las características de cada uno. Su meta es mantener ocupada la mayor parte de los componentes del sistema de la computadora la mayor parte del tiempo.


Después que el planificador de trabajos pone un trabajo en la cola de listo, el planificador de procesos se hace cargo. Define qué trabajos tendrán derecho al CPU, cuándo y cuánto tiempo. También decide cuándo debe interrumpirse el procesamiento, determina a qué colas se debe pasar el trabajo durante su ejecución y reconoce cuándo ha concluido un trabajo y ya no hay necesidad de seguir procesándolo. 

 Niveles Objetivos Criterios 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 más 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. 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
•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.

Criterios de la 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.

Técnicas Administración del Planificador
Las disciplinas de planificación pueden ser:
• Expropiativas
• No expropiativas

Los algoritmos (técnicas) tienen distintas propiedades según los criterios en los que se basen para su construcción, lo cual se refleja en qué tipo de procesos se puede ver favorecido frente a otro en la disputa del procesador. Antes de realizar la elección de un algoritmo se debe considerar las propiedades de estos frente al criterio de diseño elegido. Algunos de estos son:
a) Eficacia: Se expresa como un porcentaje del tiempo medio de utilización. Aunque puede parecer lógico intentar mantener este parámetro próximo al 100%, con un valor tan elevado otros aspectos importantes de medida del comportamiento del sistema pueden verse deteriorados, como por ejemplo el tiempo medio de espera.
b) Rendimiento: Es una medida del número de procesos completados por unidad de tiempo. Por ejemplo 10 procesos por segundo.
c) Tiempo de retorno o regreso: Es el intervalo de tiempo que transcurre desde que un proceso se crea o presenta hasta que completa por el sistema.
d) Tiempo de espera: Es el tiempo que el proceso espera hasta que se le concede el procesador. Puede resultar una medida más adecuada de la eficiencia del sistema, ya que se elimina de la media el tiempo que tarda en ejecutarse el mismo.  
e) Tiempo de respuesta a un evento: Se denomina así el intervalo de tiempo que transcurre desde que se señala un evento hasta que se ejecuta la primera instrucción de la rutina de servicio de dicho evento. El criterio de selección de un algoritmo se suele basar en la maximización o minimización de una función de los parámetros anteriores.


No hay comentarios:

Publicar un comentario