La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

CONCURRENCIA. PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO REAL Juan Antonio Fernández Madrigal, 2004 Departamento de Ingeniería de Sistemas y Automática.

Presentaciones similares


Presentación del tema: "CONCURRENCIA. PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO REAL Juan Antonio Fernández Madrigal, 2004 Departamento de Ingeniería de Sistemas y Automática."— Transcripción de la presentación:

1 CONCURRENCIA. 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

2 Planificación de Procesos en Sistemas en Tiempo Real Software para Sistemas en T.R. Tema III. Interfaces Tema IV. Interrupciones Tema V. Redes Tema VI. Planificación Tema VII. Sistemas Operativos Tema VIII. Programación Hardware para Sistemas en T.R. Introducción Tema II. Microprocesadores Juan Antonio Fernández Madrigal, 2003 Departamento de Ingeniería de Sistemas y Automática Universidad de Málaga

3 Planificación de Procesos en Sistemas en Tiempo Real 1. Teoría de la Planificación de Procesos de Tiempo Real 2. Modelado de Procesos y Conceptos Generales 3. Taxonomía de los Algoritmos de Planificación 4. Planificadores por Prioridades 5. Planificación con Prioridades Estáticas (RMS) 6. Planificación con Prioridades Dinámicas (EDF) 7. Conclusiones 8. 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

4 1.Teorí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. Procedimiento: Planificar los recursos del sistema de acuerdo a ciertos algoritmos, de tal manera que la temporización del sistema sea predecible, comprensible y mantenible. Juan Antonio Fernández Madrigal, 2003 Departamento de Ingeniería de Sistemas y Automática Universidad de Málaga

5 2.Modelado de Procesos y Conceptos Generales PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO REAL PROCESOS 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

6 2.Modelado de Procesos y Conceptos Generales PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO REAL rprp cpcp dpdp p procesos periódicos tiempo Juan Antonio Fernández Madrigal, 2003 Departamento de Ingeniería de Sistemas y Automática Universidad de Málaga

7 min e cece 2.Modelado de Procesos y Conceptos Generales PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO REAL tiempo dede procesos esporádicos Juan Antonio Fernández Madrigal, 2003 Departamento de Ingeniería de Sistemas y Automática Universidad de Málaga

8 2.Modelado de Procesos y Conceptos Generales PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO REAL min e cece tiempo dede reducción de esporádicos a periódicos = p a = c a = d a r a =0 Juan Antonio Fernández Madrigal, 2003 Departamento de Ingeniería de Sistemas y Automática Universidad de Málaga

9 2.Modelado de Procesos y Conceptos Generales PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO REAL tiempo rprp cpcp dpdpp sincronización entre procesos p 1 (1)p 1 (2) p 2 (1)p 2 (2) p 3 (1)p 3 (2) Juan Antonio Fernández Madrigal, 2003 Departamento de Ingeniería de Sistemas y Automática Universidad de Málaga

10 2.Modelado 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

11 2.Modelado 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

12 3.Taxonomía de los Algoritmos de Planificación PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO REAL Planificación de Procesos de Tiempo Real MonoprocesadorMultiprocesador / Distribuida Estática (off-line)Dinámica (on-line) Con esporádicos Con inversión de prioridades EDF / MLFComputación imprecisa MUF Compartiendo recursos Robado de Ciclos / Sobrecarga RMS Con sobrecarga Con precedencias Planificación de Procesos de Tiempo Real Monoprocesador Estática (off-line)Dinámica (on-line) EDF / MLFRMS Con sobrecarga Con precedencias (Liu y Layland, 1973) (Sha et al., 1986) (Chetto et al., 1990) Juan Antonio Fernández Madrigal, 2003 Departamento de Ingeniería de Sistemas y Automática Universidad de Málaga

13 4.Planificadores 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

