El tiempo real va a ocupar un lugar importante entre los contenidos de este blog. En los ámbitos más académicos, la definición de este concepto ha supuesto largas discusiones en los últimos años. Pero desde una aproximación más práctica, la discusión se puede resumir con las siguientes definiciones:
- Proceso en el que el usuario no percibe el tiempo empleado en su ejecución.
- Tipo de procesamiento en cual una transacción es ejecutada y procesada sin espera alguna.
- Rápida transmisión y proceso de datos orientados a eventos y transacciones a medida que se producen, en contraposición a almacenarse y retransmitirse o procesarse por lotes.
- Un sistema de tiempo real es aquel capaz de procesar una muestra de señal antes de que ingrese al sistema la siguiente muestra.
- Un sistema de tiempo real es aquel en el que la corrección de los resultados no depende sólo de la corrección de los cálculos realizados para producirlos, sino también del instante en el que éstos están disponibles (Donald Gillies).
La definición que más se ajusta a nuestro propósitos es la última, ya que es la más general y la que resume lo que en la mayor parte de los sistemas de tiempo real es básico: que se cumplan ciertos plazos. Las definiciones anteriores sirven para escenarios muy específicos y usuarios muy concretos, pero no siempre resultan adecuadas.
Pero en resumen, lo que tiene que quedar claro es que tiempo real no es sinónimo de inmediatez, baja latencia o rapidez de funcionamiento. No es la velocidad de la respuesta del sistema la que lo convierte en un sistema de tiempo real. El objetivo de los sistemas de tiempo real es asegurarse de que la latencia es la adecuada para resolver el problema al cual el sistema está dedicado, y esto pueden ser días, horas, segundos o microsegundos dependiendo de la aplicación.
¿En qué orden de magnitud están los plazos de su sistema de tiempo real?. ¿Se ajusta a alguna de las definiciones proporcionadas?. ¿O puede plantear otra más adecuada para su caso?.
No hay comentarios:
Publicar un comentario