Está en la página 1de 8

UNIDAD 2

1. Qu entiende por planificacin del procesador?


El objetivo de la planificacin de procesos es asignar procesos a ser ejecutados
por el procesador a lo largo del tiempo, de forma que se cumplan los objetivos
del sistema tales como tiempo de respuesta, rendimiento y eficacia del
procesador.
La planificacin afecta el rendimiento del sistema porque determina que proceso
esperar y que proceso progresar.
2. Planificacin a largo, medio y corto plazo.
Planificacin a largo plazo:
Determina que programas se admiten en el sistema para su procesamiento. De
esta forma, se controla el grado de multiprogramacin. El planificador debe
decidir cuando el SO puede tomar uno o mas procesos adicionales y debe decidir
que trabajos se aceptan y son convertidos en procesos.
Planificacin a medio plazo:
Es parte de la funcin de intercambio basada en la necesidad de gestionar el
grado de multiprogramacin.
Planificacin a corto plazo:
Conocido como activador, se ejecuta mucha ms frecuentemente y toma las
decisiones de grano fino sobre qu proceso ejecutar. Se invoca siempre que
ocurre un evento que puede conllevar al bloqueo del proceso actual y que puede
proporcionar la oportunidad de expulsar al proceso actualmente en ejecucin en
favor de otro, por ejemplo, interrupciones de reloj, E/S, llamadas al sistema,
seales.
3. Objetivos de las polticas de planificacin del procesador.
- 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 nmero de
trabajos terminados por unidad de tiempo.
- Tiempo de espera. Minimizar el tiempo medio de espera (en la cola
READY) de los procesos.
4. Criterios para la eleccin de un algoritmo de planificacin.
Los criterios se pueden categorizar en dos dimensiones:

- Criterios orientados al usuario: relacionado con el comportamiento del


sistema tal y como lo percibe un usuario individual (tiempo de respuesta del
sistema).
- Criterios orientados al sistema: la atencin se centra en el uso eficiente y
efectivo del procesador por ejemplo la tasa con la que los procesos finalizan.
5. Medidas que se utilizan para el anlisis de la planificacin.
Las medidas utilizadas son:
- Tiempo de estancia (turnaround time): tiempo transcurrido desde que se
lanza un proceso hasta que finaliza. Incluye el tiempo de ejecucin
sumado al tiempo de espera por los recursos.
- Tiempo de respuesta (response time): Para un proceso interactivo, es el
tiempo que transcurre desde que se lanza una peticin hasta que se
comienza a recibir la respuesta.
- Tiempo usado en ejecucin hasta este momento
- Tiempo total de servicio requerido por el proceso generalmente estimado o
proporcionado por el usuario
6. Defina poltica apropiativa, y no apropiativa.
La poltica determina los instantes de tiempo en que se ejecuta la funcin de
seleccin.
En una poltica apropiativa, un proceso ejecutando en un determinado momento
puede ser interrumpido y pasado al estado de listo por el SO.
En una poltica no apropiativa una vez que el proceso esta en el estado
ejecutando, continua ejecutando hasta que termina o se bloquea esperando E/S.
7. Las tcnicas FCFS, RR, SRT. Ejercicios.
FCFS - First Come, First Served
La poltica ms simple de planificacin es la FCFS. A medida que un proceso
pasa al estado listo, este es agregado a la cola de listos. Cuando el proceso que
actualmente est ejecutando cesa su ejecucin entonces el proceso ms viejo en
la cola es seleccionado para correr. La implementacin de esta poltica es a travs
de colas FIFO (First-In, First-Out). Cuando el CPU est libre, ste es asignado al
proceso que est en la cabeza de la cola. FCFS es un algoritmo nonpreemptive
"no apropiativo", pues una vez que el CPU es asignado a un proceso, este lo
mantiene hasta que espontneamente lo suelta, ya sea porque el proceso finaliz
o por algn requerimiento de E/S. El tiempo de espera bajo esta poltica tiende a
ser alto. Adems, tiende a favorecer aquellos procesos que requieren ms tiempo
de CPU (CPU-bound). Consideren el caso donde tenemos una coleccin de
procesos. Uno de ellos utiliza ms CPU que los otros, y el resto de los procesos

