+ All Categories
Home > Documents > J. García Martín 30/06/2015 - 1 SISTEMAS DE TIEMPO REAL Diseño de Sistemas de Tiempo Real....

J. García Martín 30/06/2015 - 1 SISTEMAS DE TIEMPO REAL Diseño de Sistemas de Tiempo Real....

Date post: 24-Jan-2016
Category:
Upload: santiago-de-la-cruz-montes
View: 221 times
Download: 0 times
Share this document with a friend
Popular Tags:
28
J. García Martín 06/15/22 - 1 SISTEMAS DE TIEMPO REAL Diseño de Sistemas de Tiempo Real. HRT-HOOD
Transcript
Page 1: J. García Martín 30/06/2015 - 1 SISTEMAS DE TIEMPO REAL Diseño de Sistemas de Tiempo Real. HRT-HOOD.

J. García Martín 04/21/23 - 1

SISTEMAS DE TIEMPO REAL

Diseño de Sistemas de Tiempo Real. HRT-HOOD

Page 2: J. García Martín 30/06/2015 - 1 SISTEMAS DE TIEMPO REAL Diseño de Sistemas de Tiempo Real. HRT-HOOD.

J. García Martín 04/21/23 - 2

INDICE

• INTRODUCCIÓN

• VISIÓN GENERAL DE HRT-HOOD

• DISEÑO DE LA ARQUITECTURA LÓGICA

• DISEÑO DE LA ARQUITECTURA FÍSICA

• TRADUCCIÓN A LENGUAJE ADA

Page 3: J. García Martín 30/06/2015 - 1 SISTEMAS DE TIEMPO REAL Diseño de Sistemas de Tiempo Real. HRT-HOOD.

J. García Martín 04/21/23 - 3

INTRODUCCIÓN

¿Qué es HRT-HOOD?HOOD

Hierarchical Object Oriented Design Soportado por ESA (European Space Agency)

HRT-HOOD Hard Real Time HOOD Diseñado como parte de un proyecto ESA (European Space Agency)

El sistema se diseña como un conjunto de objetos abstractos

Descomposición jerárquica de los objetos

Se asocia una serie de atributos de tiempo real a cada objeto

Introduce restricciones en la descomposición para permitir un análisis temporal al final del diseño (prioridades fijas o EDS)

Page 4: J. García Martín 30/06/2015 - 1 SISTEMAS DE TIEMPO REAL Diseño de Sistemas de Tiempo Real. HRT-HOOD.

J. García Martín 04/21/23 - 4

INTRODUCCIÓN

Diseño Orientado a Objetos

Abstracción, ocultación de información y encapsulado

Un objeto se define por los servicios que ofrece

Se ocultan los detalles internos

Descomposición Jerárquica

Un objeto “padre” se puede descomponer en objetos “hijo”

Estructura el Control

Las operaciones en los objetos se activan mediante flujos de control (threads)

Puede haber varios threads operando simultáneamente en un objeto

Page 5: J. García Martín 30/06/2015 - 1 SISTEMAS DE TIEMPO REAL Diseño de Sistemas de Tiempo Real. HRT-HOOD.

J. García Martín 04/21/23 - 5

VISIÓN GENERAL DE HRT-HOOD

Características que debe tener el método

Reconocer los tipos de actividades/objetos propios de los STR

(actividades cíclicas, esporádicas etc.)

Integración de paradigmas de planificación con el proceso de diseño

Definición de requisitos temporales de los objetos

Definición de los requisitos de fiabilidad de cada objeto

Definición de la importancia relativa de cada objeto en el sistema

Soporte a diferentes modos de operación

Definición de objetos para el control de recursos

Descomposición que facilite la ubicación en procesadores

Descomposición que facilite el análisis de planificabilidad

Page 6: J. García Martín 30/06/2015 - 1 SISTEMAS DE TIEMPO REAL Diseño de Sistemas de Tiempo Real. HRT-HOOD.

J. García Martín 04/21/23 - 6

Ciclo de vida “clásico” para desarrollo software

Etapas en secuencia

Cada etapa comienza al terminar la anterior

Pruebas al final de realización

Detección de errores tardía

(ojo errores de requisitos temporales)

Vuelta atrás costosa

VISIÓN GENERAL DE HRT-HOOD

t

DiseñoArquitectónico

ImplementaciónCódigo

PruebasIndividuales

DiseñoDetallado

DefiniciónRequisitos

PruebasIntegración

PruebasSistema

Page 7: J. García Martín 30/06/2015 - 1 SISTEMAS DE TIEMPO REAL Diseño de Sistemas de Tiempo Real. HRT-HOOD.

J. García Martín 04/21/23 - 7

Obligaciones, compromisos y restricciones

Obligaciones

Propiedades que se desarrollarán en próximos niveles de diseño

Compromisos

Propiedades que no se podrán cambiar en próximos