14 4.Planificadores por Prioridades PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO REAL  Ejemplo de asignación de prioridades por importancia: c 1 =8 r 1 =0 d 1 =24 p 1 =24 c 2 =20 r 2 =0 d 2 =44 p 2 =44 tiempo P1P1 P2P2 244820 Juan Antonio Fernández Madrigal, 2003 Departamento de Ingeniería de Sistemas y Automática Universidad de Málaga

15 5.Planificación con Prioridades Estáticas (Rate Monotonic Scheduling = RMS) PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO REAL  Requisitos: procesos independientes y periódicos, r i =0, planificación expulsiva, tiempos de respuesta (deadlines) iguales a los períodos (d i =p i ).  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. < Juan Antonio Fernández Madrigal, 2003 Departamento de Ingeniería de Sistemas y Automática Universidad de Málaga

16 5.Planificación con Prioridades Estáticas (Rate Monotonic Scheduling = RMS) PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO REAL c 1 =8 r 1 =0 d 1 =24 p 1 =24 c 2 =20 r 2 =0 d 2 =44 p 2 =44 U = 8/24+20/44 = 0.79 < UG 2 = 2(2 1/2 -1) = 0.83 tiempo P1P1 P2P2 2483236 Juan Antonio Fernández Madrigal, 2003 Departamento de Ingeniería de Sistemas y Automática Universidad de Málaga

17 5.Planificació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. I.[U] críticos < [UG n ] críticos II.[U m ] todos < [UG n ] todos III.[máx(p i )] críticos < [mín(p j )] 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

18 5.Planificació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 P i en k procesos, cada uno con período k*p i y con su primera activación desplazada.  Acción B: reducir el período de un proceso crítico. Se ejecuta el proceso P i en k fases consecutivas, cada una con período p i /k. Fase 1Fase 2 Fase 1Fase 2Fase 1Fase 2  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

19 5.Planificación con Prioridades Estáticas (Rate Monotonic Scheduling = RMS) PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO REAL c 1 =10 r 1 =0 cm 1 =4 d 1 =17 p 1 =17 c 2 =5 r 2 =0 cm 2 =2 d 2 =9 p 2 =9 c 3 =15 r 3 =0 cm 3 =5 d 3 =28 p 3 =28 RMS tiempo P1P1 P2P2 0 P3P3 51015202530354045505560 Juan Antonio Fernández Madrigal, 2003 Departamento de Ingeniería de Sistemas y Automática Universidad de Málaga

20 5.Planificación con Prioridades Estáticas (Rate Monotonic Scheduling = RMS) PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO REAL c 1 =10 r 1 =0 cm 1 =4 d 1 =17 p 1 =17 c 2 =5 r 2 =0 cm 2 =2 d 2 =9 p 2 =9 c 3 =15 r 3 =0 cm 3 =5 d 3 =28 p 3 =28 RMS tiempo P1P1 P2P2 0 P3P3 51015202530354045505560 Juan Antonio Fernández Madrigal, 2003 Departamento de Ingeniería de Sistemas y Automática Universidad de Málaga

21 5.Planificación con Prioridades Estáticas (Rate Monotonic Scheduling = RMS) PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO REAL c 1 =10 r 1 =0 cm 1 =4 d 1 =17 p 1 =17 c 2 =5 r 2 =0 cm 2 =2 d 2 =9 p 2 =9 c 3 =15 r 3 =0 cm 3 =5 d 3 =28 p 3 =28 Transformación de Períodos (chequeo de condiciones) I.[U] críticos < [UG n ] críticos : 0.59 < 1 : se cumple II.[U m ] todos < [UG n ] todos : 0.64 < 0.78 : se cumple III.[máx(p i )] críticos < [mín(p j )] no-críticos : 17 < 9 : no se cumple No se puede incluir P 2 como crítico: no se cumple la condición I (U=1.1) Juan Antonio Fernández Madrigal, 2003 Departamento de Ingeniería de Sistemas y Automática Universidad de Málaga

