Sistemas de Tiempo Real

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 3

Sistemas de tiempo real.

Características de los sistemas operativos en tiempo real.

Un sistema de tiempo real (STR o real-time system o RTS) es aquel cuyo correcto funcionamiento
depende de que las salidas “lleguen a tiempo”, es decir, que debe estar acotado el tiempo entre
cada evento y la respuesta que provoca, no necesariamente tiene que ser breve, pero sí acotado.

Existen 2 tipos:

 STR duro (hard RTS): Es duro cuando el incumplimiento de un deadline implica un


funcionamiento incorrecto.
 STR suave (sft RTS): Es suave cuando el incumplimiento de un deadline no implica
funcionamiento incorrecto, pero sí una degradación en la calidad de servicio.

Requerimientos de un STR:

 Los eventos externos que puede atender


 La respuesta lógica (o sea, salida) que debe producir cada evento
 Los requerimientos de temporización de esas respuestas (sus deadlines relativos).

Los STR suaves frecuentemente se diseñan como si fura STR duros, es decir, como si sus deadlines
fueran estrictos.

Diseño de un STR: Dado que un STR es un sistema reactivo con requisitos (estrictos o no) en
cuanto a sus tiempos de respuesta, dichos requisitos se consideran desde la etapa de elaboración
de requerimientos y durante todo el proceso de diseño.

Requerimientos de temporización: A veces se recurre a métodos formales para verificar el


cumplimiento de los requerimientos de temporización, pero es más frecuente testearlos mediante
simulaciones y pruebas en prototipos.

Los problemas que se presentan: Ante cambios menores, hay que volver a testear todo, el testeo
nunca da garantías al 100%. Es muy valioso usar técnicas de programación que nos den cierta
seguridad sobre el cumplimiento que los requisitos de temporización, para no depender mucho de
la verificación.

Para cumplir esos requerimientos, a veces hay que evitar usar técnicas que implican tiempos
largos y/o poco predecibles.

Diseño de un STR: dado que un STR es un sistema reactivo con requisitos (estrictos o no) en
cuanto a sus tiempos de respuesta, dichos requisitos se consideran desde la etapa de elaboración
de requerimientos y durante todo el proceso de diseño.

Un sistema operativo de tiempo real (RTOS): Es un software de base que simplifica el diseño de
software con requerimientos de tiempo real. Permite que el programador estructure la aplicación
como un conjunto de tareas concurrentes, (concurrentes quiere decir que se ejecutan al mismo
tiempo). Así, el procesamiento de cada evento se asigna a una tarea, pudiéndose obtener una
demora razonablemente corta entre el evento y la ejecución de la tarea, sin que haya que escribir
un código muy intrincado.
Los sistemas operativos actuales en tiempo real incluyen normalmente las siguientes
características:

 Cambios rápidos de procesos o hilos.


 Pequeño tamaño (con una mínima funcionalidad asociada).
 Capacidad de responder rápidamente a interrupciones externas.
 Multitarea con herramientas de comunicación entre procesos, como semáforos, señales y
sucesos.
 Uso de archivos secuénciales especiales que puedan acumular datos a alta velocidad.
 Planificación preferente basadas en prioridades.
 Reducción de intervalos en los que están inhabilitadas las interrupciones.
 Primitivas para demorar tareas durante un tiempo fijo y para detenerlas y reanudarlas.
 Alarmas especiales y temporizadores.

Los componentes de un RTOS son los siguientes:

 Programador (scheduler): el cual establece el orden de ejecución de los procesos. Sistemas


en Tiempo Real (RTS) SISTEMAS OPERATIVOS PARA TIEMPO REAL (RTOS). JAVA (RTSJ)
COMO RTOS 9
 Ejecutor (dispatcher): el cual gestiona el inicio y la finalización de cada tramo de
procesamiento, cambiando el contexto (stack, memoria, registros, etc.) para pasar de una
tarea a otra.
 Administrador de memoria: En arquitecturas con µkernel, éste suele contener al
scheduler, al dispatcher y al administrador de memoria.
 Servicios: se refiere a los drivers para acceder al hardware, el administrador de
interrupciones de hardware o software, etc.
 Primitivas para la sincronización y comunicación entre procesos.

Diferencias con los softwares tradicionales.

Dado que un STR es un sistema reactivo con requisitos (estrictos o no) en cuanto a sus tiempos de
respuesta, dichos requisitos se consideran desde la etapa de elaboración de requerimientos y
durante todo el proceso de diseño. A diferencia del diseño de un software transaccional común,
en los cuales lo típico, como mucho, es chequear la velocidad una vez programadas sus unidades,
para decidir si optimizarlas o no.

Comparación con OS comunes: Existen similitudes usuales con sistemas operativos de propósitos
generales, como pueden ser las siguientes:

 Multitasking. O sea, ejecución de tareas (tasks) concurrentes


 Provisión de servicios para las aplicaciones
 Ligera abstracción del hardware
 Un kernel: es un núcleo del sistema operativo, que está siempre en memoria gestionando
la ejecución de las tareas y sirviendo de puente con el hardware. Sin embargo, algunos
RTOS son solo librerías, o sea, kernel-less.

Las diferencias principales son las siguientes:


En los RTOS, la gestión del multitasking está especialmente diseñada para atender requisitos de
tiempo real. No suelen incluir interfaces al usuario gráficas, solo a veces incluyen gestión de
archivos en disco, etc. Son programas mucho más livianos. Los hay especiales para sistemas que
requieren una confiabilidad excepcional, es decir, sistemas de misión crítica o seguridad crítica

También podría gustarte