niveles de diseño

Restricciones

Recursos: Velocidad CPU, Ancho de Banda etc.

Mecanismos: Prioridad interrupciones, política planificación etc.

Proceso de refinamiento del diseño

Va transformando obligaciones en compromisos

VISIÓN GENERAL DE HRT-HOOD

Obligaciones(Obligations)

Restricciones(Constraints)

Compromisos(Commitments)

Requisitos(Requeriments)

Entorno deEjecución

Page 8: J. García Martín 30/06/2015 - 1 SISTEMAS DE TIEMPO REAL Diseño de Sistemas de Tiempo Real. HRT-HOOD.

J. García Martín 04/21/23 - 8

VISIÓN GENERAL DE HRT-HOOD

Ciclo de vida de un STR

Diseño Arquitectura Lógica

Implementación Código(Estimación de tiempos)

Pruebas(Medidas de tiempos)

Diseño Detallado

Definición Requisitos

Diseño Arquitectura Físca(Análisis Planificabilidad)

Restricciones del Entornode Ejecución

Restricciones del Entornode Ejecución

Page 9: J. García Martín 30/06/2015 - 1 SISTEMAS DE TIEMPO REAL Diseño de Sistemas de Tiempo Real. HRT-HOOD.

J. García Martín 04/21/23 - 9

DISEÑO DE LA ARQUITECTURA LÓGICA

Representación de un objeto

T Nombre_del_Objeto

Operacion-1Operacion-2

Objeto-Tio

T Hijo-1

Operacion

Datos-1

T Hijo-2

Operacion

Datos-2

Page 10: J. García Martín 30/06/2015 - 1 SISTEMAS DE TIEMPO REAL Diseño de Sistemas de Tiempo Real. HRT-HOOD.

J. García Martín 04/21/23 - 10

DISEÑO DE LA ARQUITECTURA LÓGICA

Tipos de objetos Pasivos

Objetos que no tienen control cuando se invocan sus operaciones

No invocan operaciones de otros objetos espontáneamente

Protegidos

Pueden tener control cuando invocan una de sus operaciones (exclusión mutua)

No invocan operaciones de otros objetos espontáneamente

Influyen en el tiempo de bloqueo de los procesos que le invocan

Activos

Pueden tener control cuando invocan una de sus operaciones

Pueden invocar espontáneamente operaciones de otros objetos

Objetos de tipo general que no tiene restricciones

Siempre se descompone en objetos “hijos”

Page 11: J. García Martín 30/06/2015 - 1 SISTEMAS DE TIEMPO REAL Diseño de Sistemas de Tiempo Real. HRT-HOOD.

J. García Martín 04/21/23 - 11

DISEÑO DE LA ARQUITECTURA LÓGICA

Tipos de objetos

Cíclicos

Representan actividades periódicas

Pueden invocar espontáneamente operaciones de otros objetos

Solo ofrecen operaciones que requieran una atención inmediata (ATC)

Esporádicos

Representan actividades esporádicas

Pueden invocar espontáneamente operaciones de otros objetos

Solo ofrecen una operación para ser invocada por otros objetos (Start)

y una o mas operaciones que requieran atención inmediata (ATC)

Page 12: J. García Martín 30/06/2015 - 1 SISTEMAS DE TIEMPO REAL Diseño de Sistemas de Tiempo Real. HRT-HOOD.

J. García Martín 04/21/23 - 12

DISEÑO DE LA ARQUITECTURA LÓGICA

Proceso de refinamiento de diseño

Comienzo

Uno o varios objetos Activos y algún Pasivo

Proceso de descomposición

Aparecen más objetos Activos y Pasivos

Aparecen objetos Cíclicos, Esporádicos y Protegidos

Nivel terminal de refinamiento

Solo contiene: Pasivos; Protegidos; Cíclicos; Esporádicos

Page 13: J. García Martín 30/06/2015 - 1 SISTEMAS DE TIEMPO REAL Diseño de Sistemas de Tiempo Real. HRT-HOOD.

J. García Martín 04/21/23 - 13

DISEÑO DE LA ARQUITECTURA LÓGICA

Proceso de refinamiento de diseño

A Sistema

A Subsistema-1

Operación-11

Datos-1

A Subsistema-2

Operación-21Operación-22

C Tarea-1

Pa Objeto-1

Operación-O11Operación-O12

Datos-3

Datos-2

Dispositovo2

Dispositovo3

Dispositovo1

Page 14: J. García Martín 30/06/2015 - 1 SISTEMAS DE TIEMPO REAL Diseño de Sistemas de Tiempo Real. HRT-HOOD.

J. García Martín 04/21/23 - 14

DISEÑO DE LA ARQUITECTURA LÓGICA

Proceso de refinamiento de diseño

A Subsistema-2

S Tarea-2

Start

C Tarea-3

Pr Objeto-2

