Sistemas en tiempo real.

17
Republica Bolivariana de Venezuela Universidad Fermín Toro Decanato de Ingeniería Sistemas en tiempo rea Integrante: Jesús Baptista CI: 20.768.224 Cabudare, Agosto de 2014

description

Definición de sistemas en tiempo real y Diseño de un sistema en tiempo real.

Transcript of Sistemas en tiempo real.

Page 1: Sistemas en tiempo real.

Republica Bolivariana de VenezuelaUniversidad Fermín ToroDecanato de Ingeniería

Sistemas en tiempo real

Integrante: Jesús BaptistaCI: 20.768.224

Cabudare, Agosto de 2014

Page 2: Sistemas en tiempo real.

Sistemas de tiempo real

1. Introducción 2. Definición 3. Caracterización 4. Diseño de sistema en tiempo real

Page 3: Sistemas en tiempo real.

Introducción

Forman parte constituyente de otros sistemas con los que intercambian datos y señales, y sobre los que realizan funciones de control.• Combinan Hardware, Software y Comunicaciones pero tienen recursos limitados. • Son reactivos con el entorno control, percepción, reconocimiento adaptabilidad .• Computacionalmente activos .• Conectan el mundo físico con el mundo virtual.Distinguimos dos subsistemas: sistema controlado o entorno (teléfono, coche, fábrica) .• tiene una dinámica propia, que sólo es parcialmente modificada sistema de control: suele estar basado en un microprocesador .• su programación es más flexible. • adapta su funcionamiento al sistema controlado, del cual recibe información mediante sensores.• opera sobre el sistema controlado mediante actuadores.

Page 4: Sistemas en tiempo real.

Definición1.Cualquier sistema en el que el instante en el que se produce la salida es significativo. Esto suele deberse a que la entrada se corresponde a algún movimiento en el mundo físico y la salida tiene que estar relacionada con ese mismo movimiento. Para una puntualidad aceptable el lapso entre la entrada y la salida debe ser lo suficientemente pequeño (Oxford Diccionario of Computing) 2. Un sistema al que se exige que reaccione a estímulos de su entorno (incluido el paso del tiempo físico) dentro de intervalos de tiempo dictados por el entorno (proyecto PDCS) 3. Tiempo real es la capacidad de un sistema operativo de proporcionar el nivel exigido de servicio en un tiempo de respuesta acotado (norma POSIX 1003.1c) Un sistema de tiempo real es un sistema informático que: – interacciona repetidamente con su entorno físico – responde dentro de un plazo de tiempo determinado a los estímulos que recibe del entorno .

Page 5: Sistemas en tiempo real.

DefiniciónHay muchos sistemas en los que: el usuario introduce un comando y espera una respuesta rápida pero no suele ser dramático si la respuesta no es inmediata no dar una respuesta a tiempo no se considera dar una respuesta errónea

• Distinción fundamental entre los sistemas que son y los que no son de tiempo real: la exactitud de un sistema de tiempo real depende no sólo de los resultados lógicos de la computación, sino también del instante en el que se producen los resultados en los sistemas de tiempo real puede no valer nada la realización de una acción, aunque sea la correcta, si se hace fuera de tiempo .• incluso puede ser indeseable .

Page 6: Sistemas en tiempo real.

Definición

Los sistemas de tiempo real exigen un comportamiento analizable y predecible: todo debe funcionar según los plazos previstos, en los instantes de tiempo adecuados

• Acciones del sistema en intervalos de tiempo bien definidos el diseño y la realización de sistemas de tiempo real revista una dificultad especial

• No basta con que el sistema sea rápido, sino que debe ser determinista, es decir, su comportamiento debe ser el correcto en cualquier circunstancia, incluso cuando esté sobrecargado.

• Todo esto implica un gran conocimiento de las características de la aplicación y del entorno del Sistema.

Page 7: Sistemas en tiempo real.

Caracterización

Page 8: Sistemas en tiempo real.

Ordenador empotrado generalizado

Page 9: Sistemas en tiempo real.

PlanificarPlanificar un sistema: decidir qué función debe estar realizando el sistema en cada instante de tiempo .

