planificación

Post on 31-Dec-2015

22 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Planificación. Visión General. El planificador del SO se construye a partir de un mecanismo para la conmutación de contexto y una política que determina el orden en que se van a recibir su servicio los procesos preparados. Políticas generales. Algoritmos apropiativos - PowerPoint PPT Presentation

TRANSCRIPT

Planificación

Visión General

El planificador del SO se construye a partir de un mecanismo para la conmutación de contexto y una política que determina el orden en que se van a recibir su servicio los procesos preparados.

Políticas generales

• Algoritmos apropiativos Usan la CPU durante un intervalo de tiempo hasta que el

planificador los interrumpe para asignar la CPU a otro proceso preparado de mayor prioridad

• Algoritmos no apropiativos Permiten que un proceso se ejecute hasta su finalización

una vez que obtiene el uso del procesador

Actividad• En equipos de dos personas investiga lo que es

la planificación de hilos

Lista de preparados

Trabajo

Trabajo

Planificador CPU

Gestor de Recursos

Recursos

Trabajo

Trabajo

Trabajo

Apropiación o Cesión Voluntaria

Asignado

Preparado

Nuevohilo

Petición

Bloqueado

Ejecutándose

Hecho

Características de la planificación

El CPU puede compararse con un cajero en un banco, y los hilos pueden verse como los clientes que necesitan interactuar con el cajero para realizar sus negocios (transacciones Complejas)

Los administradores de los bancos se interesan por la política de seguridad que les permita determinar cuánto puede crecer una cola de espera hasta que tengan que añadir otro cajero, si los cajeros deberían especializarse en tareas cómo realizar sólo los depósitos o las extracciones ( y no otros servicios)

Actividad

Discuta con sus compañeros las siguientes cuestiones:+ ¿Cómo debe diseñarse el planificador para que asigne

el CPU a procesos que compiten entre sí para lograr?+ ¿Debería asignarse el CPU sobre la base de la

prioridad externa?+ ¿Debería intentar ser lo más justo posible?+ ¿Debería intentar priorizar los hilos con un tiempo de

ejecución más corto (o más largo) sobre el resto?

Modelos para planificación

Sea P = {pi | 0 <= i < n}

Un conjunto de procesos modernos. Si una implementación, cada proceso, pi, se representa por un descriptor que especifica una lista de los hilos {pi,j}, que se ejecutan en el proceso, cada uno de los cuales tiene un campo de estado, S(pi,j). El estado podría ser una ejecución, preparado, o bloqueado, por lo que decimos que S(pi,j) e {ejecución, preparado, bloqueado)

Métricas empleadas para comparar las estrategias de planificación

• Tiempo de servicio t(pi,j): la cantidad de tiempo que precisa estar un hilo en el estado de ejecución antes de terminar.

• Tiempo de espera W(pi,j): el tiempo que gasta el hilo esperando en el estado preparado antes de su primera transición al estado ejecución.

• Tiempo de vuelta para el hilo pi,j , Tv(pi,j): El tiempo que media entre la primera aparición del estado preparado y el momento en que el hilo sale del estado ejecución por última vez.

Estrategias no apropiativas

Permiten que cualquier proceso/hilo se ejecute hasta su finalización.

Primero en llegar primero en ser servido.Asigna prioridades a los hilos en el orden en que

la solicitan al procesador

Primero en llegar primero en ser servido.i t(pi)

0 350

1 125

2 475

3 250

4 75

En el algoritmo FCFS, los procesos se planifican en el orden que llegan. En este caso, el planificador asignara el CPU a p0, después a p1,p2,p3 y finalmente p4.

p0 p1 p4p2 p3

0 350 475 950 1200 1275

Determinación del tiempo de vuelta de cada hilo, en el diagrama de Gantt.

Tv(p0) = t(p0) = 350Tv(p1) = t(p1) + Tv(p0)) = 125 + 350 = 475Tv(p2) = t(p2) + Tv(p1)) = 475 + 475 = 950Tv(p3) = t(p3) + Tv(p2)) = 250 + 950 = 1200Tv(p4) = t(p4) + Tv(p3)) = 75 + 1200 = 1275

Por lo cual el tiempo medio de vuelta es:

Tv = ( 350 + 475 + 950 + 1200 + 1275) / 5 = 850

Primero en llegar primero en ser servido.i t(pi)

0 350

1 125

2 475

3 250

4 75

Mediante el diagrama de Gantt podemos determinar los tiempos de espera:

p0 p1 p4p2 p3

0 350 475 950 1200 1275

W(p0) = 0W(p1) = Tv(p0)) = 350W(p2) = Tv(p1)) = 475W(p3) = Tv(p2)) = 950W(p4) = Tv(p3)) = 1200

Por lo cual el tiempo medio de vuelta es:

Tv = ( 0 + 350 + 475 + 950 + 1200)/5 = 2975 / 5 = 595

Actividad

i t(pi)0 801 202 103 204 50

Suponga que se tienen que ejecutar los siguientes trabajos con un procesador, con los trabajos con tiempo de llegada de la lista ordenada que sigue a continuación:

a. Suponga un sistema con planificación FCFS. Cree un diagrama de Gantt que muestre la ejecución de estos procesos.

b. ¿Cuál es tiempo medio de vuelta para el proceso p4?

c. ¿Cuál es el tiempo medio de espera para los procesos?

top related