Title: CONCURRENCIA' PLANIFICACIN DE PROCESOS EN SISTEMAS EN TIEMPO REAL
1CONCURRENCIA. PLANIFICACIÓN DE PROCESOS EN
SISTEMAS EN TIEMPO REAL
- Juan Antonio Fernández Madrigal, 2004
- Departamento de Ingeniería de Sistemas y
Automática - Universidad de Málaga
2Planificación de Procesos en Sistemas en Tiempo
Real
Introducción
Hardware para Sistemas en T.R.
Tema II. Microprocesadores
Tema III. Interfaces
Tema IV. Interrupciones
Tema V. Redes
Software para Sistemas en T.R.
Tema VI. Planificación
Tema VII. Sistemas Operativos
Tema VIII. Programación
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
3Planificación de Procesos en Sistemas en Tiempo
Real
- Teoría de la Planificación de Procesos de Tiempo
Real - Modelado de Procesos y Conceptos Generales
- Taxonomía de los Algoritmos de Planificación
- Planificadores por Prioridades
- Planificación con Prioridades Estáticas (RMS)
- Planificación con Prioridades Dinámicas (EDF)
- Conclusiones
- Bibliografía Básica y Bibliografía Original
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
4Teoría de la Planificación de Procesos de Tiempo
Real(Real-Time Scheduling Theory)
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
Propósito Satisfacer las restricciones
temporales de los procesos concurrentes de un
sistema informático en tiempo real.
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
5Modelado de Procesos y Conceptos Generales
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
Periódicos o Síncronos
Esporádicos o Asíncronos
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
6Modelado de Procesos y Conceptos Generales
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
procesos periódicos
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
7Modelado de Procesos y Conceptos Generales
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
procesos esporádicos
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
8Modelado de Procesos y Conceptos Generales
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
reducción de esporádicos a periódicos
pa
ra0
ca
da
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
9Modelado de Procesos y Conceptos Generales
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
sincronización entre procesos
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
10Modelado de Procesos y Conceptos Generales
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
conceptos generales
- Planificación asignación de tiempo de procesador
a los procesos - Factor de Uso del Procesador (U) tiempo durante
el que el procesador está asignado a algún
proceso, si se aplica cierta planificación - Planificador algoritmo que genera una
planificación - Planificación Admisible planificación que
respeta las restricciones temporales de los
procesos - Planificación Estable planificación admisible
que respeta las restricciones temporales de los
procesos más importantes (críticos) bajo
sobrecarga transitoria - Optimalidad de Planificadores un planificador es
óptimo si, existiendo una planificación
admisible, encuentra una planificación admisible - Test de Planificabilidad algoritmo que permite
saber si existe una planificación admisible para
un conjunto de procesos
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
11Modelado de Procesos y Conceptos Generales
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
conceptos relativos a procesos concurrentes
- Hiperperíodo mínimo común múltiplo de los
períodos de todos los procesos del sistema. - Planificación Expulsiva (preemptive)
planificación en la que un proceso puede quitarle
a otro el recurso del procesador en cualquier
momento - Planificación No Expulsiva (non-preemptive)
planificación en la que un proceso debe terminar
su uso del procesador antes de cedérselo a otro
(suele ser NP-hard) - Relación de Precedencia relación entre dos
procesos o subprocesos que implica que uno debe
terminar su ejecución antes de que el otro
comience
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
12Taxonomía de los Algoritmos de Planificación
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
Planificación de Procesos de Tiempo Real
Monoprocesador
Multiprocesador / Distribuida
Estática (off-line)
Dinámica (on-line)
EDF / MLF
Computación imprecisa
MUF
Robado de Ciclos / Sobrecarga
RMS
(Liu y Layland, 1973)
(Liu y Layland, 1973)
Con esporádicos
Con inversión de prioridades
Compartiendo recursos
Con sobrecarga
Con precedencias
(Chetto et al., 1990)
(Sha et al., 1986)
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
13Planificadores por Prioridades
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
- Prácticamente la totalidad de los planificadores
actuales. - Se le asigna una prioridad a cada proceso
(off-line u on-line). - En cada momento se ejecuta el proceso disponible
de mayor prioridad. - En los algoritmos que siguen, se supone
planificación expulsiva. - La planificación por prioridad reduce el número
de planificaciones admisibles que pueden
encontrarse, pero aún así la optimalidad está
garantizada en ciertos casos. - No es criterio válido para obtener una
planificación admisible el otorgar mayor
prioridad a los procesos más importantes.
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
14Planificadores por Prioridades
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
- Ejemplo de asignación de prioridades por
importancia
c18 r10 d124 p124 c220 r20 d244
p244
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
15Planificación con Prioridades Estáticas (Rate
Monotonic Scheduling RMS)
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
- Requisitos procesos independientes y periódicos,
ri0, planificación expulsiva, tiempos de
respuesta (deadlines) iguales a los períodos
(dipi). - Algoritmo de asignación de prioridades tendrá
más prioridad el proceso que tenga un período
menor (asignación de prioridad monotónica en
frecuencia). - Optimalidad el algoritmo es óptimo.
- Test de planificabilidad el factor de uso del
procesador debe ser menor o igual que el factor
de uso garantizado del procesador.
lt
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
16Planificación con Prioridades Estáticas (Rate
Monotonic Scheduling RMS)
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
c18 r10 d124 p124 c220 r20 d244
p244
U 8/2420/44 0.79 lt UG2 2(21/2-1) 0.83
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
17Planificación con Prioridades Estáticas (Rate
Monotonic Scheduling RMS)
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
Planificación RMS estable (con sobrecarga)
- Objetivo bajo tiempos de cómputo medios, obtener
tiempo real duro (hard) para todos los procesos.
Bajo tiempos de cómputo máximos (sobrecarga),
obtener tiempo real duro para procesos críticos y
blando (soft) para procesos no críticos.
necesario
- Ucríticos lt UGncríticos
- Umtodos lt UGntodos
- máx(pi)críticos lt mín(pj)no-críticos
necesario
Se puede forzar
- Paso previo considerar críticos a procesos no
críticos que violen III.
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
18Planificación con Prioridades Estáticas (Rate
Monotonic Scheduling RMS)
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
Forzado de la condición III de estabilidad
- Algoritmo de Transformación de Períodos
modificar los períodos de algunos procesos sin
modificar los procesos, hasta cumplir la
condición III de estabilidad. - Dos acciones posibles para modificar el sistema
se repiten hasta que se cumpla la condición.
- Acción A ampliar el período de un proceso
no-crítico. Se desglosa el proceso Pi en k
procesos, cada uno con período kpi y con su
primera activación desplazada.
- Acción B reducir el período de un proceso
crítico. Se ejecuta el proceso Pi en k fases
consecutivas, cada una con período pi /k.
- Bucle mientras haya algún proceso conflictivo
(crítico con período mayor que un no-crítico, o
viceversa), aplicarle la acción correspondiente.
Si se violan las condiciones I ó II de
estabilidad, deshacer el cambio.
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
19Planificación con Prioridades Estáticas (Rate
Monotonic Scheduling RMS)
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
c110 r10 cm14 d117 p117 c25 r20
cm22 d29 p29 c315 r30 cm35 d328
p328
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
20Planificación con Prioridades Estáticas (Rate
Monotonic Scheduling RMS)
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
c110 r10 cm14 d117 p117 c25 r20
cm22 d29 p29 c315 r30 cm35 d328
p328
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
21Planificación con Prioridades Estáticas (Rate
Monotonic Scheduling RMS)
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
c110 r10 cm14 d117 p117 c25 r20
cm22 d29 p29 c315 r30 cm35 d328
p328
No se puede incluir P2 como crítico no se cumple
la condición I (U1.1)
- Ucríticos lt UGncríticos 0.59 lt 1 se
cumple - Umtodos lt UGntodos 0.64 lt 0.78 se
cumple - máx(pi)críticos lt mín(pj)no-críticos 17 lt 9
no se cumple
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
22Planificación con Prioridades Estáticas (Rate
Monotonic Scheduling RMS)
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
c110 r10 cm14 d117 p117 c25 r20
cm22 d29 p29 c315 r30 cm35 d328
p328
- Transformación de P2 se desglosa en 2 procesos
P21 y P22 con
c215 r210 cm212 d2118 p2118 c225 r220
cm222 d2218 p2218 (Primera activación de
P22 en t9)
Cumple las tres condiciones de estabilidad
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
23Planificación con Prioridades Estáticas (Rate
Monotonic Scheduling RMS)
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
c110 r10 cm14 d117 p117 c215 r210
cm212 d2118 p2118 c225 r220 cm222
d2218 p2218 (Primera activación de P22 en
t9) c315 r30 cm35 d328 p328
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
24Planificación con Prioridades Estáticas (Rate
Monotonic Scheduling RMS)
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
c110 r10 cm14 d117 p117 c215 r210
cm212 d2118 p2118 c225 r220 cm222
d2218 p2218 (Primera activación de P22 en
t9) c315 r30 cm35 d328 p328
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
25Planificación con Prioridades Estáticas (Rate
Monotonic Scheduling RMS)
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
c110 r10 cm14 d117 p117 c25 r20
cm22 d29 p29 c315 r30 cm35 d328
p328
- Transformación de P1 se secuencia en 2 fases,
cada una con
Cumple las tres condiciones de estabilidad
c15 r10 cm12 d18.5 p18.5
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
26Planificación con Prioridades Estáticas (Rate
Monotonic Scheduling RMS)
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
c15 r10 cm12 d18.5 p18.5 c25
r20 cm22 d29 p29 c315 r30
cm35 d328 p328
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
27Planificación con Prioridades Estáticas (Rate
Monotonic Scheduling RMS)
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
c15 r10 cm12 d18.5 p18.5 c25
r20 cm22 d29 p29 c315 r30
cm35 d328 p328
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
28Planificación con Prioridades Dinámicas
(Earliest Deadline First EDF)
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
- Requisitos procesos independientes y periódicos,
ri0, planificación expulsiva, tiempos de
respuesta (deadlines) iguales a los períodos
(dipi). - Algoritmo de asignación de prioridades tendrá
más prioridad el proceso que tenga un tiempo
límite menor (tiempo en el que cumplirá su
próximo deadline) - Optimalidad el algoritmo es óptimo. Buen
comportamiento respecto al número de expulsiones
(bajo), respecto a otros algoritmos. - Test de planificabilidad el factor de uso del
procesador debe ser menor o igual a 1 (Ult1).
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
29Planificación con Prioridades Dinámicas
(Earliest Deadline First EDF)
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
Planificación EDF para procesos dependientes
- Objetivo producir una planificación admisible
que respete las precedencias temporales de los
procesos. - Procedimiento algoritmo de Chetto et al. de
revisión de los tiempos límite. - Optimalidad sigue siendo óptimo si hay
solución, encuentra una solución. - Test de planificabilidad (Ult1) deja de ser
válido si, aún existiendo solución con procesos
independientes, no existiera solución en el caso
de procesos dependientes, el algoritmo EDF con
los tiempos límites revisados proporcionaría una
planificación no admisible.
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
30Planificación con Prioridades Dinámicas
(Earliest Deadline First EDF)
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
Algoritmo de Chetto et al. de revisión de tiempos
límite
- Procedimiento transforma los tiempos límite para
conseguir un sistema idéntico que cumpla las
restricciones de precedencia. - Fase I enumeración de todos los procesos a
ejecutar, según el hiperperíodo. - Fase II obtención del grafo de precedencia
(GdP). - Fase III obtención del orden topológico inverso
de los procesos en el GdP. - Fase IV obtención de los tiempos límite sin
revisar (di) - Fase V cálculo de tiempos límite revisados
(dimín(di,míndk-ckPi?Pk))
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
31Planificación con Prioridades Dinámicas
(Earliest Deadline First EDF)
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
P1P11,P12 c114 c124 r10 d132
p132 P2P21,P22 ,P23 ,P24 c214 c224 c234
c244 r20 d264 p164 P3P31,P32 c318
c318 r30 d364 p364
- Fase I enumeración de todos los procesos a
ejecutar, según el hiperperíodo.
P11(1), P12(1), P11(2), P12(2), P21(1), P22(1),
P23(1), P24(1), P31(1), P32(1)
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
32Planificación con Prioridades Dinámicas
(Earliest Deadline First EDF)
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
P1P11,P12 c114 c124 r10 d132
p132 P2P21,P22 ,P23 ,P24 c214 c224 c234
c244 r20 d264 p164 P3P31,P32 c318
c318 r30 d364 p364
- Fase II obtención del grafo de precedencia (GdP).
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
33Planificación con Prioridades Dinámicas
(Earliest Deadline First EDF)
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
P1P11,P12 c114 c124 r10 d132
p132 P2P21,P22 ,P23 ,P24 c214 c224 c234
c244 r20 d264 p164 P3P31,P32 c318
c318 r30 d364 p364
- Fase III obtención del orden topológico inverso
de los procesos en el GdP.
P12(2)
, P24(1)
, P32(1)
, P11(2)
, P23(1)
, P12(1)
, P22(1)
, P31(1)
, P11(1)
, P12(1)
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
34Planificación con Prioridades Dinámicas
(Earliest Deadline First EDF)
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
P1P11,P12 c114 c124 r10 d132
p132 P2P21,P22 ,P23 ,P24 c214 c224 c234
c244 r20 d264 p164 P3P31,P32 c318
c318 r30 d364 p364
- Fase IV obtención de los tiempos límite sin
revisar (dik.pi)
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
35Planificación con Prioridades Dinámicas
(Earliest Deadline First EDF)
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
P1P11,P12 c114 c124 r10 d132
p132 P2P21,P22 ,P23 ,P24 c214 c224 c234
c244 r20 d264 p164 P3P31,P32 c318
c318 r30 d364 p364
- Fase V cálculo de tiempos límite revisados
(dimín(di,míndk-ckPi?Pk))
mín(64)64
mín(64,64-4)60
mín(32,60-4)32
mín(32,32-4,56-4) 28
mín(64)64
mín(64,64-4)60
mín(64,60-4,64-8) 56
mín(32,32-4,56-4) 28
mín(64)64
mín(64,60-4,64-8) 56
P12(2)
, P24(1)
, P32(1)
, P11(2)
, P23(1)
, P12(1)
, P22(1)
, P31(1)
, P11(1)
, P12(1)
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
36Planificación con Prioridades Dinámicas
(Earliest Deadline First EDF)
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
U8/3216/6416/643/4
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
37Conclusiones
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
- La planificación de tareas es de vital
importancia en los sistemas en tiempo real. - En general, el problema es complicado e incluso
irresoluble en tiempo polinomial. - Existen aproximaciones razonables que permiten
obtener soluciones en casos cercanos a los
prácticos. - Los sistemas operativos y lenguajes de
programación juegan un papel imprescindible en la
planificación de tareas de tiempo real, pero
actualmente sólo implementan planificación guiada
por prioridades. - La planificación de tiempo real es un área de
gran desarrollo en los últimos años.
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
38Bibliografía Básica
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
- BURNS A. y WELLINGS A. (2001). Real-Time Systems
and Programming Languages, 3ª edición,
Addison-Wesley, ISBN 0-201-72988-1. (CAPÍTULO 13) - LIU J.W.S. (2000). Real-Time Systems". Prentice
Hall, ISBN 0-13-099651-3 (CAPÍTULOS 4,6,12) - DE LA PUENTE J.A. (1988). Planificación de la
Ejecución de Procesos en Sistemas en Tiempo
Real, Universidad Politécnica de Valencia,
Apuntes.
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga
39Bibliografía Original
PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO
REAL
- HILLIER F.S. y LIEBERMAN G. J. (1991).
Introducción a la Investigación de Operaciones.
Mc.Graw Hill Interamericana. - STANKOVIC J.A. (1988). "Misconceptions About
Real-Time Computing. A Serious Problem for
Next-Generation Systems". IEEE Computer vol. 21,
no. 10. - RAMAMRITHAM K. y STANKOVIC J.A. (1994).
"Scheduling Algorithms and Operating Systems
Support for Real-Time Systems". Proceedings of
the IEEE, vol. 82, no. 1 - XU J. y PARNAS D.L. (1993). "On Satisfying Timing
Constraints in Hard-Real-Time Systems". IEEE
Transactions on Software Engineering, vol. 19,
no. 1, pp. 70-84 - GHOSH K., MUKHERJEE B., y SCHWAN K. (1994). "A
Survey of Real-Time Operating Systems". Informe
Técnico GIT-CC-93/18 del Instituto Tecnológico de
Georgia. - LIU C.L. y LAYLAND J.W. (1973). "Scheduling
Algorithms for Multiprogramming in a
Hard-Real-Time Environment". Journal of the
Association for Computing Machinery, vol. 20, no.
1, pp. 46-61. - SHA L., LEHOCZKY J.P. y JENSEN E.D. (1986).
"Solutions for Some Practical Problems in
Prioritized Preemptive Scheduling". Proceedings
of the IEEE Real-Time Systems Symposium. - CHETTO H., SILLY M., BOUTENCHOUF T. (1990).
"Dynamic Scheduling of Real-Time Tasks under
Precedence Constraints". The Journal of Real-Time
Systems, vol. 2, pp. 181-194.
Juan Antonio Fernández Madrigal,
2003 Departamento de Ingeniería de Sistemas y
Automática Universidad de Málaga