planificación

12
Planificación

Upload: edward-sargent

Post on 31-Dec-2015

22 views

Category:

Documents


0 download

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

Page 1: Planificación

Planificación

Page 2: 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.

Page 3: Planificación

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

Page 4: Planificación

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

Page 5: Planificación

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)

Page 6: Planificación

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?

Page 7: Planificación

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)

Page 8: Planificación

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.

Page 9: Planificación

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

Page 10: Planificación

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

Page 11: Planificación

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

Page 12: Planificación

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?