22 5.Planificación con Prioridades Estáticas (Rate Monotonic Scheduling = RMS) PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO REAL c 1 =10 r 1 =0 cm 1 =4 d 1 =17 p 1 =17 c 2 =5 r 2 =0 cm 2 =2 d 2 =9 p 2 =9 c 3 =15 r 3 =0 cm 3 =5 d 3 =28 p 3 =28 Transformación de Períodos (Acción A sobre P 2 )  Transformación de P 2 : se desglosa en 2 procesos P 21 y P 22 con: c 21 =5 r 21 =0 cm 21 =2 d 21 =18 p 21 =18 c 22 =5 r 22 =0 cm 22 =2 d 22 =18 p 22 =18 (Primera activación de P 22 en t=9) 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

23 5.Planificación con Prioridades Estáticas (Rate Monotonic Scheduling = RMS) PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO REAL c 1 =10 r 1 =0 cm 1 =4 d 1 =17 p 1 =17 c 21 =5 r 21 =0 cm 21 =2 d 21 =18 p 21 =18 c 22 =5 r 22 =0 cm 22 =2 d 22 =18 p 22 =18 (Primera activación de P 22 en t=9) c 3 =15 r 3 =0 cm 3 =5 d 3 =28 p 3 =28 RMS tiempo P1P1 P 21 0 P3P3 51015202530354045505560 P 22 Juan Antonio Fernández Madrigal, 2003 Departamento de Ingeniería de Sistemas y Automática Universidad de Málaga

24 5.Planificación con Prioridades Estáticas (Rate Monotonic Scheduling = RMS) PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO REAL c 1 =10 r 1 =0 cm 1 =4 d 1 =17 p 1 =17 c 21 =5 r 21 =0 cm 21 =2 d 21 =18 p 21 =18 c 22 =5 r 22 =0 cm 22 =2 d 22 =18 p 22 =18 (Primera activación de P 22 en t=9) c 3 =15 r 3 =0 cm 3 =5 d 3 =28 p 3 =28 RMS tiempo P1P1 P 21 0 P3P3 51015202530354045505560 P 22 Juan Antonio Fernández Madrigal, 2003 Departamento de Ingeniería de Sistemas y Automática Universidad de Málaga

25 5.Planificación con Prioridades Estáticas (Rate Monotonic Scheduling = RMS) PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO REAL c 1 =10 r 1 =0 cm 1 =4 d 1 =17 p 1 =17 c 2 =5 r 2 =0 cm 2 =2 d 2 =9 p 2 =9 c 3 =15 r 3 =0 cm 3 =5 d 3 =28 p 3 =28 Transformación de Períodos (Acción B sobre P 1 )  Transformación de P 1 : se secuencia en 2 fases, cada una con: c’ 1 =5 r’ 1 =0 cm’ 1 =2 d’ 1 =8.5 p’ 1 =8.5 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

26 5.Planificación con Prioridades Estáticas (Rate Monotonic Scheduling = RMS) PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO REAL c’ 1 =5 r’ 1 =0 cm’ 1 =2 d’ 1 =8.5 p’ 1 =8.5 c 2 =5 r 2 =0 cm 2 =2 d 2 =9 p 2 =9 c 3 =15 r 3 =0 cm 3 =5 d 3 =28 p 3 =28 RMS tiempo P’ 1 P2P2 0 P3P3 51015202530354045505560 f1f1f2f2f1f1f2f2f1f1f2f2f1f1f2f2 Juan Antonio Fernández Madrigal, 2003 Departamento de Ingeniería de Sistemas y Automática Universidad de Málaga

27 5.Planificación con Prioridades Estáticas (Rate Monotonic Scheduling = RMS) PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO REAL c’ 1 =5 r’ 1 =0 cm’ 1 =2 d’ 1 =8.5 p’ 1 =8.5 c 2 =5 r 2 =0 cm 2 =2 d 2 =9 p 2 =9 c 3 =15 r 3 =0 cm 3 =5 d 3 =28 p 3 =28 RMS tiempo P’ 1 P2P2 0 P3P3 51015202530354045505560 f1f1f2f2f1f1f2f2f1f1f2f2f1f1f2f2 Juan Antonio Fernández Madrigal, 2003 Departamento de Ingeniería de Sistemas y Automática Universidad de Málaga

