Alan Burns y Andy
Welling nos dan la siguiente definición para los sistemas de tiempo real o STR:
“Un sistema en Tiempo Real es cualquier sistema donde el
tiempo en que se produce su salida es significante.
Esto es debido a que generalmente la entrada corresponde a
algún instante del mundo físico y la salida tiene relación con ese mismo
instante. El retraso transcurrido entre la entrada y la salida debe
ser lo suficientemente pequeño para considerarse una respuesta puntual”
Los STR pueden estructurarse con frecuencia como sigue:
Los STR se clasifican por lo general en dos tipos
dependiendo de lo serio de sus tiempos límite y de las consecuencias de omitir
uno de ellos. Estos son:
- STR Suave
- STR Duro
El Sistema de Tiempo Real Suave significa que no existe problema si se
rebasa un tiempo límite.
Por el contrario, un tiempo límite no cumplido en un Sistema
de Tiempo Real Duro es inaceptable, pues podría conducir a la pérdida de una
vida o a una catástrofe ambiental.
En la práctica, existen también sistemas intermedios en los
que la omisión de un tiempo límite significa que falla toda la actividad
actual, pero que la consecuencia no es fatal (por ejemplo, una línea de
ensamblaje).
¿Cuáles son los aspectos más importantes a considerar en el
diseño de un sistema distribuido de tiempo real y por qué?
Depende mucho el tipo de STR que se está desarrollando, ya
sea STR suave o STR duro, igualmente se
tiene que considerar si son sistemas activados por eventos o sistemas activados
por tiempo.
En el primero cuando ocurre un evento significativo en el
mundo exterior, es detectado por algún sensor, lo que entonces provoca que el CPU
conectado tenga una interrupción.
En estos sistemas se tiene que considerar el volumen de la
carga ya que pueden fallar bajo condiciones de carga pesada.
En los STR activado por tiempo ocurre una interrupción de
reloj cada ∆T milisegundos.
Para estos sistemas se tienen que tomar en cuenta ∆T. Ya que si es muy pequeño, el sistema tendrá
muchas interrupciones de reloj y desperdiciará mucho tiempo durante las
revisiones, y Si es muy grande, los
eventos serios no serían notados hasta que fuese muy tarde.
A parte de lo anterior,
hay aspectos generales que se pueden considerar para el diseño de los
STR
- Predictibilidad. Lo ideal es que debe ser claro en el momento del diseño que el sistema cumple con todos sus tiempos límite, incluso con carga pico, el sistema tiene que se predecible.
- Tolerancia a fallos. Es de particular importancia que el sistema pueda controlar el peor de los escenarios.
- Comunicación en tiempo real. Lograr la predictibilidad en un SD significa que la comunicación entre los procesadores también debe ser predecible
Fuente.
Burns Alan,
Wellings Andy, Sistemas de Tiempo Real y Lenguajes de Programación. 3ra.
Edición 2003. Editorial Addison Wesley
No hay comentarios:
Publicar un comentario