Sistemas en tiempo real
Un sistema operativo en tiempo real (RTOS, Real-Time Operating System) es aquel que no solo ejecuta tareas, sino que debe hacerlo en un tiempo límite predecible. 👉 La rapidez y previsibilidad son tan importantes como la corrección.
1. Características principales #
- Determinismo: el sistema garantiza que una tarea se ejecutará dentro de un tiempo máximo conocido.
- Baja latencia: respuesta casi inmediata a eventos externos.
- Planificación estricta: las tareas críticas tienen prioridad absoluta.
- Fiabilidad: no se permite el fallo → un error puede tener consecuencias graves.
- Uso eficiente de recursos: pensado para sistemas con hardware limitado (sensores, microcontroladores).
2. Tipos de sistemas en tiempo real #
-
RTOS duro (Hard Real-Time)
- Si la tarea no se cumple en el tiempo exacto, el sistema falla.
- Usado en aplicaciones críticas.
- Ejemplo: control de un marcapasos, sistemas de aviónica.
-
RTOS blando (Soft Real-Time)
- Se permite cierto retraso, pero debe mantenerse bajo.
- Ejemplo: streaming de vídeo o audio → un pequeño retraso no es crítico, pero afecta a la calidad.
3. Ejemplos de uso #
- Automoción: airbags, frenos ABS.
- Medicina: máquinas de rayos láser, respiradores.
- Industria: robots en fábricas.
- Aeroespacial: sistemas de navegación de aviones o satélites.
- Electrónica de consumo: microondas, cámaras digitales, Smart TVs.
4. Ejemplos de sistemas operativos en tiempo real #
- FreeRTOS (muy usado en IoT y microcontroladores).
- VxWorks (aeronáutica y automoción).
- QNX (embebidos, coches, industria).
- RTLinux (versión en tiempo real de Linux).
5. Ejemplo práctico #
Un airbag en un coche:
- El sensor detecta un impacto.
- El sistema operativo en tiempo real tiene que enviar la señal para inflar la bolsa en milisegundos.
- Si falla o se retrasa, el accidente sería fatal.
Resumen del tema
Conceptos clave #
- Sistemas Operativos en Tiempo Real (RTOS): sistemas diseñados para garantizar respuestas deterministas y de baja latencia dentro de plazos temporales estrictos (deadlines).
- Clasificación por Criticidad:
- Hard Real-Time (Estricto/Duro): el incumplimiento del plazo temporal constituye un fallo catastrófico del sistema (marcapasos, frenos ABS, aviónica).
- Soft Real-Time (Flexible/Blando): los retrasos degradan la calidad del servicio pero no provocan la rotura del sistema (streaming multimedia, telefonía VoIP).
- Planificación Determinista: algoritmos basados en prioridades expulsivas como Rate Monotonic Scheduling (RMS) o Earliest Deadline First (EDF).
- Ejemplos Principales: FreeRTOS, VxWorks, QNX Neutrino y parches PREEMPT_RT / RTLinux.
Qué debes recordar #
En un RTOS la corrección depende tanto del resultado lógico como del cumplimiento estricto del tiempo límite (deadline).