análisis y verificación formal de planificadores para ... · pdf...
TRANSCRIPT
![Page 1: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/1.jpg)
Análisis y Verificación Formal de Planificadores para Sistemas Operativos
de Tiempo Real
Dr. Apolinar González Potes
![Page 2: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/2.jpg)
Dr. Apolinar González PotesProfesor – InvestigadorUniversidad de Colima, Colima - México
Doctor en ComputaciónUniversidad Politécnica de Valencia, España
Maestría en Electrónica, Eléctrica y AutomáticaOpción: Informática IndustrialUniversidad Claude Bernard Lyon I, Francia
Ingeniería en Electrónica, Eléctrica y AutomáticaOpción: Informática IndustrialINSA - Universidad Claude Bernard, Lyon I, Francia
Sistema Nacional de Investigación: Nivel 1
![Page 3: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/3.jpg)
Agenda
Introducción1
Planificadores Cíclicos2
Planificadores Estáticos y Dinámicos3
Modelo de Diseño Formal4
4 Análisis y Verificación Formal55
![Page 4: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/4.jpg)
Introducción
Breve Descripción del Grupo de Investigación – Sistemas Inteligentes CA 46 clave SEP
AREAS:Sistemas Operativos de Tiempo RealSistemas Distribuidos de Tiempo RealDiseño de Sistemas de Tiempo RealDiseño de Sistemas Empotrados
Personal:4 Investigadores de Tiempo Completo2 Candidatos a doctorado12 Estudiantes de Maestría
Localización:Posgrado de la Facultad de Ingeniería Mecánica y Eléctrica
Cooperación: UPV, UAO, UCBL, CICESE, UdG, UFRGS, etc.InnovatiSS, FeintiSS, MNIS, Siteldi solutions, MECOPTIM, MIND, etc.
![Page 5: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/5.jpg)
Proyectos
Introducción
Arquitectura segura - CONACYT
Redes de Sensores para el Rendimiento de Cultivos – INNOVAPIME 2012 – México - Centroamérica
UWEP – Francia - México
![Page 6: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/6.jpg)
Open and cost-effective virtualization techniques and supporting separation kernel for the embedded systems industry
Introducción
Proyectos
![Page 7: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/7.jpg)
Constructora Integral de Colima
DISEÑO DE REDES DE SENSORES EN ENTORNOS CAMBIANTES(CONCAYT – COLCIENCIAS)
DISEÑO y DESARROLLO DE APLICACIONES BASADAS EN REDES DE SENSORES – D2ARS (CYTED)
Sistema Distribuido Abierto y Seguro para la Optimización de Costos Energéticos y Mejora del Confort en Casas y Edificios (DomOptim)OSEO (Francia) – CONAYT (México)
Algunos Productos: 1.uDDS (Subconjunto del Middleware DDS –versión para Linux, PaRTikle)2.Subconjunto del WirelessHART3.Versión alpha XtratuM para ARM 94.PaRTiKle RTOS5.ERTL (Embedded Real Time Linux)6.etc
Proyectos
Introducción
![Page 8: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/8.jpg)
Un sistema de tiempo real es un sistema informático en el que es significativo el tiempo en el que se producen sus acciones.
No es suficiente que las acciones del sistema sean correctas lógicamente, sino que, además, deben producirse dentro de un intervalo de tiempo determinado
Esto es debido a que el sistema está conectado a un proceso externo del que recibe estímulos a los que debe responder con suficiente rapidez para evitar que evolucione a un estado indeseable.
Los estímulos externos aparecen en instantes de tiempo no predecibles. Tiene que resolver distintas cosas a la vez (concurrentemente)
Definiciones
Introducción
![Page 9: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/9.jpg)
Tamaño y complejidad • Afecta al software• La complejidad no sólo depende del tamaño• Posibilidad de realizar modificaciones• Descomposición en subsistemas pequeños y sencillos
• Afecta al software• La complejidad no sólo depende del tamaño• Posibilidad de realizar modificaciones• Descomposición en subsistemas pequeños y sencillos
Fiabilidad y seguridad • Un fallo puede tener repercusiones muyimportantes: perdidas humanas, económicas, etc.• Es necesario que si el sistema falla se le conduzcaa estados seguros que sean previsibles, y se tengan los medios para solucionarlo.
• Un fallo puede tener repercusiones muyimportantes: perdidas humanas, económicas, etc.• Es necesario que si el sistema falla se le conduzcaa estados seguros que sean previsibles, y se tengan los medios para solucionarlo.
Concurrencia • Programación concurrente• Distintas tareas accediendo a recursos comunes• Restricciones temporales• Planificación de tareas atendiendo a lasrestricciones temporales
• Programación concurrente• Distintas tareas accediendo a recursos comunes• Restricciones temporales• Planificación de tareas atendiendo a lasrestricciones temporales
Introducción
![Page 10: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/10.jpg)
Tamaño y complejidad • Afecta al software• La complejidad no sólo depende del tamaño• Posibilidad de realizar modificaciones• Descomposición en subsistemas pequeños y sencillos
• Afecta al software• La complejidad no sólo depende del tamaño• Posibilidad de realizar modificaciones• Descomposición en subsistemas pequeños y sencillos
Fiabilidad y seguridad • Un fallo puede tener repercusiones muyimportantes: perdidas humanas, económicas, etc.• Es necesario que si el sistema falla se le conduzcaa estados seguros que sean previsibles, y se tengan los medios para solucionarlo.
• Un fallo puede tener repercusiones muyimportantes: perdidas humanas, económicas, etc.• Es necesario que si el sistema falla se le conduzcaa estados seguros que sean previsibles, y se tengan los medios para solucionarlo.
Concurrencia • Programación concurrente• Distintas tareas accediendo a recursos comunes• Restricciones temporales• Planificación de tareas atendiendo a lasrestricciones temporales
• Programación concurrente• Distintas tareas accediendo a recursos comunes• Restricciones temporales• Planificación de tareas atendiendo a lasrestricciones temporales
Introducción
![Page 11: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/11.jpg)
Introducción
![Page 12: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/12.jpg)
Introducción
![Page 13: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/13.jpg)
Ejemplo: Asignación de prioridadesT1 = {20,100,100,0)
T2 = {50,150,150,0)
T3 = {100,300,300,0)
Introducción
![Page 14: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/14.jpg)
Ejemplo: Asignación de prioridadesT1 = {20,100,100,0)
T2 = {50,150,150,0)
T3 = {100,300,300,0)
Introducción
![Page 15: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/15.jpg)
Ejemplo: Asignación de prioridadesT1 = {20,100,100,0)
T2 = {50,150,150,0)
T3 = {100,300,300,0)
Introducción
![Page 16: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/16.jpg)
Ejemplo: Asignación de prioridadesT1 = {20,100,100,0)
T2 = {40,150,150,0)
T3 = {100,300,300,0)
Introducción
![Page 17: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/17.jpg)
Introducción
![Page 18: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/18.jpg)
Introducción
![Page 19: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/19.jpg)
Introducción
![Page 20: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/20.jpg)
Introducción
![Page 21: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/21.jpg)
Introducción
![Page 22: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/22.jpg)
Introducción
![Page 23: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/23.jpg)
Introducción
![Page 24: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/24.jpg)
Introducción
![Page 25: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/25.jpg)
Introducción
![Page 26: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/26.jpg)
Los hilos de ejecución pueden ser creados y manejados:
Utilizando un lenguaje de programación convencional y llamadas al sistema.
Ejemplo: C y threads en POSIX
Utilizando construcciones lingüísticas (o clases) de un lenguaje de programación que admita concurrencia
Ejemplo: Tareas en Ada95, threads en Java
Utilización de hilos de ejecución
Hilos de ejecución (Threads)
Introducción
![Page 27: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/27.jpg)
Threads en POSIX (i):
Devuelve el identificador del thread que la invoca.pthread_t pthread_self()
Suspende la ejecución del hilo que invoca esta llamada, hasta que el thread_id acabe.
pthread_join (thread_id)
El hilo que la invoca finaliza su ejecución.pthread_exit (status)
Crea un nuevo hilo de ejecución. El hilo
de ejecución empieza en func y se le
pasan los parámetros args.
pthread_create(thread_id, attr, func, args)DescripciónLlamada
Llamadas básicas
Introducción
![Page 28: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/28.jpg)
Threads en POSIX (ii):
Un ejemplo
Introducción
![Page 29: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/29.jpg)
#include <stdio.h>#include <pthread.h>#include <sched.h>#include <time.h>#define FIFOPOLICY SCHED_FIFO
void *task2(void *args) { int i,j; struct timespec delay1 = {0,500000000}; while(1){ printf("\n contando................"); for (i=1;i<=630000;i++) for (j=1;j<=500000;j++); printf("\n termina de contar "); printf (”\n ****** Soy t2 ******** ”); nanosleep(&delay1, NULL); }}
void *task1(void *args) { struct timespec delay2 = {0,500000000};
while(1){ printf (”\n ***** Soy t1 ************ “); nanosleep(&delay2, NULL); }}
int main (int argc, char **argv) { //variables Thread 1 pthread_t thread1;
pthread_attr_t attr1;int policy = FIFOPOLICY;struct sched_param param1;int priority1;
//parametros thread1pthread_attr_init(&attr1);pthread_attr_setschedpolicy(&attr1, policy);priority1 = 20;param1.sched_priority = priority1;pthread_attr_setschedparam(&attr1, ¶m1);pthread_create(&thread1, &attr1, task1, NULL);
Introducción
![Page 30: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/30.jpg)
//variables Thread 2 pthread_t thread2;
pthread_attr_t attr2;struct sched_param param2;int priority2;
//parametros thread2pthread_attr_init(&attr2);pthread_attr_setschedpolicy(&attr2, policy);priority2 = 100;param2.sched_priority = priority2;pthread_attr_setschedparam(&attr2, ¶m2);
//creacion de los hilos printf("prioridad hilo 1: %d\n", priority1); printf("prioridad hilo 2: %d\n", priority2); pthread_create(&thread2, &attr2, task2, NULL); pthread_create(&thread1, &attr1, task1, NULL); pthread_join (task1, NULL); printf(" SE ACABO "); return 0;}
Introducción
![Page 31: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/31.jpg)
Constructora Integral de Colima
Premisas:
1. En los sistemas de tiempo real no es suficiente que la lógica sea correcta2. Los programas deben satisfacer además los requisitos temporales
Preguntas:
1. Como construir un sistema para que satisfaga los requerimientos temporales ?2. Como verificar que los cumple ?.
Introducción
![Page 32: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/32.jpg)
Existen dos caminos para abordar este tema:
1. Métodos de análisis de planificabilidad
Estudio de la factibilidad de planificar la carga de trabajo requeridasobre los recursos disponibles, de modo que se cumplan los requisitos temporales
2. Técnicas de descripción formal
Uso de notaciones y marcos de razonamiento formales para representar y analizar los requisitos temporales
Introducción
![Page 33: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/33.jpg)
Planificadores Cíclicos
• Vamos a estudiar como planificar un sistema de tiempo real con el objeto de garantizar las restricciones temporales
• Lo normal es realizar el estudio situándonos en el peor caso (WCET)
• Análisis sistemas secuenciales• Análisis sistemas concurrentes
![Page 34: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/34.jpg)
EjemploEjemplo
Control por computador de temperatura, nivel y pH de un depósito
Sensores
Actuadores
Interfaz
Planificadores Cíclicos
![Page 35: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/35.jpg)
EjemploEjemploControl por computador de temperatura, nivel y pH de un depósito
Tarea: Control de temperatura (Control_Temp)Cada 5 segundos Leer_Sensor_Temp(Val_Temp) Calcular_Acción(Ref,Val_Temp,Acc_Temp,…) Aplicar_Acción(Acc_Temp)Antes de 2 segundos
Memori
a
E/SSensores
Actuadores
Interfaz
SensoresSensoresSensoresSensores
ActuadoresActuadoresActuadoresActuadores
InterfazInterfazInterfazInterfaz
Control_Temp
Control_Nivel
Control_pH
Visualizacion
Planificadores Cíclicos
![Page 36: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/36.jpg)
EjemploEjemploControl por computador de temperatura, nivel y pH de un depósito
Tarea: Control de temperatura (Control_Temp)Cada 5 segundos Leer_Sensor_Temp(Val_Temp) Calcular_Acción(Ref,Val_Temp,Acc_Temp,…) Aplicar_Acción(Acc_Temp)Antes de 2 segundos
--Variables globales RegNivel, RegTemp, RegpH : Regulador; Nivel, Temp, pH : Float; Val_Salida, Val_Comp_Temp, Val_Comp_pH : Float;
procedure Control_Nivel isbegin Nivel := Leer_Sensor(Sensor); Calcular(Regniv, Nivel, Val_Salida); Enviar_Accion(Actuador, Val_Salida);end Control_Nivel;
Planificadores Cíclicos
![Page 37: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/37.jpg)
procedure Controlar isbegin -- inicialización variables, reguladores, dispositivos T := clock; loop Control_Nivel; Control_Temp ; Control_pH; T:= T + Period ; delay until T; end loop;end Controlar;
t
0 5 10 15 20 25 30 35 40 45
Temp_Control pH_Control Level_Control
Planificadores Cíclicos
![Page 38: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/38.jpg)
loop Control_Temp ; if ((Cnt mod 2) = 0) then Control_Nivel; Control_pH; end if ; Cnt := Cnt + 1 ; T := T + Period ; delay until T ;end loop;
Ciclo principal = 10 ms; secundario = 5 ms
t
0 5 10 15 20 25 30 35 40 45
Temp_Control pH_Control Level_Control
Planificadores Cíclicos
![Page 39: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/39.jpg)
Pi = (Ci, Ti, Di, Ii)
Un actividad de tiempo real se caracteriza por una serie de parámetros temporales que determinan sus restricciones temporales de ejecución
Ii Ti
Di
Ci
Tarea i
t
Caracterización
Planificadores Cíclicos
![Page 40: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/40.jpg)
• Un planificador proporciona un algoritmo o política de gestión de procesos.• Un conjunto de procesos es factible de ejecutar si existe un planificador que cumpla las restricciones o precondiciones.• En sistemas de tiempo real crítico, la precondición son los plazos límites• Un planificador es óptimo si es capaz de producir una planificación factible para todos los procesos. Es óptimo si puede planificar todos los conjuntos de procesos que cualquier otro puede.• Se utilizan de algoritmos ad-hoc, estáticos y dinámicos.
Planificación de Sistemas de Tiempo Real
Planificadores
![Page 41: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/41.jpg)
•Cada Actividad ti puede verse como una tupla (Ci,Ti,Di,Ii)• Ci es su tiempo de cómputo de peor caso• Ti es el periodo de la tarea• Di es su plazo máximo de ejecución• Ii es el defase inicial
•Si todas las tareas t1..tn son periódicas, se puede confeccionar un plan de ejecución fijo que se repite cada ciclo principal TM•La duración del ciclo principal es la del hiperperiodo
H=mcm(Ti), i=1..n•El ciclo principal se divide en ciclos secundarios, cada uno de duración TS tal que TM = kTS
• En cada ciclo secundario se ejecutan las actividades correspondientes a determinadas tareas
Planificadores
![Page 42: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/42.jpg)
• Ejemplo 1– t1: C1 = 4 ms; T1 = 20 ms; D1 = 20 ms
– t2: C2 = 5 ms; T2 = 40 ms; D2 = 40 ms
– Elegimos• TM = mcm(20,40) = 40 ms
• TS = 20 ms
TM
TS
t1
t2
0 10 20 30 40 50 60 70 80
TS
TM
TS TS
Planificadores
![Page 43: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/43.jpg)
• El diseño del plan consiste en determinar sus parámetros:– Duración del ciclo principal Tp– Duración del ciclo secundario Ts– Ordenación de las tareas
• Debe tener en cuenta las restricciones temporales impuestas por el conjunto de tareas– La duración del ciclo principal es igual al hiperperiodo– Hay que elegir un ciclo secundario adecuado
• Por ejemplo, TS no puede ser menor que el tiempo de cómputo de ninguna tarea
Diseño del plan cíclico
Planificadores Cíclicos
![Page 44: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/44.jpg)
Di = TiTi
• 3.- Debe haber un TS completo entre el instante de activación y el plazo de cualquier tarea
Ts
Ts
Ts
Ti
Ts Ts1
Planificadores Cíclicos
![Page 45: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/45.jpg)
• No hay concurrencia en la ejecución• Los procedimiento pueden compartir datos sin
temor a posibles errores, ya que la exclusión mutua esta garantizada por la construcción
• Los periodos deben ser armónicos, esto puede implicar utilizar periodos más cortos de lo necesario
• No hace falta análisis del comportamiento temporal
• Problemas:– Tareas esporádicas– Construir el plan cíclico– Poco flexible y difícil de mantener
Planificadores Cíclicos
![Page 46: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/46.jpg)
Sist. TR
CíclicosCíclicos Prioridades
Estáticas Dinámicas
Rate Monotonic
RM
Deadline Monotonic
DM
Earliest Deadline
First EDF
LeastLaxity First
LLF
Clasificación de Planificadores
![Page 47: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/47.jpg)
•La planificación estática requiere una asignación a priori de la importancia (prioridad) de las tareas.
•Existe un planificador (basado en prioridades) que se encarga de ejecutar en cada instante de tiempo aquella tarea con la mayor importancia (prioridad)
•Las tareas pueden ser expulsadas cuando una tarea de mayor prioridad pasa a un estado de preparada
Planificadores Estáticos
Planificadores
![Page 48: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/48.jpg)
4321
Espera
Ejecución
Preparado
Terminado
Nuevo
5
Planificadores Estáticos
T1 Di CiT1 10 6 3
T2 15 10 3
T3 18 15 2
T4 24 24 5
T1
T2
T3
T4
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
Planificadores
![Page 49: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/49.jpg)
•La planificación dinámica no requiere una asignación a priori de la importancia de las tareas.
•El criterio de selección de la tarea es dinámico. Por ejemplo: aquella tarea con plazo más corto (earliest deadline first –EDF-)
•Existe un planificador que se encarga de ejecutar en cada instante de tiempo aquella tarea que cumpla mejor el criterio (urgencia)
•Las tareas pueden ser expulsadas cuando una tarea de mayor urgencia pasa a un estado de preparada
Planificadores Dinámicos
Planificadores
![Page 50: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/50.jpg)
Ejecución
Preparado
Espera
TerminadoNuevo
Planificadores Dinámicos
T1
T2
T3
T4
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
T1 Di CiT1 10 6 3
T2 15 10 3
T3 18 15 2
T4 24 24 5
Planificadores
![Page 51: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/51.jpg)
T1
T2
T3
T4
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
T1
T2
T3
T4
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
Estática
Dinámica
T1 Di CiT1 10 6 3
T2 15 10 3
T3 18 15 2
T4 24 24 5
Planificadores
![Page 52: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/52.jpg)
Lyu & Layland
Pi = (Ci, Ti, Di, Ii)
El peor caso se produce para t=0 con Ii=0.
Se denomina Instante crítico.
0 1 2 3 4 5 ... K-1 K ...........
IiTi
Di
Ci
Tarea i
t
Análisis de Planificabilidad
La k-ésima activación de la tarea i se produce a partir del instante:
Ii + (k-1)Ti
y tiene que finalizar antes de
Ii + (k-1)Ti + Di
Planificadores
![Page 53: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/53.jpg)
Teoría monotónico en frecuencia (RM)
• La prioridad se asigna en función del periodo• A menor periodo -> mayor prioridad (mayor prioridad el más frecuente)
• Pueden existir múltiples asignaciones de prioridades a tareas que permitan cumplir las restricciones de tiempo.• Cuando el número de tareas es reducido el tiempo necesario para la determinación no será grande.• En cualquier caso, se trata de un problema NP-Completo
Existe una forma fácil (lógica) de asignar prioridades para la cual hay desarrollada una teoría que permite determinar analíticamente si el sistema será planificable o no.
Factor de utilización de la CPU de una Tarea i
Asignación de prioridades
Ui
Ci
Ti
Planificadores
![Page 54: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/54.jpg)
n U(n)1 1,002 0,823 0,774 0,755 0,74... ...∞ 0,69
Para n tareas:
Análisis de planificabilidad:Test de factores de utilización
Test de planificabilidad basado en la utilización (Liu & Layland, 73):
Un conjunto de n tareas es planificable si se cumple:
Esta expresión establece un límite de utilización de la CPU
Es una condición suficiente pero no necesaria
00,10,20,30,40,50,60,70,80,9
1
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43
)12()(...1
2
2
1
1 −⋅=≤+++ n
n
n nnUT
C
T
C
T
C
Planificadores
![Page 55: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/55.jpg)
C1 = 2 T1 = 10 U1 = 0.2C2 = 4 T2 = 15 U2 = 0.267C3 =10 T3 = 35 U3 = 0.286 U1 + U2 + U3 = 0.753
Uso total 75.3 % < U(3) = 77.9 %
24.7 % de la CPU se puede utilizar para cálculos sin req. temporales a más baja prioridad.
Análisis de planificabilidad: Test de factores de utilización
Ejemplo 1
Planificadores
![Page 56: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/56.jpg)
C1 = 2 T1 = 10 U1 = 0.2C2 = 4 T2 = 15 U2 = 0.267C3 = 5 T3 = 25 U3 = 0.2C4 = 6 T4 = 35 U4 = 0.17 U1 + U2 + U3 + U4 = 0.837
Uso total 83,7 % > U(4) = 75.6 % No cumple
Análisis de planificabilidad: Test de factores de utilizaciónEjemplo 2
Pero el sistema es planificable
Planificadores
![Page 57: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/57.jpg)
• La prueba del test de finalización es condición suficiente, pero no necesaria
• No se puede generalizar a modelos de tareas más complejos
• No da una estimación de cuándo termina
Análisis de planificabilidad:Test de factores de utilización
Planificadores
![Page 58: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/58.jpg)
• Teorema: Un conjunto de “n” tareas será planificable bajo cualquier asignación, si y sólo si:
Análisis de planificabilidad:Test de Tiempo de Finalización
• Si una tarea cumple su primer plazo de ejecución en el peor caso.• El tiempo de finalización de peor caso de cada tarea ocurre cuando todas las tareas de prioridad superior se inician a la vez que ésta.
Planificadores
![Page 59: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/59.jpg)
Análisis de planificabilidad:Test de Tiempo de Finalización
Se trata de calcular en qué instante de tiempo termina la ejecución de una tarea ti. Este tiempo viene determinado por:
1. Su tiempo de ejecución Ci2. Para cada tarea tj de mayor prioridad que la ti, la suma de
todas las interferencias que se producen
T1
T2
6
Función techo
3310
612 =⋅
=
=
I
CT
WI j
j
iji
Planificadores
![Page 60: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/60.jpg)
Análisis de planificabilidad:Test de Tiempo de Finalización
Se trata de calcular en qué instante de tiempo termina la ejecución de una tarea ti. Este tiempo viene determinado por:
1. Su tiempo de ejecución Ci2. Para cada tarea tj de mayor prioridad que la ti, la suma de
todas las interferencias que se producenEn general, el conjunto de tareas con mayor prioridad a una dada i, es hp(i). Por lo tanto la interferencia que sufrirá una tarea i vendrá determinada por:
jihpj j
ii C
T
WI ⋅
= ∑
∈ )(
Planificadores
![Page 61: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/61.jpg)
Análisis de planificabilidad:Test de Tiempo de Finalización
El tiempo de finalización de una tarea ti, será:
Esta ecuación se puede calcular de una forma iterativa.
Condición de terminación:
Condición de no cumplimiento:
jihpj j
iii C
T
WCW ⋅
+= ∑
∈ )(
ii CW =0
jihpj j
ni
in
i CT
WCW ⋅
+= ∑
∈
+
)(
1
ni
ni WW =+1
in
i TW ≤+1
Planificadores
![Page 62: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/62.jpg)
Análisis de planificabilidad:Test de Tiempo de Finalización
• Un conjunto de “n” tareas será planificable si y sólo si:
Solución iterativa
TW iini ≤≤≤∀ ,1
i i
i ii
jj hp ij
i ii
jj hp ij
i
k
i
k
W C
W C WT C
W C WT C
W W
0
10
21
1
=
= +
= +
=
∀ ∈
∀ ∈
+
∑
∑( )
( )
.................................
Planificadores
![Page 63: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/63.jpg)
Análisis de planificabilidad:Test de Tiempo de Finalización
T1
T2
T3
T4
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
T1 Di CiT1 10 10 3
T2 15 15 3
T3 18 18 2
T4 24 24 510 30
3
11
1
1
1
0
1
=≤=+=
==
TCWCW
jihpj j
iii C
T
WCW ⋅
+= ∑
∈ )(
Planificadores
![Page 64: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/64.jpg)
T1
T2
T3
T4
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
T1 Di CiT1 10 10 3
T2 15 15 3
T3 18 18 2
T4 24 24 5
156
6310
63
6310
33
3
2
2
2
1
2
}1{
1
22
2
2
}1{
0
22
1
2
2
0
2
=≤==
=
+=
+=
=
+=
+=
==
∑
∑
∈∀
∈∀
TWW
TWCW
TWCW
CW
j j
j j
Análisis de planificabilidad:Test de Tiempo de Finalización
jihpj j
iii C
T
WCW ⋅
+= ∑
∈ )(
Planificadores
![Page 65: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/65.jpg)
T1
T2
T3
T4
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
T1 Di CiT1 10 10 3
T2 15 15 3
T3 18 18 2
T4 24 24 5
188
8315
83
10
82
8315
23
10
22
2
3
2
2
1
3
}2,1{
1
33
2
3
}2,1{
0
33
1
3
3
0
3
=≤==
=
+
+=
+=
=
+
+=
+=
==
∑
∑
∈∀
∈∀
TWW
TWCW
TWCW
CW
j j
j j
Análisis de planificabilidad:Test de Tiempo de Finalización
jihpj j
iii C
T
WCW ⋅
+= ∑
∈ )(
Planificadores
![Page 66: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/66.jpg)
T1
T2
T3
T4
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
T1 Di CiT1 10 10 3
T2 15 15 3
T3 18 18 2
T4 24 24 5
2424
24218
243
15
243
10
245
24218
213
15
213
10
215
21218
193
15
193
10
195
19218
163
15
163
10
165
16218
133
15
133
10
135
13218
53
15
53
10
55
5
4
5
4
6
4
}3,2,1{
5
44
6
4
}3,2,1{
4
44
5
4
}3,2,1{
3
44
4
4
}3,2,1{
2
44
3
4
}3,2,1{
1
44
2
4
}3,2,1{
0
44
1
4
4
0
4
=≤==
=
+
+
+=
+=
=
+
+
+=
+=
=
+
+
+=
+=
=
+
+
+=
+=
=
+
+
+=
+=
=
+
+
+=
+=
==
∑
∑
∑
∑
∑
∑
∈∀
∈∀
∈∀
∈∀
∈∀
∈∀
TWW
TWCW
TWCW
TWCW
TWCW
TWCW
TWCW
CW
j j
j j
j j
j j
j j
j j
Análisis de planificabilidad:Test de Tiempo de Finalización
jihpj j
iii C
T
WCW ⋅
+= ∑
∈ )(
Planificadores
![Page 67: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/67.jpg)
Lyu & Layland
1. Tareas son periodicas, no se autosuspenden, plazos de entrega igual al periodo con plazos arbitrarios
2. Pueden ser expulsadas, cambio de contexto is despreciable
3. Tareas son independientes. El peor caso es conocido (WCET).
Análisis de Planificabilidad
Determinación off-line de si el sistema va a cumplir las restricciones temporales
Supuestos iniciales
Planificadores
![Page 68: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/68.jpg)
Deadline Monotonic (DM)
Cuando se tienen plazos arbitrarios (Di <=Ti) hay una forma óptima de asignar prioridades: Monotónico con el plazo.
Asignación de prioridades
• Asigna prioridades inversamente proporcionales al plazo de finalización.
• Se puede emplear el test de los plazos de finalización para garantizar la planificabilidad.
• El RM se convierte en un caso especial del DM (en el que los plazos son iguales al periodo).
• El RM es óptimo entre los planificadores estáticos.
Si un conjunto de tareas con prioridades asignadas según el DM no es planificable, entonces ninguna otra forma de asignar prioridades lo hará planificable
DM
RM
Planificadores
![Page 69: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/69.jpg)
•Cuando existen plazos menores que el periodo.•Asignación de prioridades por orden creciente de plazo.•Prioridad más alta al menor plazo.
Análisis de Planificación
Los tiempos de finalización se calculan de la misma forma, pero la condición de planificación considera el plazo en vez del periodo.
Condición de terminación:
Condición de cumplimiento:
ii CW =0
jihpj j
ni
in
i CT
WCW ∑
∈
+
+=
)(
1
ni
ni WW =+1
in
i DW ≤+1
Planificadores
![Page 70: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/70.jpg)
Resumen1. Se parte de un conjunto de tareas periódicas en el que:
• las aperiódicas críticas => periódicas• Las aperiódicas no críticas => agrupan en servidores
aperiódicos2. Se asignan prioridades a las tareas según distintos criterios
• Importancia semántica• Monotónico con el plazo (periodo)
3. Se asignan prioridades a los recursos compartidos (techo de prioridad)
4. Se determina la planificabilidad del sistema1. Mediante el test de utilización (sólo en el caso de plazos =
periodos y asignación monotónica)2. Mediante el test de finalizaciónSi el sistema no es planificable se puede incrementar los periodos ya
que el periodo de una tarea está dentro de un rango.
Planificadores
![Page 71: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/71.jpg)
Lyu & Layland
1. Tareas son periodicas, no se autosuspenden, plazos de entrega igual al periodo con plazos arbitrarios
2. Pueden ser expulsadas, cambio de contexto is despreciable
3. Tareas son independientes. El peor caso es conocido (WCET).
Análisis de Planificabilidad
Determinación off-line de si el sistema va a cumplir las restricciones temporales
Supuestos iniciales
Planificadores
![Page 72: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/72.jpg)
Lyu & Layland
1. Tareas son periodicas, no se autosuspenden, plazos de entrega igual al periodo con plazos arbitrarios
2. Pueden ser expulsadas, cambio de contexto is despreciable
3. Tareas son independientes. El peor caso es conocido (WCET).
Análisis de Planificabilidad
Determinación off-line de si el sistema va a cumplir las restricciones temporales
Supuestos iniciales
Planificadores
![Page 73: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/73.jpg)
Requerimientos del Sistema
Especificación
Diseño
ImplementaciónTécnica global
Modelo de Diseño Formal
![Page 74: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/74.jpg)
Requisitos del Sistema
Especificación Implementación
Basado en componentes
Especificación global
Modelo de Diseño Formal
![Page 75: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/75.jpg)
Modelo de Diseño Formal
![Page 76: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/76.jpg)
Modelo de Diseño Formal
![Page 77: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/77.jpg)
Los componentes se definen como elementos con atributos, comportamientos y estados, a disposición del usuario para especificar y diseñar un sistema. En términos generales, representan lugares de cómputo.
+-
Modelo de Diseño Formal
![Page 78: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/78.jpg)
Modelo de Diseño Formal
Requisitos básicos:
Describir el diseño empleando las técnicas de desarrollo para sistemas orientado a objetos.Representar aspectos de la solución del problema relacionado con la estructura y funcionalidad del diseño.Soportar los aspectos de reusabilidad del software.Permitir definir soluciones a los problemas de restricciones temporales y estar bien definidos en el dominio de los sistemas de control en tiempo real. Soportar un estilo arquitectónico para el diseño de aplicaciones
Componentes
![Page 79: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/79.jpg)
Descripción
Nombre: NOMBRE DEL COMPONENTE
Interfaz Ofrecida: Requerimientos:Servicios que ofrece Servicios requeridos
Parámetros de configuración:Parámetros necesarios de configuración y/o atributos del componente
Servicios ofrecidos:Lista de servicios o posibilidades ofrecidas por el componente
ServiciosOfrecidos
ServiciosRequeridos
Configuración
NOMBRE
Modelo de Diseño Formal
Componentes
![Page 80: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/80.jpg)
Actividades
Mecanismos de coordinación
Específicos
Genéricos
Sincronización
Comunicación
Entrada/Salida
Código
Periódica
Periódica con plazo de entrega
Periódica con computación opcional
Periódica con cambio de modo
Aperiódica
Servidora
Barrera
Señal
Cerrojo
Pulso
Evento
Cita
Almacén limitado
Pizarra
Buzón
Multiemisión
Dato compartido
Transportador
Interrupción frecuencia fija
Interrupción intervalo temporal
Convertidor muestreo
Convertidor interrupción
Selección temporizada
Selección múltiple
Secuencia
Pasivo simple
Lector/Escritor
Protegido genérico
Caracterización de Componentes
![Page 81: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/81.jpg)
Modelo de Diseño Formal
![Page 82: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/82.jpg)
HLTPN
Características:
Definición:
HLTPN es una tupla (P,T,pre, post), donde:
P: Lugares
T: TransicionesTPpre ×⊆PTpost ×⊆
![Page 83: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/83.jpg)
Análisis y Verificación Formal
Tareas periódicas
![Page 84: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/84.jpg)
Análisis y Verificación Formal
![Page 85: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/85.jpg)
Análisis y Verificación Formal
Tareas periódicas con computación opcional
![Page 86: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/86.jpg)
Análisis y Verificación Formal
Planificador Expulsivo Basado en Prioridades (POSIX)
![Page 87: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/87.jpg)
Análisis y Verificación Formal
![Page 88: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/88.jpg)
Análisis y Verificación Formal
![Page 89: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/89.jpg)
Análisis y Verificación Formal
![Page 90: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/90.jpg)
Análisis y Verificación Formal
![Page 91: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/91.jpg)
T 1 _ 1
T 1 _ 2
T 1 _ 3 T 1 _ 4
T 1 _ 5
T 1 _ 6
T 1 _ 7
T 1 _ 9
t r 3 _ 1 0
t r 1 _ 1
t r 1 _ 3 t r 1 _ 2
t r 1 _ 4 t r 1 _ 5
t r 1 _ 6
t r 1 _ 8
T 3 _ 1 3
W B 1 C t e r B 1
C t B 1
P A B 1
e B 1
l B 1
f u l l B 1 = 0 B 1 E x i t B 1
T 2 _ 1
T 2 _ 2
T 2 _ 3 T 2 _ 4
T 2 _ 5
T 2 _ 6
T 2 _ 7
T 2 _ 9
S _ T 3
t r 2 _ 1
t r 2 _ 3 t r 2 _ 2
t r 2 _ 4
t r 2 _ 5
t r 2 _ 6
t r 2 _ 8
t r 2 _ 9
T 3 _ 1
T 3 _ 2
T 3 _ 3 T 3 _ 4
T 3 _ 5
T 3 _ 7
T 3 _ 9
S C H A
s t 2 _ 1
t r 3 _ 1
t r 3 _ 3 t r 3 _ 2
t r 3 _ 4
t r 3 _ 6
t r 3 _ 7
t r 3 _ 9
s t 2 _ 2
E x i t L 1
T 3 _ 8
L L 1
S C H C
P R O C
s c h 5
s c h 1
T L 1
s c h 7
e v a l 1 _ T 2
S t a t e L 1
T W L 1 e L 1
a r r i v a l L 1
e v a l 1 _ T 1
e v a l L 1
e v a l 1 _ T 3
S C H B
e v a l 2 _ T 3
e v a l 2 _ T 2
t r 3 _ 8
e v a l 2 _ T 1
s c h 3 s c h 4 S C H O R D
S C H D
T 3 _ 1 0
s c h 2
S C H E
S C H F
s c h 6
n o n _ a s s i g n
E F O P R W 1
P 8 0
T I 1
t r 1 _ 7
T 1 _ 8
T 2 _ 1 0
t r 2 _ 7
T 2 _ 8
S C 1
e r w C 1
E x i t F O P R W 1
E P O P R W 1
T F 1
T A 1
R W C 1
E x i t R W C 1 E x C 1
C R W 1 r C 1
l C 1
w C 1
s t 1 _ 1
s t 1 _ 2
T I 2
S _ T 1
S e n t e n c e s 1
t r 1 _ 1 0
t r 3 _ 5
T 3 _ 6
T 1 _ 1 1
P O P R W 13
E x i t P O P R W 1
B u f O P R W 1
R e q O P R W 1
W a i t O P R W 1
E m p t y O P R W 1 F O P R W 12
C t F O P R W 1
E x e c F O P R W 1
e _ F O P R W 1
e _ P O P R W 1
s e l O P R W 1
c a l l F 1 O P R W 1
c a l l F 2 O P R W 1 n F O P R W 1
R e c O P R W 1
E n d F O P 1
C a l l P O P R W 1
E x e c P O P R W 1
e n d P O P R W 1
t r 1 _ 9 T 1 _ 1 0
t r 1 _ 1 1 T 1 _ 1 2
t r 1 _ 1 2 T 1 _ 1 3
T F 2
T A 2
s t 3 _ 1
s t 3 _ 2
S e n t e n c e s 2
T I 3 T F 3
T A 3
s t 1 _ 3
s t 2 _ 3
s t 3 _ 3
s e n t 2 t r 2 _ 1 0
T 2 _ 1 1
t r 2 _ 1 1 T 2 _ 1 2
t r 2 _ 1 2 T 2 _ 1 3
S _ T 2
E x i t S e n t 2
s e n t 1
E x i t S e n t 1
T 1 1
T 1 2
T 2 1
T 2 2
T 3 1
T 3 2
S e n t e n c e s 3
E x i t S e n t 3
S e n t 3
T 3 _ 1 1
t r 3 _ 1 1 T 3 _ 1 2
t r 3 _ 1 2
Análisis y Verificación Formal
![Page 92: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/92.jpg)
Análisis y Verificación Formal
![Page 93: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/93.jpg)
Análisis y Verificación Formal
![Page 94: Análisis y Verificación Formal de Planificadores para ... · PDF fileTécnicas de descripción formal Uso de notaciones y marcos de razonamiento formales para ... activación y el](https://reader031.vdocuments.mx/reader031/viewer/2022022003/5a9eaace7f8b9a67178bb2c5/html5/thumbnails/94.jpg)
www.themegallery.com