Sistemas Operativos en Tiempo Real

Introducción y generalidades de los Sistemas Operativos en Tiempo Real

Caracteristicas Generales

Generalidades de los S.O en tiempo real

Enfocado a Procesos Criticos

Cajeros electrónicos, lavadores, etc..

Procesador

El papel del procesador en un S.O en tiempo real

Single core / Multi core

Se pueden usar procesadores de un core o varios

Diseño

Diseño de un S.O en Tiempo Real

Event Driven

Orientado a eventos

Time sharing

Orientado a tiempo

Programación

Estilo y paradigma de programación

Occam

Es un lenguaje de programación imperativo y estructurado, es un lenguaje de procesamiento en paralelo, aporta facilidad para usar hilos, y apoyo sin fisura para los entornos multi-procesador 

ADA

Es un lenguaje de programación orientado a objetos y tipificado de forma estática. Fue diseñado con la seguridad en mente y orientado a la reducción de errores comunes y difíciles de descubrir. Para ello se basa en chequeos en tiempo de ejecución(desactivables para beneficio del rendimiento). La sincronización de tareas se realiza mediante la primitiva de rendezvois ( es una primitiva de sincronización asimétrica).

Comunicación entre Tareas

Transferencia de información entre tareas

  • Cuando dos o más tareas se sincronizan se produce una inversión de prioridades
  •  Se puede limitar la duración de los bloqueos producidos por la inversión de prioridades utilizando un protocolo adecuado (PIP, CPP, ICPP)
    • sólo sirve en sistemas
      • planificados con prioridades fijas
      • con un conjunto estático de tareas periódicas y esporádicas
      • con comunicación mediante datos comunes protegidos (exclusión mutua)
    • no sirve cuando hay sincronización condicional, paso de mensajes u otras formas de sincronización

Interrupciones

Manejo de interrupciones

Es una de las formas de pasar información del mundo exterior, generalmente son impredecibles, para que el programa cumpla en ser en tiempo real tiene que atender la interrupción y procesar la información antes de que se presente la interrupción, esto se logra enviando un mensaje a una tarea o solucionando un semáforo que esta siendo esperado por una tarea.

Si las señales que están siendo procesadas tienen una frecuencia mayor a la saturación, el sistema será incapaz de procesarlas

Memoria

Almacenamiento de datos

Manejo prioritario:

Bloque de memoria

Clock Tick

Comunicación

Intercambio de información

Bloque de memoria

Clock Tick

Ejemplos

Implementación y uso en la industria

1. FreeRtos

2. MaRTE OS

http://www.freertos.org

http://marte.unican.es

Fabricantes

Quien produce los S.O en tiempo real

Tabla de fabricantes

Gracias!

Preguntas!

Real time Operative Systems

By pablovallejo

Real time Operative Systems

Introduction to real time operative Systems

  • 1,274