Operación-O21Operación-O22

Datos-21

Operación-21Operación-22

Datos-22Subsistema-1

Datos-1

Page 15: J. García Martín 30/06/2015 - 1 SISTEMAS DE TIEMPO REAL Diseño de Sistemas de Tiempo Real. HRT-HOOD.

J. García Martín 04/21/23 - 15

DISEÑO DE LA ARQUITECTURA LÓGICA

Proceso de refinamiento de diseño

Un objeto Cíclico o Esporádico terminal contiene un solo thread (tarea) que se planifica en tiempo de ejecución

Un objeto Protegido proporciona datos compartidos por tareas cíclicas y/o esporádicas, ofreciendo exclusión mutua

Un objeto Pasivo es un objeto accedido por un solo thread (tarea), o bien, por varios sin que puedan existir problemas de accesos concurrentes indebidos

Page 16: J. García Martín 30/06/2015 - 1 SISTEMAS DE TIEMPO REAL Diseño de Sistemas de Tiempo Real. HRT-HOOD.

J. García Martín 04/21/23 - 16

DISEÑO DE LA ARQUITECTURA LÓGICA

Reglas de descomposición jerárquica

HijosPadre

Activo Cíclico Esporádico Protegido Pasivo

Activo

Cíclico

Esporádico

Protegido

Pasivo

Page 17: J. García Martín 30/06/2015 - 1 SISTEMAS DE TIEMPO REAL Diseño de Sistemas de Tiempo Real. HRT-HOOD.

J. García Martín 04/21/23 - 17

DISEÑO DE LA ARQUITECTURA LÓGICA

Reglas de uso

UsadoUtilizador

Activo Cíclico Esporádico Protegido Pasivo

Activo

Cíclico SóloASER

Esporádico SóloASER

Protegido SóloASER

SóloATC

SóloATC/Start

Pasivo

ASER = Asynchronous Execution Request

Page 18: J. García Martín 30/06/2015 - 1 SISTEMAS DE TIEMPO REAL Diseño de Sistemas de Tiempo Real. HRT-HOOD.

J. García Martín 04/21/23 - 18

DISEÑO DE LA ARQUITECTURA FÍSICA

Objetivos

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

Page 19: J. García Martín 30/06/2015 - 1 SISTEMAS DE TIEMPO REAL Diseño de Sistemas de Tiempo Real. HRT-HOOD.

J. García Martín 04/21/23 - 19

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

Page 20: J. García Martín 30/06/2015 - 1 SISTEMAS DE TIEMPO REAL Diseño de Sistemas de Tiempo Real. HRT-HOOD.

J. García Martín 04/21/23 - 20

DISEÑO DE LA ARQUITECTURA FÍSICA

Atributos de tiempo real de los objetosDeadline

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)

Page 21: J. García Martín 30/06/2015 - 1 SISTEMAS DE TIEMPO REAL Diseño de Sistemas de Tiempo Real. HRT-HOOD.

J. García Martín 04/21/23 - 21

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

Page 22: J. García Martín 30/06/2015 - 1 SISTEMAS DE TIEMPO REAL Diseño de Sistemas de Tiempo Real. HRT-HOOD.

J. García Martín 04/21/23 - 22

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)

Page 23: J. García Martín 30/06/2015 - 1 SISTEMAS DE TIEMPO REAL Diseño de Sistemas de Tiempo Real. HRT-HOOD.

J. García Martín 04/21/23 - 23

DISEÑO DE LA ARQUITECTURA FÍSICA

Resultados

Cada objeto tiene definidos sus atributos

Análisis del sistema

Page 24: J. García Martín 30/06/2015 - 1 SISTEMAS DE TIEMPO REAL Diseño de Sistemas de Tiempo Real. HRT-HOOD.

J. García Martín 04/21/23 - 24

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

Op1Op2

Otro

Datos-1

Page 25: J. García Martín 30/06/2015 - 1 SISTEMAS DE TIEMPO REAL Diseño de Sistemas de Tiempo Real. HRT-HOOD.

J. García Martín 04/21/23 - 25

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_B1Op_B2

Op1Op2

Page 26: J. García Martín 30/06/2015 - 1 SISTEMAS DE TIEMPO REAL Diseño de Sistemas de Tiempo Real. HRT-HOOD.

J. García Martín 04/21/23 - 26

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 ispragma_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

B

Page 27: J. García Martín 30/06/2015 - 1 SISTEMAS DE TIEMPO REAL Diseño de Sistemas de Tiempo Real. HRT-HOOD.

J. García Martín 04/21/23 - 27

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

C

Page 28: J. García Martín 30/06/2015 - 1 SISTEMAS DE TIEMPO REAL Diseño de Sistemas de Tiempo Real. HRT-HOOD.

J. García Martín 04/21/23 - 28

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-O21Operacion-O22


Recommended