– 15 DISEÑO DE LA ARQUITECTURA LÓGICA
Reglas de descomposición jerárquica
– 16 DISEÑO DE LA ARQUITECTURA LÓGICA
Reglas de uso
– 17 DISEÑO DE LA ARQUITECTURA FÍSICA
Trasladar el diseño lógico a los recursos físicos del entorno de ejecución Asegurar cumplimiento de requisitos no funcionales
Necesitamos Diseño que facilite el análisis Medio para predecir el comportamiento del diseño en la plataforma (hw, kernel)
Ejemplo Compatibilidad del diseño HRT-HOOD con el análisis de prioridades estáticas y políticas expulsoras
– 18 DISEÑO DE LA ARQUITECTURA FÍSICA
Actividades
Asignación de objetos a procesadores Por ejemplo, ubicar los objetos que controlan dispositivos en los nodos donde residan los controladores de dichos dispositivos
Planificación de las comunicaciones Planificar la red de comunicaciones para limitar los retardos de los mensajes
Planificación de procesadores Determinar la planificación que asegura el cumplimiento de plazos de los objetos
Estudio de fiabilidad Decidir si se utiliza tolerancia a fallos hardware, réplica de objetos
– 19 DISEÑO DE LA ARQUITECTURA FÍSICA
Atributos de tiempo real de los objetos Deadline Cada objeto cíclico o esporádico puede tener definido un plazo para su ejecución
Operation_WCET Cualquier operación visible desde otro objeto debe tener definido su tiempo de ejecución para el caso peor
Operation_Budget Cualquier operación visible desde otro objeto puede tener definido un límite de ejecución. Si se sobrepasa dicho límite se ejecuta un tratamiento de error definido en el objeto. (WCET = Tiempo límite + tratamiento de errores)
Thread_WCET (Peor caso de tiempo de ejecución de tareas C y S)
Thread_Budget (Límite de ejecución de tareas C y S)
– 20 DISEÑO DE LA ARQUITECTURA FÍSICA
Atributos de tiempo real de los objetos
Period Cada objeto cíclico tiene definido su periodo de ejecución
Offset Tiempo que un thread cíclico debe esperar antes de empezar su operación
Minimun_Arrival_Time Cada tarea esporádica debe tener definido su tiempo mínimo entre llegadas
Precedence_Constraints Un thread puede tener restricciones de precedencia asociadas a su ejecución
– 21 DISEÑO DE LA ARQUITECTURA FÍSICA
Atributos de tiempo real de los objetos
Priority Cada tarea cíclica y esporádica puede tener definida su prioridad de acuerdo con la teoría de planificación que se sigue
Execution_Transformation Un objeto cíclico o esporádico puede necesitar ser transformado en tiempo de ejecución para incorporar retardos extras. Por ejemplo, para modificar su periodo
Importance Los objetos cíclicos y esporádicos pueden tener definida la importancia de sus threads dentro del sistema(por ejemplo, hard o soft)
– 22 DISEÑO DE LA ARQUITECTURA FÍSICA
Resultados
Cada objeto tiene definidos sus atributos
Análisis del sistema
– 23 TRADUCCIÓN A LENGUAJE ADA
Cada objeto HRT-HOOD se transforma en un paquete ADA95
with Otro; Package Objeto is … Procedure Op1; Procedure Op2; … end Objeto;
with Otro; Package body Objeto is … Procedure Op1 is … Procedure Op2 is … … end Objeto;
T Objeto Op1 Op2
(Gp:) Otro
Datos-1
– 24 TRADUCCIÓN A LENGUAJE ADA
Objeto Activo Paquete con paquetes hijos
with Otro; Package Padre is — ACTIVO … Procedure Op1; Procedure Op2; … end Padre;
private Package Padre.Hijo_A is … Procedure OP_A1(…); end Padre.Hijo_A;
private Package Padre.Hijo_B is … Procedure OP_B1(…); Procedure OP_B2(…); end Padre.Hijo_B;
with Padre.Hijo_A; Padre.Hijo_B; Package body Padre is — ACTIVO … Procedure Op1 renames Hijo_A.Op_A1; Procedure Op2 renames Hijo_B.Op_B1; … end Padre;
A Padre A Hijo_A Op_A1
Datos-1 A Hijo_B Op_B1 Op_B2
Op1 Op2
– 25
Objeto Cíclico Paquete con Tarea Periódica
Package Objeto_C_1 is — CICLICO … end Objeto_C_1;
with B; Package body Objeto_C_1 is — CICLICO … task Periodica is pragma_priority (Prioridad); end periodica; … task body Periodica is begin loop … Sgte := Sgte + Periodo; delay until Sgte; end loop; end Periodica; … end Objeto_C_1; TRADUCCIÓN A LENGUAJE ADA C Objeto_C_1 Datos-1 (Gp:) B
– 26 TRADUCCIÓN A LENGUAJE ADA
Objeto Esporádico Paquete con Tarea Esporádica y Rut_Interrup.
Package Objeto_S_1 is — ESPORADICO … protected Interrup is pragma priority (Prioridad) procedure Rut_Tratamto; entry Esperar; private … end Interrup; … end Objeto_2 ;
with C; Package body Objeto_S_1 is — ESPORADICO protected body Interrup is … end Interrup; … task body Thread is begin loop Interrup.Esperar; … end loop; end Thread; … end Objeto_S_1 ;
S Objeto_S_1 Datos-1 (Gp:) C
– 27 TRADUCCIÓN A LENGUAJE ADA
Objeto Protegido Paquete con Objeto Protegido
Package Objeto_Pr is — PROTEGIDO … protected Nombre_Obj is pragma priority (Techo_Prioridad); procedure Operacion_O21; procedure Operacion_O22; private … Dato: Tipo_Dato := Valor_Inicial; procedure Proc_Privado(…); end Nombre_Obj; … end Objeto_Pr ;
Package Objeto_Pr is — PROTEGIDO … protected body Nombre_Obj is … end Nombre_Obj; … end Objeto_Pr ;
Pr Objeto-Pr Operacion-O21 Operacion-O22
Página anterior | Volver al principio del trabajo | Página siguiente |