28 6.Planificación con Prioridades Dinámicas (Earliest Deadline First = EDF) PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO REAL  Requisitos: procesos independientes y periódicos, r i =0, planificación expulsiva, tiempos de respuesta (deadlines) iguales a los períodos (d i =p i ).  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 (U<1). Juan Antonio Fernández Madrigal, 2003 Departamento de Ingeniería de Sistemas y Automática Universidad de Málaga

29 6.Planificació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 (U<1): 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

30 6.Planificació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 (d i )  Fase V: cálculo de tiempos límite revisados (d* i =mín(d i,mín{d* k -c k :P i →P k })) Juan Antonio Fernández Madrigal, 2003 Departamento de Ingeniería de Sistemas y Automática Universidad de Málaga

31 6.Planificación con Prioridades Dinámicas (Earliest Deadline First = EDF) PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO REAL P 1 ={P 11,P 12 } c 11 =4 c 12 =4r 1 =0 d 1 =32 p 1 =32 P 2 ={P 21,P 22,P 23,P 24 } c 21 =4 c 22 =4 c 23 =4 c 24 =4 r 2 =0 d 2 =64 p 1 =64 P 3 ={P 31,P 32 } c 31 =8 c 31 =8 r 3 =0 d 3 =64 p 3 =64 P 11 (1), P 12 (1), P 11 (2), P 12 (2), P 21 (1), P 22 (1), P 23 (1), P 24 (1), P 31 (1), P 32 (1) P1P1 P2P2 P3P3  Fase I: enumeración de todos los procesos a ejecutar, según el hiperperíodo. Juan Antonio Fernández Madrigal, 2003 Departamento de Ingeniería de Sistemas y Automática Universidad de Málaga

32 6.Planificación con Prioridades Dinámicas (Earliest Deadline First = EDF) PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO REAL P 1 ={P 11,P 12 } c 11 =4 c 12 =4r 1 =0 d 1 =32 p 1 =32 P 2 ={P 21,P 22,P 23,P 24 } c 21 =4 c 22 =4 c 23 =4 c 24 =4 r 2 =0 d 2 =64 p 1 =64 P 3 ={P 31,P 32 } c 31 =8 c 31 =8 r 3 =0 d 3 =64 p 3 =64  Fase II: obtención del grafo de precedencia (GdP). P 11 (1)P 12 (1)P 11 (2)P 12 (2)P 21 (1)P 22 (1)P 23 (1)P 24 (1)P 31 (1)P 32 (1) Juan Antonio Fernández Madrigal, 2003 Departamento de Ingeniería de Sistemas y Automática Universidad de Málaga

33 6.Planificación con Prioridades Dinámicas (Earliest Deadline First = EDF) PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO REAL P 1 ={P 11,P 12 } c 11 =4 c 12 =4r 1 =0 d 1 =32 p 1 =32 P 2 ={P 21,P 22,P 23,P 24 } c 21 =4 c 22 =4 c 23 =4 c 24 =4 r 2 =0 d 2 =64 p 1 =64 P 3 ={P 31,P 32 } c 31 =8 c 31 =8 r 3 =0 d 3 =64 p 3 =64  Fase III: obtención del orden topológico inverso de los procesos en el GdP. P 11 (1)P 12 (1)P 11 (2)P 12 (2) P 21 (1)P 22 (1)P 23 (1)P 24 (1) P 31 (1)P 32 (1) P 12 (2), P 24 (1), P 32 (1), P 11 (2), P 23 (1), P 12 (1), P 22 (1), P 31 (1), P 11 (1), P 12 (1) Juan Antonio Fernández Madrigal, 2003 Departamento de Ingeniería de Sistemas y Automática Universidad de Málaga

