Necesita verificación de conceptos en tiempo real

0

Quiero comprobar si entiendo correctamente:

  • Tiempo real significa que una acción siempre se realiza en un período de tiempo específico y nunca llega tarde a la fecha límite, un límite superior y, a veces, también un límite inferior. Si un sistema es en tiempo real, su tiempo de ejecución siempre debe ser determinista.

  • Para lograr un comportamiento en tiempo real, tanto el hardware como el software deben estar diseñados para satisfacer la restricción anterior. No todos los componentes de hardware son en tiempo real, por ejemplo, Internet y una red en tiempo real es una red en la que todos los nodos y conexiones se comportan en tiempo real. ¿Hay otros ejemplos de hardware no en tiempo real?

  • Cuando un componente de hardware es en tiempo real, el software que controla el hardware debe estar diseñado para hacerlo. Por esta razón, tenemos que usar lenguaje de bajo nivel como ensamblaje y C (es decir, agregar instrucciones siempre toma 1 ms) para tener un control estricto del tiempo de ejecución de cada instrucción.

  • Podemos lograr un comportamiento en tiempo real en sistemas operativos no en tiempo real como Linux si escribimos software como si estuviéramos escribiendo un software en tiempo real: podemos controlar el tiempo de ejecución del software. Sin embargo, dado que el sistema operativo de escritorio no es determinista (por flexibilidad), incluso si ejecutamos software diseñado para su ejecución en tiempo real, no hay garantía de que el software se ejecute en tiempo real. En esta situación, llamamos al software soft-realtimme.

¿Entiendo correctamente?

    
pregunta Amumu

1 respuesta

3

Sí, tu comprensión es correcta. El software en tiempo real debe responder en una fecha límite. También puede ser necesario implementar retrasos de tiempo precisos (por ejemplo, un controlador de semáforo). Debe ser determinista en su comportamiento en el tiempo así como en su comportamiento lógico.

Tenga en cuenta que esta definición estándar de "produce resultados dentro de un plazo límite" también podría aplicarse a algún software empresarial, por ejemplo. ¡nómina de sueldos! El programa de nómina debe producir resultados en una fecha límite, es decir, ¡día de pago! Pero normalmente no pensamos en la nómina como un programa en tiempo real. Los programas de nómina de negocios típicos no se escriben como software determinístico en tiempo real.

    
respondido por el John Honniball

Lea otras preguntas en las etiquetas