martes, 18 de octubre de 2011

Planificacion de Procesos


Cuando más de un proceso es ejecutable desde el punto de vista lógico, el Sistema Operativo debe decidir cuál de ellos debe ejecutarse en primer término.
El Planificador es la porción del Sistema Operativo que decide y el Algoritmo de Planificación es el utilizado.
Los principales “criterios” respecto de un buen algoritmo de planificación [23, Tanenbaum] son la equidad, la eficacia, el tiempo de respuesta, el tiempo de regreso y el rendimiento (ver Tabla 2.2 [23, Tanenbaum]).




Criterio Descripció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
Tabla 2.2: Criterios de un buen algoritmo de planificación.
 
Algunas de estas metas son contradictorias, por ejemplo, minimizar el tiempo de respuesta para los usuarios interactivos significaría no ejecutar las tareas batch.

Cada proceso es único e impredecible, es decir que pueden requerir intensivamente operaciones de Entrada / Salida o intensivamente cpu; el planificador del Sistema Operativo no tiene la certeza de cuánto tiempo transcurrirá hasta que un proceso se bloquee, ya sea por una operación de Entrada / Salida o por otra razón .
Para evitar que un proceso se apropie de la cpu un tiempo excesivo, los equipos poseen un dispositivo que provoca una interrupción en forma periódica, por ejemplo 60 hz, o sea sesenta veces por segundo.
En cada interrupción del reloj el Sistema Operativo decide si el proceso que se está ejecutando continúa o si el proceso agotó su tiempo de cpu y debe suspenderse y ceder la cpu a otro proceso.
Los principales conceptos relacionados con Planificación del Procesador son los siguiente:

  • Planificación apropiativa: es la estrategia de permitir que procesos ejecutables (desde el punto de vista lógico) sean suspendidos temporalmente.
  • Planificación no apropiativa: es la estrategia de permitir la ejecución de un proceso hasta terminar.
  • Planificación del procesador: determinar cuándo deben asignarse los procesadores y a qué procesos, lo cual es responsabilidad del Sistema Operativo.

No hay comentarios:

Publicar un comentario