Computación en tiempo real


La computación en tiempo real ( RTC ) es el término informático para los sistemas de hardware y software sujetos a una "restricción en tiempo real", por ejemplo, desde un evento hasta la respuesta del sistema . [1] Los programas en tiempo real deben garantizar la respuesta dentro de las limitaciones de tiempo especificadas, a menudo denominadas "plazos". [2]

A menudo se entiende que las respuestas en tiempo real son del orden de milisegundos y, a veces, de microsegundos. Un sistema que no está especificado como operativo en tiempo real no puede garantizar normalmente una respuesta dentro de ningún marco de tiempo, aunque se pueden dar tiempos de respuesta típicos o esperados . El procesamiento en tiempo real falla si no se completa dentro de un plazo específico relativo a un evento; siempre se deben cumplir los plazos, independientemente de la carga del sistema .

Un sistema en tiempo real se ha descrito como uno que "controla un entorno al recibir datos, procesarlos y devolver los resultados lo suficientemente rápido como para afectar el entorno en ese momento". [3] El término "tiempo real" también se usa en simulación para significar que el reloj de la simulación funciona a la misma velocidad que un reloj real, y en control de procesos y sistemas empresariales para significar "sin demora significativa".

El software en tiempo real puede usar uno o más de los siguientes: lenguajes de programación sincrónicos , sistemas operativos en tiempo real (RTOS) y redes en tiempo real, cada uno de los cuales proporciona marcos esenciales sobre los cuales construir una aplicación de software en tiempo real.

Los sistemas utilizados para muchas aplicaciones críticas para la seguridad deben ser en tiempo real, como el control de aeronaves fly-by-wire o los frenos antibloqueo , los cuales exigen una respuesta mecánica inmediata y precisa. [4]

El término tiempo real se deriva de su uso en la simulación temprana , en la que un proceso del mundo real se simula a una velocidad que coincide con la del proceso real (ahora llamada simulación en tiempo real para evitar ambigüedades). Las computadoras analógicas , en la mayoría de los casos, eran capaces de simular a un ritmo mucho más rápido que en tiempo real, una situación que podría ser tan peligrosa como una simulación lenta si no se reconociera y tuviera en cuenta.