Está en la página 1de 16

dit

UPM

Planificacin dinmica
de tareas
Juan Antonio de la Puente
DIT/UPM

Copyright 2007, Juan Antonio de la Puente

Sistemas dinmicos

Juan Antonio de la Puente 2007

Hay sistemas de tiempo real en los que no se conocen de


antemano los tiempos de cmputo ni los esquemas de
activacin
las tareas se crean y se destruyen durante la ejecucin
hay que hacer el anlisis sobre la marcha

El modelo esttico que se utiliza para analizar los


sistemas planificados con prioridades fijas ya no es
adecuado
Hay que utilizar mtodos de planificacin con asignacin
dinmica de prioridades

8/11/07

Planificacin de tareas

Juan Antonio de la Puente 2007

Primero el ms urgente

El mtodo de primero el ms urgente (EDF) o


Earliest Deadline First da mayor prioridad en cada instante
a la tarea cuyo plazo absoluto (tiempo lmite) vence antes

La primera tarea que se ejecuta es la ms urgente


la que tiene que terminar antes

Los tiempos lmites se calculan durante la ejecucin


planificacin dinmica

8/11/07

Planificacin de tareas

Factor de utilizacin con EDF

Los plazos estn garantizados si y slo si

Juan Antonio de la Puente 2007

Ci
U = # "1
T
i=1 i

Sirve para tareas peridicas y espordicas


independientes
con Di = Ti

No hace falta calcular el tiempo de respuesta

8/11/07

Planificacin de tareas

Juan Antonio de la Puente 2007

Ejemplo
Tarea

30

10

30

0,333

40

10

40

0,250

50

12

50

0,240

Total

0,823

Con planificacin EDF los


plazos estn garantizados
Con prioridades fijas no se
garantizan

1
2
3
0

8/11/07

20

40

60

80

100

Planificacin de tareas

120

140

160

Juan Antonio de la Puente 2007

Ejemplo: prioridades fijas


Tarea

30

10

30

10

40

10

40

20

50

12

50

52

1
2

fallo!

3
0

8/11/07

20

40

60

80

100

Planificacin de tareas

120

140

160

Tareas con recursos compartidos

Juan Antonio de la Puente 2007

El protocolo de la pila de recursos (stack resource policy,


SRP) es una extensin del protocolo de herencia
inmediata del techo de prioridad (IPCP) (Baker, 1991)
Se asigna a cada tarea un nivel de desalojo, i, tanto
mayor cuanto menor es su plazo relativo Di
Cada recurso R tiene un techo de prioridad dinmico, CR

CR = max {0} " {# i : R puede bloquear $ i }

El techo del sistema se define como

" = max(CR )

Una tarea se ejecuta slo si su prioridad es la ms alta


entre las tareas ejecutables, y i >
!

8/11/07

Planificacin de tareas

Propiedades del protocolo SRP

Tiene las mismas propiedades que el protocolo del techo


de prioridad inmediato

Juan Antonio de la Puente 2007

Si una tarea se bloquea, lo hace al principio de su ciclo


Una tarea slo se puede bloquear una vez, como mximo, en
cada ciclo
No hay interbloqueos

8/11/07

Planificacin de tareas

Ejemplo

Juan Antonio de la Puente 2007

Tarea
"1
"2
"3

R1

R2

R3

3
2
1

1
2
3

0
1
1

1
3
2

1 :

A11; W(R3,1); W(R1,1);A12; S(R1); S(R3); A13

2:

A21; W(R3,3); W(R2,1);A22; S(R2); S(R3); A23; W(R1,2); A24; S(R1); A25

3:

A31; W(R2,1); W(R1,3);A32; S(R1); S(R2); A33; W(R3,2); A34; S(R3); A35

Recurso
R1
R2
R3

8/11/07

D
5
10
20

CR(3)
0
0

CR(2)
1
2

Planificacin de tareas

CR(1)
2
0
2

CR(0)
3
2
3

Ejemplo (cont.)

Juan Antonio de la Puente 2007

2
3

3 2 3
2

3
0

8/11/07

Planificacin de tareas

Condicin de garanta de los plazos

El bloqueo mximo de una tarea es

Bi = max C j,k " j < " i ,CR k # " i }


Juan Antonio de la Puente 2007

j,k

Si todas las tareas son peridicas, los plazos estn


garantizados si
$ i C ' B
"i,&& # K )) + i * 1
% j=1 Dk ( Di

!
8/11/07

Planificacin de tareas

10

Estabilidad

En caso de sobrecarga, comportamiento imprevisible:


No se sabe qu tareas fallarn.
No est claro cul debe ser el algoritmo a emplear.

Juan Antonio de la Puente 2007

Esto ocurre:
cuando se producen sobrecargas inesperadas.
con los mtodos de esfuerzo ptimo.

En el caso peor puede que no se cumpla ningn plazo.

8/11/07

Planificacin de tareas

11

Juan Antonio de la Puente 2007

Comparacin con FPS

EDF permite una mayor utilizacin del procesador

Pero es ms difcil de realizar


el ncleo de multiprogramacin es ms complejo

Tiene un comportamiento imprevisible en caso de


sobrecarga
con FPS fallan antes las tareas de menor prioridad

Requiere que todas las tareas tengan plazos asignados


FPS es ms flexible en esto

8/11/07

Planificacin de tareas

12

Primero el ms valioso

Cuando hay posibilidad de sobrecargas los mtodos


anteriores no son suficientes

Juan Antonio de la Puente 2007

mtodos de planificacin adaptativos

Se asigna un valor a cada tarea, y se decide sobre la


marcha qu tarea se despacha primero mediante un
mtodo de planificacin basado en el valor de las tareas

8/11/07

Planificacin de tareas

13

Asignacin de valor a las tareas

Juan Antonio de la Puente 2007

Se puede hacer de varias formas:


asignacin esttica: cada ejecucin de la misma tarea tiene el
mismo valor
asignacin dinmica: el valor de la ejecucin de una tarea se
calcula en el momento de su activacin
asignacin adaptativa: el valor cambia durante la ejecucin de la
tarea

Hay que encontrar un compromiso entre lo que se gana


con la planificacin dinmica y lo que se pierde en
trminos del tiempo necesario para tomar las decisiones

8/11/07

Planificacin de tareas

14

Juan Antonio de la Puente 2007

Resumen

Los mtodos de planificacin dinmicos permiten ejecutar


sistemas con configuracin variable

Se pueden analizar de forma sencilla

Tienen un coste de implementacin mayor que los


mtodos de prioridades fijas

8/11/07

Planificacin de tareas

15

También podría gustarte