Sistemas de Tiempo Real 1 Ctedra de Sistemas
- Slides: 42
Sistemas de Tiempo Real 1 Cátedra de Sistemas Operativos Avanzados
Objetivos 2 Explicar los requisitos de tiempo de sistemas de tiempo real Distinguir entre sistemas de Tiempo Real Hard and Soft Discutir las distintas características de sistemas en tiempo real. Describir los algoritmos de planificación para Tiempo Real Duro (Hard real time)
Sistemas de Tiempo Real 3 Características de Sistemas en Tiempo Real Implementación de Sistemas de Tiempo Real Planificación de CPU en Tiempo Real.
Ejemplos 4 Plantas químicas o nucleares. Control de complejos procesos de producción. Sistemas de conmutación de vías del ferrocarril. Aplicaciones automotrices. Sistemas de control de vuelo. Sistemas de telecomunicaciones. Automatización industrial. Robótica. Sistemas militares.
¿Qué tienen en común? 5 Llegan pedidos que deben ser procesados Rígidas limitaciones tiempo de atención No hay procesamiento de datos Tiempos de repuesta prefijados
Parámetros de una tarea 6 Criticidad: Criticidad parámetro relativo a la consecuencia de perder un deadline Valor vi: importancia relativa de la tarea Retraso Li: es el retraso para completar una tarea dentro de su deadline fi-di Tardanza Ei: es el tiempo en el que una tarea permanece activa después de su deadline. Laxitud Xi: Xi= di-ai-Ci
Parámetros de una tarea 7 Tiempo de arribo ai: es el tiempo en el cual la tarea llega a la cola de listos, también se lo denomina tiempo de requerimiento ri Tiempo de computo Ci: es el tiempo necesario para que el procesador ejecute la tarea sin interrupción. Deadline Absoluto di: es el tiempo en el que una tarea debe ser completada para prevenir el daño o la degradación de performance. Deadline Relativo Di: es la diferencia entre el deadline absoluto y el tiempo de requerimiento Di= di-ri Tiempo de Comienzo si: el tiempo en el que la tarea comienza a ejecutar. Tiempo de finalización fi: tiempo en el que una tarea finaliza su ejecución. Tiempo de respuesta Ri: es la diferencia entre el tiempo de finalización y el tiempo de requeriiento Ri= fi-ri 32
Conceptos erróneos más comunes 8 Muy a menudo, la aplicación de control con restricciones de tiempo estrictos son escritas en lenguaje assembler. Desventajas: Programación tediosa Eficiencia depende del programador. Código difícil de comprender. Dificultad de mantenimiento. Dificultad de verificación de los límites de tiempo.
Concepto de Tiempo 9 La exactitud de un sistema no depende únicamente de la lógica del resultado sino también de cuando es producido. La medida del tiempo debe ser igual a la del tiempo externo que controla.
Tiempo Real 10 La aplicación principal no es procesar información Equivale al 99% de la producción mundial Definición La diferencia entre el tiempo de entrada y el de salida debe ser de una temporalidad aceptable. Es aquel al que se le solicita que reaccione ante estímulos del entorno en intervalos de tiempo dictados por el entorno.
Tiempo Real 11 Tipos Estricto - HARD No Estricto-SOFT Tiempo Límite no alcanzable ocasionalmente Repuestas en tiempo límite Imperativo Puede haber más de un tiempo Límite El servicio se puede retardar
Limitaciones de los STR corrientes 12 Multitarea. Planificación basada en prioridades. Habilidad para responder rápidamente a las interrupciones externas. Mecanismos básico para comunicación y sincronización de procesos. Kernel pequeño y rápido context switch Soporte de un reloj en TR como una referencia de tiempo interna
13 Limitaciones de los STR corrientes Multitarea No toman en cuenta el tiempo Soporte de Programación concurrente System Calls Manejo de procesos Introducen retardo en la tareas en ejecución
Limitaciones de los STR corrientes 14 Planificación basada en prioridades Permiten distintas implementaciones Mecanismos Bastantes Flexibles Problemas con kernel con prioridades limitadas Respuesta Rápida a Interrupciones Externas Son Procesos de Alta Prioridad Deben tener la menor porción de código deshabilitada 128 o 256
Limitaciones de los STR corrientes 15 Mecanismos básico para comunicación y sincronización de procesos. Sin Protocolo de acceso Pueden causar efectos indeseables Inversión de Prioridades Kernel pequeño y rápido context switch Tiempo de respuesta promedio mejora No garantiza la atención de todas las tareas antes de su tiempo límite Menores funciones de predecibilidad Soporte de un reloj en TR Debe manejar tiempos críticos en actividades que interactúan con el ambiente
Características deseables 16 OPORTUNIDAD -TIMELINES- RESULTADO CORRECTO DISEÑO PARA MÁXIMA CARGA -PEAK LOAD- EN ESTAS CONDICIONES NO DEBEN COLAPSAR PREVISIBILIDAD -PREDICTABILITY- EL SISTEMA DEBE PODER PREDECIR LAS CONSECUENCIAS DE CUALQUIER DECISIÓN DE PLANIFICACIÓN EN EL DOMINIO DEL TIEMPO MANTENIMIENTO ESTRUCTURA FÁCIL DE ACEPTAR MODIFICACIONES TOLERANTE A FALLOS -FAULT TOLERANCEEL HW DEBE ESTAR PREPARADO PARA RESISTIR FALLOS
Lograr Previsibilidad 17 La propiedad más importante que debe tener un sistema en TR es la PREVISIBILIDAD El primer componente que afecta a la previsibilidad es el procesador en si mismo. DMA CACHE Además de: INTERRUPCIONES SYSTEM CALLS SEMAFOROS ADMINISTRACIÓN DE MEMORIA LENGUAJES DE PROGRAMACIÓN
Traducción Dirección de Memoria 18
Sistemas de Memoria Virtual en RTS 19 Traducción de direcciones puede ocurrir : Modo Real donde los programas generan las direcciones actuales (P=L). 2) Registro de Relocation (P=L+R). 3) Implementado virtual memory (P=L->TLB).
Implementando SO de Tiempo Real 20 En general, un Sistema Operativo en Tiempo Real debe proveer : Planificación por Prioridades, Preemptive Kernel Preemptive La latencia debe ser minimizada
Minimización de Latencia 21 Latency de Evento es la cantidad de tiempo desde que ocurre el evento hasta que es servido
Latencia de Interrupción 22 Es el período de tiempo desde que arriba una interrupción a la CPU hasta que es servida.
Latencia del dispatcher 23 Es la cantidad de tiempo requerida para que el planificador pare un proceso y cargue otro
Planificación no apropiativo 24 Dado un conjunto de tareas J={J 1, J 2, …JN} El planificador puede ser definido como una función: s: R+ N tal que V t e R+ E t 1, t 2 /t e [t 1, t 2] y V t´ e [t 1, t 2] s(t)=s(t´) s(t) es una función de paso entero s(t)=k k>0 significa que Jk se ejecuta en el tiempo t s(t)=0 CPU vacía.
Planificación apropiativa 25 HARD: una tarea se dice dura si en caso de completarse luego de su deadline (límite de tiempo), esto produciría resultados catastróficos. SOFT: se dice que una tarea es blanda si la pérdida de un deadline decrementa la performance del sistema, pero no pone en peligro su correcto funcionamiento.
Definición de Conceptos Básicos 26 Proceso Tarea (Thread) Política de Planificación (Criterio de asignación de CPU) Activación Despachar Terminación Ejecución Planificación Apropiar
Conceptos Básicos 27 PLANIFICADOR PREEMPTIVE Se Necesita Expropiar para ejecutar excepciones En tareas con distintos niveles de importancia Crítica la expropiación permite colocar la tarea más crítica Planificadores más eficientes
Tipos Planificadores de Tiemo Real 28 Preemptive • La tarea en ejecución puede ser interrumpida y asignar el procesador a cualquier otra. Non Preemptive • Una vez que comienza una tarea se ejecuta hasta que finaliza. Static • Son algoritmos donde las decisiones están basadas en parámetros fijos. Dynamic • Las decisiones se basan en parámetros cambiantes durante la ejecución del proceso.
Tipos Planificadores de Tiemo Real 29 Off Line • Este se ejecuta sobre un conjunto de tareas antes de la activación de la tarea actual. On Line • las decisiones de planificación se toman en tiempo de ejecución cada vez que entra una tarea nueva al sistema. Optimal • Si minimiza algún costo dado sobre el conjunto de tareas. Cuando no se define ninguna función de costo y la única preocupación es adquirir un planificador posible, si existe. Heuristic • Si busca un planificador posible utilizando una función de objetivo (función heurística), no garantiza encontrar un algoritmo óptimo, aunque exista.
Sistema orientado a Bus 30
System-on-a-Chip 31 Muchos sistemas de tiempo real han sido diseñados utilizando la estrategia de sistema-enun-chip (SOC) SOC permite a la CPU, memoria, unidad de manejo de memoria, y puertos de periféricos asociados (ej. USB) estar contenidos en un solo circuito integrado.
System-on-a-Chip 32
Tipos de activación 33 Periódicas Infinitas secuencias de actividades idénticas. No Periódicas Infinitas secuencias de activaciones donde la secuencia no es regular.
Planificación según periodo 34 Procesos Periódicos requieren la CPU en intervalos de tiempo especificados (periodos) P es la duración de el período D es el deadline en el cual un proceso debe servido T tiempo de procesamiento
35 Planificación de tareas cuando P 2 tiene mayor prioridad que P 1
Planificación por prioridad monótona en tasa 36 La prioridad es asignada basada en la inversa del período Períodos cortos = Alta prioridad Períodos largos = Baja prioridad P 1 tiene prioridad más alta que P 2.
Deadlines perdidos con Planificación por prioridad monótona en tasa 37
38 Planificación por prioridad en finalización de plazo. Prioridades son asignadas acorde a los deadlines: El primer deadline, alta prioridad; El último deadline, la más baja prioridad.
39 Ley general de Murphy Si algo puede salir mal, saldrá mal. Constante de Murphy El daño a un objeto es proporcional a su valor. Ley de Naeser Uno puede hacer algo a prueba de bombas, pero no a prueba de mala suerte. Postulados de Troutman 1 Cualquier error de software tenderá a maximizar el daño. 2 El peor error de software será descubierto seis meses después del test de prueba de campo.
Ley de 40 Green Si un sistema es diseñado para ser tolerante a fallos, seguramente aparecerá un idiota que causará una falla no tolerada. Corolario Los idiotas son siempre más expertos que las medidas tomadas para evitar el daño. Primera Ley de Johnson Si un sistema se para, lo hará en el peor momento posible. Segunda Ley de Sodd Tarde o temprano la peor combinación de circunstancias posibles pasarán.
Corolario 41 Un sistema debe ser diseñado para resistir la peor combinación de circunstancias posibles. posible
42
- Ctedra
- Ctedra
- Ctedra
- Sensor and (tiempo real or real time)
- Muy tiempo o mucho tiempo
- In media res
- Estilo narrativo que es
- Estilo indirecto libre
- Sistemas lineales invariantes en el tiempo
- Pcr a tiempo final
- Analizador en tiempo real
- Sistemas operativos de tempo real
- Marketing real people real decisions
- Funcion de variable real
- Marketing real people real choices
- Marketers classify innovations based on their
- The real real fashion copywriter
- Real homes real estate
- Marketing: real people, real choices
- What do you use polynomials for in real life
- Slidetodoc.com
- Coca cola the real story behind the real thing
- Xxxi to
- Materiales para esterilizar
- Efectos imagenes
- Domingo x del tiempo ordinario ciclo b
- Domingo 30 tiempo ordinario ciclo b
- El valioso tiempo de los maduros texto
- Flora residente y transitoria oms
- Elementos que conforman el teatro
- En todo tiempo ama el amigo
- Los elementos del tiempo son las
- 19 domingo del tiempo ordinario
- Viii domingo ordinario ciclo c
- El tiempo de angustia
- Preguntas de la ciudadana en ingls
- Verbos reported speech
- Linea de tiempo fisica
- Cubsimo
- Dios en ti confio
- Dejen que crezcan juntos hasta el tiempo de la cosecha
- Leyenda de gara y jonay resumen
- Pretérito imperfecto del modo subjuntivo