Datos personales

Tecnologico de Estudios Superiores de Cuautitlan Izcalli Licenciatura en Informática Herrera Ramirez Salvador García Rosales Alicía Angelica Rocha Pulido Eduardo A. Hernandez Zuñiga Juan pablo

domingo, 22 de enero de 2012

3.1 PLANEACION TRABAJOS JOB SCHEDULING


Cuando hay más de un proceso que está en condiciones de ejecutarse en la CPU, se debe escoger alguno. El encargado de tomar esa decisión es el planificador o scheduler, y el algoritmo que usa se llama algoritmo de planificación. (Scheduler = planificación).   Posibles objetivos (algunos de ellos contradictorios) del algoritmo de planificación son

Justicia: Asegurarse que todos los procesos tengan su turno de CPU.
Eficiencia: Mantener la CPU ocupada todo el tiempo.
Tiempo de respuesta: Minimizar el tiempo de respuesta de los usuarios interactivos.
Rendimiento o productividad (throughput): Maximizar el número de trabajos terminados por hora.
Tiempo de espera: Minimizar el tiempo medio de espera (en la cola READY) de los procesos.

Una complicación adicional que hay que tener presente es que cada proceso es único e impredecible. Algunos son procesos limitados por I/O, es decir, pierden la mayor parte del tiempo esperando por I/O; otros son procesos limitados por CPU, es decir, requieren principalmente tiempo de CPU. En cualquier caso, todos los procesos alternan entre una fase de ejecución de CPU y otra de espera por I/O. Aunque la duración de las fases de CPU es impredecible y varía mucho entre un proceso y otro, tiende a tener una frecuencia como la de la siguiente figura:

Hay un gran número de fases de CPU cortos, y muy pocos largos. Esta información puede ser importante para seleccionar un algoritmo de planificación adecuado.

¿Cuándo hay que planificar?
Una decisión de planificación puede o debe tomarse cuando ocurre cualquiera de las siguientes transiciones entre estados de un proceso:

  * EJECUTANDO a BLOQUEADO.
  * EJECUTANDO a TERMINADO.
 * EJECUTANDO a LISTO.
  * BLOQUEADO a LISTO.

No hay comentarios:

Publicar un comentario