requieren ms trabajo de E/S (I/O-bound). Cuando el proceso CPU-bound


ejecuta, los otros procesos esperan. Algunos de estos estarn en las colas de los
dispositivos de E/S pero eventualmente en algn instante pasarn a la cola de
procesos listos. En este momento, muchos de los dispositivos de E/S estarn
ociosos. Cuando el proceso en ejecucin deje el estado Running, los procesos I/O
pasarn a ejecutar y rpidamente volvern a bloquearse en espera de E/S. Si el
proceso CPU se encuentra bloqueado, entonces el procesador estar ocioso. Por
lo tanto, FCFS puede ocasionar un uso ineficiente tanto del procesador como de
los dispositivos de E/S.
Round Robin
Una manera rpida de reducir la penalizacin que los procesos cortos sufren con
FCFS es usar expropiacin basada en un reloj. Una interrupcin de reloj es
generada a intervalos peridicos. Cuando ocurre la interrupcin, el proceso en
ejecucin es colocado en la cola de procesos listos y el prximo trabajo es
seleccionado basado en el esquema FCFS. Cada proceso tiene asignado un
intervalo de tiempo de ejecucin, llamado quantum o cuanto. La principal
decisin de diseo que surge con Round Robin es el tamao del quantum. Si es
muy corto, entonces los procesos se movern a travs del sistema rpidamente.
Por otro lado, hay un cierto overhead o desperdicio de tiempo envuelto con el
manejo de la interrupcin de reloj y las funciones de planificacin y despacho.
Por lo tanto quantums muy pequeos deberan evitarse. Una alternativa es usar
un quantum de tiempo que sea un poco ms grande que el tiempo promedio
requerido para una interaccin tpica.
Round Robin es particularmente efectivo para sistemas generales de tiempo
compartido. Se implementa con una cola FIFO de procesos. Nuevos procesos son
agregados al final de la cola, y toma el proceso que se encuentra en la cabeza de
la cola. Actualiza el timer para que interrumpa despus del quantum de tiempo.
El desempeo de este algoritmo depender del tamao del quantum. Si el
quantum es infinito entonces degenera en FCFS. Si el quantum es muy pequeo
entonces Round Robin es llamado comparticin de CPU y en teora pareciera que
cada proceso tiene su propio procesador corriendo a 1/n la velocidad del
procesador real.
Bajo este esquema es importante considerar el efecto del cambio de contexto.
SPN Shortest process next
El algoritmo primero el trabajo ms corto (shortest job - first). Establece para
la planificacin una relacin entre proceso y rfaga de la CPU. Es decir, al
liberarse la cpu ingresar el proceso con la menor rfaga de tiempo, el ms

pequeo primero, y si existiera ms de un proceso con igual valor, pues se