• Se llama tarea a cada uno de los módulos software que se pueden invocar para realizar un función concreta mínima unidad de planificación de un sistema. • Algoritmo de planificación: conjunto de reglas que determinan qué tarea se debe ejecutar en cada instante Tema 10 Introducción a los Sistemas de Tiempo Real.

Dos instantes determinan una tarea: Activación o invocación: instante en el que ocurre el evento antes del cual la tarea no podría ejecutarse, y, a partir del cual, la tarea ya está preparada para su ejecución. Plazo: instante llegado el cual la tarea debe haber completado toda su computación.

Page 10: Sistemas en tiempo real.

Planificar• En el análisis de su comportamiento, denominamos: Tiempo de respuesta de una tarea al intervalo de tiempo transcurrido entre su invocación y el final de su respuesta tardanza de una tarea es el retardo producido desde su plazo hasta el final de su respuesta.

Atendiendo a la adecuación entre su tiempo de respuesta y su plazo: tarea de tiempo real estricto (hard).

• debe cumplir siempre sus plazos (su tardanza ha de ser siempre menor o igual que cero). De no ser así, los resultados son catastróficos (Ej. UCI) tarea de tiempo real flexible (soft).

• de no cumplir su plazo, la tarea sigue siendo válida, si bien su valor va decreciendo paulatinamente (Ej. GPS) tarea de tiempo real firme: • si llegado su plazo, no ha terminado, se descarta la tarea sin producir ningún resultado (Ej. pérdida de una trama de audio o vídeo).

Page 11: Sistemas en tiempo real.

Diseño de sistema en tiempo real

•Especificación de requisitos •Prueba •Diseño de prototipos •Interacción humano-ordenador

Page 12: Sistemas en tiempo real.

Especificación de requisitos

Se define la funcionalidad del sistema – comportamiento temporal – requisitos de fiabilidad – comportamiento ante fallos • Se definen los tests de aceptación • Se define un modelo del entorno – tasa máxima de interrupciones – máximo número de objetos externos dinámicos – modos de fallo, ...

Page 13: Sistemas en tiempo real.

Prueba 1

La mayoría de los errores en los sistemas de tiempo real suelen ser el resultado de sutiles interacciones entre procesos.• Los errores suelen depender del tiempo y puede que sólo se manifiesten en estados poco comunes.• Los métodos de diseño apropiados hay que complementarlos con estrategias de prueba • Las pruebas no están restringidas al sistema final • Se deben estudiar todos los caminos que llevan a los errores detectados y el efecto de errores simultáneos.

Page 14: Sistemas en tiempo real.

Prueba 2

No sólo hay que probar el funcionamiento en un entorno correcto, ya que una incorrección del entorno puede producir un error.– se deben probar entornos arbitrariamente Incorrectos.• Un simulador es un programa que imita las acciones de un sistema en el que se ha instalado software de tiempo real.– un simulador es un entorno de prueba

Page 15: Sistemas en tiempo real.

Simuladores

Un simulador puede recrear tanto el comportamiento normal como el “anormal” de un sistema.

• Ciertos estados de error de un sistema sólo se pueden probar de forma segura mediante un simulador .– p.ej.: la fusión del núcleo de un reactor nuclear. • Los simuladores permiten repetir algunos experimentos que en la realidad no se podría.

Page 16: Sistemas en tiempo real.

Prototipos

Los fallos producidos en las fases iniciales del diseño de sistemas sólo se detectan cuando se presenta el producto o cuando se prueba. • Corregir esos fallos en fases tan avanzadas es costoso y consume mucho tiempo

• Mediante prototipos se pueden evitar esos problemas

Page 17: Sistemas en tiempo real.

Interacción humano-ordenadorMuchos sistemas de tiempo real implican la comunicación entre el programa que se ejecuta y operador(es) humano(s).

• El comportamiento humano introduce la mayor fuente de variación en un sistema.

• El diseño de una buena interfaz entre humanos y ordenadores tiene una importancia decisiva p.ej.: incidente en Three Mile Island

• La HCI (Human-Computer Interaction) es un elemento clave en la producción de Software.