34 6.Planificación con Prioridades Dinámicas (Earliest Deadline First = EDF) PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO REAL P 1 ={P 11,P 12 } c 11 =4 c 12 =4r 1 =0 d 1 =32 p 1 =32 P 2 ={P 21,P 22,P 23,P 24 } c 21 =4 c 22 =4 c 23 =4 c 24 =4 r 2 =0 d 2 =64 p 1 =64 P 3 ={P 31,P 32 } c 31 =8 c 31 =8 r 3 =0 d 3 =64 p 3 =64  Fase IV: obtención de los tiempos límite sin revisar (d i =k.p i ) P 11 (1)P 12 (1)P 11 (2)P 12 (2) P 21 (1)P 22 (1)P 23 (1)P 24 (1) P 31 (1)P 32 (1) 64 32 64 32 64 Juan Antonio Fernández Madrigal, 2003 Departamento de Ingeniería de Sistemas y Automática Universidad de Málaga

35 mín(64)=64mín(64,60-4,64-8) =56 mín(64)=64mín(64,64-4)=60mín(64,60-4,64-8) =56 mín(32,32-4,56-4) =28 mín(64)=64mín(64,64-4)=60mín(32,60-4)=32mín(32,32-4,56-4) =28 6.Planificación con Prioridades Dinámicas (Earliest Deadline First = EDF) PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO REAL P 1 ={P 11,P 12 } c 11 =4 c 12 =4r 1 =0 d 1 =32 p 1 =32 P 2 ={P 21,P 22,P 23,P 24 } c 21 =4 c 22 =4 c 23 =4 c 24 =4 r 2 =0 d 2 =64 p 1 =64 P 3 ={P 31,P 32 } c 31 =8 c 31 =8 r 3 =0 d 3 =64 p 3 =64  Fase V: cálculo de tiempos límite revisados (d* i =mín(d i,mín{d* k -c k :P i →P k })) P 11 (1)P 12 (1)P 11 (2)P 12 (2) P 21 (1)P 22 (1)P 23 (1)P 24 (1) P 31 (1)P 32 (1) P 12 (2), P 24 (1), P 32 (1), P 11 (2), P 23 (1), P 12 (1), P 22 (1), P 31 (1), P 11 (1), P 12 (1) Juan Antonio Fernández Madrigal, 2003 Departamento de Ingeniería de Sistemas y Automática Universidad de Málaga

36 6.Planificación con Prioridades Dinámicas (Earliest Deadline First = EDF) PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO REAL  Cronograma: mín(64)=64mín(64,60-4,64-8) =56 mín(64)=64mín(64,64-4)=60mín(64,60-4,64-8) =56 mín(32,32-4,56-4) =28 mín(64)=64mín(64,64-4)=60mín(32,60-4)=32mín(32,32-4,56-4) =28 P 11 (1)P 12 (1)P 11 (2)P 12 (2) P 21 (1)P 22 (1)P 23 (1)P 24 (1) P 31 (1)P 32 (1) tiempo P1P1 P2P2 0 P3P3 5101520253035404550556065 U=8/32+16/64+16/64= 3/4 Juan Antonio Fernández Madrigal, 2003 Departamento de Ingeniería de Sistemas y Automática Universidad de Málaga

37 7.Conclusiones 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

38 8.Bibliografí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

39 8.Bibliografí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. Introducción Modelo de Procesos Taxonomía Algoritmos de Planificación Juan Antonio Fernández Madrigal, 2003 Departamento de Ingeniería de Sistemas y Automática Universidad de Málaga


Descargar ppt "CONCURRENCIA. PLANIFICACIÓN DE PROCESOS EN SISTEMAS EN TIEMPO REAL Juan Antonio Fernández Madrigal, 2004 Departamento de Ingeniería de Sistemas y Automática."

Presentaciones similares


Anuncios Google