aplicara dentro de este el algoritmo anterior (FCFS).
Este algoritmo presenta una gran ventaja, pues el tiempo de espera ser mucho
menor, pues mientras los procesos de tiempo inferior terminan y ocupan tiempo
en operaciones de E/S, el cpu se ocupa de resolver el proceso con mayor tiempo,
un algoritmo muy ptimo.
El problema est en conocer la duracin del prximo requerimiento de CPU para
cada proceso. pero podemos predecirlos usando la informacin de los ciclos
anteriores ejecutados.
SRT Shortest remaining time
La poltica de menor tiempo restante es una versin expulsiva de SPN. En este
caso el planificador siempre escoge el proceso que tiene el menor tiempo de
proceso restante esperado. Cuando un nuevo proceso se une a la cola de listo,
podra tener un tiempo restante menor que el proceso actualmente en ejecucin.
Por tanto, el planificador podra expulsar al proceso actual cuando llega un nuevo
proceso.
8. Tcnica de prioridad, y de colas mltiples. Caractersticas.
En muchos sistemas a cada proceso se le asigna una prioridad y el planificador
siempre elegir un proceso de prioridad mayor sobre un proceso de menor
prioridad.
Las prioridades pueden ser estticas o dinmicas. Las prioridades estticas
ocurren al asignar una prioridad al proceso para toda su vida. Las prioridades
dinmicas, la prioridad de un proceso cambia durante su vida.
El sistema proporciona un conjunto de colas en orden descendente de prioridad:
CL0, CL1, CL2. CLn. Cuando se va a realizar una seleccin en la
planificacin, el planificador comenzara en la cola de listos con la prioridad ms
alta (CL0). Si hay un proceso o ms en la cola, se selecciona un proceso
utilizando alguna poltica de planificacin. Si CL0 esta vaca, entonces se
examina CL1 y as sucesivamente.
9. Tcnica de colas mltiples con FB. Caractersticas. Posibles correcciones en su
implementacin.
Esta poltica trata de automatizar lo mximo posible las asignaciones
favoreciendo los procesos cortos por sobre los procesos limitados por E/S con
muy poca sobre carga.
Divide los procesos en varias colas de procesos preparados, siendo la primera
cola la de mayor prioridad.

La tcnica de colas mltiples con retroalimentacin es una poltica que permite


establece una preferencia para los trabajos ms cortos penalizando a los trabajos
que han estado ejecutando ms tiempo. La planificacin se realiza con expulsin
y se utilizan mecanismos de prioridad dinmica. Cuando un proceso entra en el
sistema se sita en CL0. Despus de su primera expulsin cuando vuelve al
estado listo se sita en CL1. Cada vez que es expulsado se sita en la siguiente
cola de menor prioridad. Un proceso corto se completara de forma rpida. Un
proceso ms largo ira degradndose gradualmente. De esta forma se favorece a
los procesos nuevos ms cortos sobre los ms viejos y largos. Dentro de cada
cola excepto en la cola de menor prioridad se utiliza un mecanismo FCFS. Una
vez en la cola de menor prioridad, un proceso no puede descender ms, por lo
que es devuelto a esta cola repetidas veces hasta que se completa. De esta forma,
esta cola se trata con una poltica round robin.
Una variacin de la poltica es variar los tiempos de expulsin de cada cola, un
proceso de la cola CL0 tiene una rodaja de unidad de tiempo, un proceso de la
cola CL1 tiene dos unidades de tiempo y as sucesivamente. Esto permite
disminuir la inanicin que podran tener los trabajos con mayor tiempo si estn
entrando nuevos trabajos frecuentemente.
Pero inclusive con esta variacin es posible sufrir inanicin. Una posible solucin
es promover a los procesos a colas de mayor prioridad despus de que pasen un
determinado tiempo esperando servicio en su cola actual.
10. Multiprocesador dbilmente acoplado, y fuertemente acoplado.
Los sistemas multiprocesadores se pueden clasificar en:
- Multiprocesador dbilmente acoplado (cluster): consiste en una coleccin
de sistemas relativamente autnomos, cada procesador tiene su propia
memoria principal y canales de E/S.
- Multiprocesador fuertemente acoplado: consiste en un conjunto de
procesadores que comparten la memoria principal y estn bajo el control
integrado de un nico SO.
11. Qu entiende por granularidad?
La granularidad es el grado de sincronizacin existente entre los procesos en un
sistema multiprocesador.
Paralelismo independiente: no hay sincronizacin explicita entre procesos. Cada
uno representa un trabajo o aplicacin independiente y separada. Un uso tpico de
este tipo de paralelismo se da en los sistemas de tiempo compartido.
Paralelismo de grano grueso y muy grueso se trata como un conjunto de procesos
concurrentes ejecutando en un monoprocesador multiprogramado.

Paralelismo de grano medio: Es la implementacin de una coleccin de hilos


