Академический Документы
Профессиональный Документы
Культура Документы
n+1
= t
n
+ (1 )
n
(1)
t
n
contiene la informacin ms reciente y
n
el historial pasado.
Si = 0:
n+1
=
n
el historial reciente no tiene efecto.
Si = 1:
n+1
= t
n
slo la rfaga de CPU ms reciente importa
(historial obsoleto).
RR: Round-Robin o Planicacin por Turnos
Curso 2009/2010
Algoritmo con apropiacin diseado especialmente para sistemas de tiempo
compartido.
Los procesos nuevos se aaden al nal de la cola (FIFO) de procesos
preparados.
El planicador toma el primer proceso de la cola y se asigna la CPU durante
un quantum de tiempo (tpicamente entre 10 y 100 ms).
Si la rfaga del proceso es menor que el quantum el proceso libera
voluntariamente la CPU.
Si la rfaga es mayor que el quantum interrupcin al SO, cambio de
contexto y el proceso se coloca al nal de la cola de procesos preparados.
Si hay n procesos en la cola de procesos preparados y el quantum es q,
cada proceso obtiene
1
n
del tiempo de CPU en partes de como mximo q
unidades de tiempo. Cada proceso no tiene que esperar ms de (n 1) q
unidades de tiempo hasta obtener su siguiente turno.
RR: Dimensionando el Quantum
Curso 2009/2010
Si quantum muy largo RR degenera en FCFS.
Si quantum muy corto comparticin del procesador (impresin de que
cada proceso tiene su propio procesador ejecutndose
1
n
de la velocidad del
procesador real).
El quantum conviene que sea grande con respecto al tiempo requerido por
un cambio de contexto (si el quantum es corto, los procesos no acaban de
ejecutarse en la CPU y se ralentiza la ejecucin debido a cambios de
contexto).
Si quantum excesivamente corto vapuleo: el rendimiento de CPU se
reduce mucho porque slo se hacen cambios de contexto (trabajo no til).
El tiempo medio de ejecucin mejora si la mayor parte de los procesos
terminan su siguiente rfaga de CPU en un quantum.
Regla prctica: 80% de las rfagas de CPU deben ser ms cortas que el
quantum de tiempo.
Planicacin por prioridades
Curso 2009/2010
A cada proceso se le asigna una prioridad y el planicador asigna la CPU al
proceso ms prioritario.
Ejemplos: FCFS (orden de llegada) y SJF (duracin siguiente rfaga de
CPU).
Tpicamente se expresa mediante rango de nmeros jos.
No hay consenso sobre si el mayor nmero corresponde a la mayor o a la
menor prioridad.
Las prioridades pueden denirse interna o externamente:
Prioridades internas = f(requisitos de memoria, nmero de archivos
abiertos, relacin entre rfaga promedio E/S y rfaga promedio CPU, etc)
Prioridades externas = f(criterios externos al SO)
Puede ser sin apropiacin o con apropiacin (un proceso expulsa de la CPU
a otro si es ms prioritario).
Problema: bloqueo indenido o inanicin los procesos menos prioritarios
pueden esperar indenidamente.
Solucin: envejecimiento aumentar progresivamente las prioridades de
los procesos que llevan ms tiempo esperando por CPU.
Planicacin mediante colas multinivel
Curso 2009/2010
Consiste en separar los procesos segn su naturaleza/tipo (por ejemplo,
interactivos vs. por lotes).
La cola de procesos preparados se divide en varias colas (niveles) con
algoritmos de planicacin diferentes.
Requiere un algoritmo de planicacin entre colas:
De qu cola se extraen procesos en primer lugar?
Tpicamente con apropiacin y prioridad ja.
Otra posibilidad: repartir el tiempo de CPU entre las colas (80% vs 20%).
Procesos del sistema
Procesos interactivos
Procesos por lotes
prioridad ms alta
prioridad ms baja
Planicacin mediante Colas Multinivel Realimentadas
Curso 2009/2010
Permite mover los procesos de una cola a otra.
Consiste en separar los procesos segn las caractersticas de sus rfagas
de CPU (si uso de CPU es excesivo cola menos prioritaria).
Mecanismo de envejecimiento implcito para evitar el bloqueo indenido.
Parmetros a denir:
Nmero de colas.
Algoritmo de planicacin de cada cola.
Mecanismo para determinar cundo mover un proceso a una cola ms
prioritaria.
Mecanismo para determinar cundo mover un proceso a una cola menos
prioritaria.
Mecanismo para determinar en qu cola se colocar un proceso mientras
espera por la CPU.
Es el algoritmo de planicacin de CPU ms exible ms complejo.
Ejemplo de Planicacin mediante Colas Multinivel Realimentadas
Curso 2009/2010
Quantum = 8
Quantum = 16
FCFS
cola 0
cola 1
cola 2
Se ejecutan los procesos de cola 2 slo si cola 0 y 1 estn vacas.
Procesos de cola 0 desalojan a procesos de cola 1 y 2.
Prioridad a procesos cortos (rfaga 8ms) y semicortos (rfaga 24ms).
Los procesos largos (rfaga > 24ms) usan ciclos de CPU no usados por los
cortos y semicortos.
Evaluacin de los Algoritmos de Planicacin
Curso 2009/2010
Eleccin del criterio:
Conocer los tipos de trabajos a realizar.
Conocer los parmetros modicables.
Denir el objetivo del sistema.
Evaluacin formal:
Evaluacin analtica:
Prestaciones del algoritmo = f(carga, parmetros del sistema).
Difcil de realizar.
Modelacin determinista:
Resultados exactos para una conguracin de trabajos dada.
Difcil de extrapolar.
Modelos de colas:
Permite evaluar las longitudes de las colas.
Evaluacin por simulacin.