Site hosted by Angelfire.com: Build your free website today!
     
 



Administracion de Procesos y El Procesador

2.5 Niveles, Objetivos y Criterios de Planificacion


En epocas pasadas de los sistemas de procesamiento por lotes, con una entrada en forma de imagenes de tarjetas en una cinta magnetica, el algoritmo de planificacion era sencillo: solo habia que ejecutar el siguiente trabajo en la cinta.

En los sistemas de multiusuario de tiempo compartido, que se combinaban con un fondo de trabajos procesados en lote, el algoritmo era mas complejo. En forma invariable, existian varios usuarios en espera de servicio y podian existir tambien otros trabajos para ser procesados en lote. Incluso en los sistemas puros de tiempo compartido existen con frecuencia los trabajos colaterales, como el sistema de correo electronico, que a menudo se ejecuta todo el tiempo para enviar o recibir correo o noticias.

Cuando mas de un proceso es ejecutable, el Sistema Operativo debe decidir cual de ellos debera ejecutarse primero. Hay que tener una planificacion de los procesos que quieren ejecutarse en el sistema.La planificacion es una funcion primordial del Sistema Operativo. La mayoria de los recursos, si no es que todos, se planifican antes de que se utilicen. La asignacion de procesadores fisicos a los procesos hace posible que estos realicen su trabajo, y tal asignacion es un problema complejo manejado por el Sistema Operativo.

Concepto de Planificacion
La planificacion hace referencia a un conjunto de politicas y mecanismos incorporados al sistema operativo que gobiernan el orden en que se ejecutan los trabajos que deben ser cumplimentados por el sistema informatico.

Objetivo de la Planificacion
El objetivo principal de la planificacion es optimizar el rendimiento del sistema y proporcionar un buen servicio a todos los procesos que se encuentren en el. En general, la planificacion trata de cubrir los siguientes objetivos:

  • Justicia. La planificacion debe ser lo mas justa posible con todos los procesos, sin favorecer a unos y perjudicar a otros.
  • Maxima capacidad de ejecucion. Debe dar un servicio eficiente para que todos los trabajos se realicen lo mas rapidamente posible. Esto se puede lograr disminuyendo el numero de cambios de proceso.
  • Maximo numero de usuarios interactivos. En los sistemas de tiempo compartido se tratara de que puedan estar trabajando el mayor numero de usuarios al mismo tiempo.
  • Predecibilidad. La planificacion debe realizarse de tal forma que en todo momento pueda saberse como sera su ejecucion.
  • Minimizacion de la sobrecarga. La computadora debe tener poca sobrecarga ya que esta afecta directamente al rendimiento final del sistema: a menor sobrecarga mayor velocidad de proceso.
  • Equilibrio en el uso de recursos. Para obtener un mayor rendimiento en el uso de los recursos y que estos esten ocupados equitativamente el mayor tiempo posible.
  • Seguridad de las prioridades. Si un proceso tiene mayor prioridad que otro, este debe ejecutarse mas rapidamente.
  • Evitar la postergacion indefinida. Esto se logra aumentando la prioridad de un proceso mientras espere por un recurso. La prioridad llegara a ser tan alta que al proceso le sera asignado el recurso que pidio.

Criterios de planificacion
Para realizar los objetivos de la planificacion, un mecanismo de planificacion debe considerar lo siguiente:

  • La limitacion de un proceso a las operaciones de Entrada / Salida: cuando un proceso consigue la cpu, ?la utiliza solo brevemente antes de generar una peticion de Entrada / Salida?
  • La limitacion de un proceso a la cpu: cuando un proceso obtiene la cpu, ?tiende a usarla hasta que expira su tiempo?
  • Si un proceso es por lote (batch) o interactivo: los usuarios interactivos deben recibir inmediato servicio para garantizar buenos tiempos de respuesta.
  • ?Que urgencia tiene una respuesta rapida?: por ejemplo, un proceso de tiempo real de un sistema de control que supervise una refineria de combustible requiere una respuesta rapida, mas rapida que la respuesta requerida por un proceso en lotes (batch) que debera entregarse al dia siguiente.
  • La prioridad de un proceso: a mayor prioridad mejor tratamiento.
  • Frecuentemente un proceso genera fallos (carencias) de pagina:
    • Probablemente los procesos que generan pocos fallos de pagina hayan acumulado sus “conjuntos de trabajo” en el almacenamiento principal.
    • Los procesos que experimentan gran cantidad de fallos de pagina aun no han establecido sus conjuntos de trabajo.
    • Un criterio indica favorecer a los procesos que han establecido sus conjuntos de trabajo.
    • Otro criterio indica favorecer a los procesos con una tasa alta de fallos de pagina ya que rapidamente generaran una peticion de Entrada / Salida.
  • Frecuentemente un proceso ha sido apropiado por otro de mas alta prioridad, lo cual significa lo siguiente:
    • A menudo los procesos apropiados deben recibir un tratamiento menos favorable.
    • Cada vez que el Sistema Operativo asume la sobrecarga para hacer ejecutar este proceso, el corto tiempo de ejecucion antes de la apropiacion no justifica la sobrecarga de hacer ejecutar al proceso en primer lugar.
  • Cuanto tiempo de ejecucion real ha recibido el proceso?: un criterio considera que debe ser favorecido un proceso que ha recibido muy poco tiempo de cpu.
Cuanto tiempo adicional va a necesitar el proceso para terminar?: los tiempos promedio de espera pueden reducirse priorizando los procesos que requieren de un tiempo de ejecucion minimo para su terminacion, pero pocas veces es posible conocer la cantidad de tiempo adicional que cada proceso necesita para terminar.
2.1 Conceptos de Proceso 2.2 Estado y Trans. del proceoso 2.3 Procesos Ligeros 2.4 Concurrencia y Secuencialidad 2.5 Niveles,Objetivos y Criterios de Planificiacion 2.6 Tecnicas de Administracion del Planificador -Evaluacion -Practica