dentro de un nico procesador.
Paralelismo de grano fino representa un uso ms complejo del paralelismo del
que se encuentra utilizando hilos.

12. Planificacin de los procesos.


En los sistemas ms tradicionales, los procesos no se vinculan a los procesadores,
en cambio, hay una nica cola para todos los procesadores o si se utiliza algn
tipo de esquema basado en prioridades hay mltiples colas basadas en prioridad.
En general, la poltica de planificacin es mucho menos importante a medida que
crece la cantidad de procesadores, con lo cual un FCFS o un FCFS con un
esquema de prioridades suele ser suficiente.
13. Planificacin de los hilos.|
Planificar procesos a travs de hilos da un aumento significativo del rendimiento.
Las tcnicas que se pueden aplicar son:
- Comparticin de carga: los procesos no se asignan a un procesador en
particular. Se mantiene una cola global de hilos listos y cada procesador
cuando esta ocioso selecciona un hilo de la cola.
- Planificacin en pandilla: un conjunto de hilos relacionados que se
planifica para ejecutar sobre un conjunto de procesadores al mismo tiempo
en una relacin uno a uno.
- Asignacin de procesador dedicado: lo opuesto al enfoque de
comparticin de carga y proporciona una planificacin implcita definida
por la asignacin de hilos a procesadores. Cada proceso ocupa un nmero
de procesadores igual al nmero de hilos en el programa, durante toda la

ejecucin del programa. Cuando el programa termina, los procesadores


regresan al parque general para la posible asignacin a otro programa.
Planificacin dinmica: el nmero de hilos de un proceso puede cambiar
durante el curso de su ejecucin.

14. Asignacin dedicada y planificacin dinmica.


La asignacin de los procesos a los procesadores pueden ser estticas o
dinmicas.
Una asignacin esttica ocurre cuando se asigna los procesos a procesadores y
luego ejecutan siempre en el mismo procesador.
Una asignacin dinmica ocurre al existir una cola de procesos comn desde la
que se van asignando a los procesadores libres.
15. Estructuras de los SO para mltiples procesadores (Maestro/esclavos,
simtrica).
En una arquitectura maestro-esclavo, las funciones claves del SO se ejecutan en
un determinado procesador (maestro) siendo utilizados los restantes procesadores
(esclavos) para manejar programas de usuario. El maestro es el responsable de la
planificacin de los trabajos.
En una arquitectura simtrica, las funciones del SO se ejecutan en cualquier
procesador y cada uno se auto planifica.
16. Ejercicios de aplicacin.
17. Presentacin de casos.
Linux:
Se mantiene una cola separada por cada nivel de prioridad. Un procesador
disponible toma un proceso de la cola no vaca de mayor prioridad.
Las tres clases de planificacin de Linux son:
SCHED_FIFO: hilos de tiempo real planificados FIFO
SCHED_RR: hilos de tiempo real planificados con turno circular
SCHED_OTHER: otros hilos de tiempo real
Dentro de cada clase pueden utilizarse multiples prioridades siendo las de tiempo
real mayores a las prioridades de la clase sched_other.
Windows: En un sistema con procesadores, los n-1 hilos de mayor prioridad
estn activos ejecutando en los n-1 procesadores. El resto de los hilos le son
asignados al procesador restante.

Windows se organiza en dos clases: tiempo real y variable. Cada una consta de
16 niveles de prioridad. Windows hace uso de un planificador expulsivo basado
en prioridades. La prioridad se maneja de manera diferente segn la clase.
La prioridad en la clase de tiempo real todos los hilos tienen un prioridad fija que
nunca cambia.
En la clase prioridad variable, la prioridad del hilo comienza con algn valor
asignado inicialmente y luego puede cambiar durante la vida del hilo. Si un hilo
es interrumpido porque ha usado completamente su cuanto de tiempo actual, se
baja su prioridad. Si un hilo se interrumpe para esperar por un evento de E/S, se
sube su prioridad.

También podría gustarte