Por primera vez, me gustaría mencionar que soy un novato en la programación de sistemas en tiempo real. Por eso no estoy seguro de si mis preguntas son correctas. Lo siento pero necesito ayuda
Pregunta breve: ¿Cómo implementar un software en tiempo real para asegurarse de que cumpla con los plazos de entrega? ¿Es necesario usar algunas características de QNX? ¿O es suficiente escribirlo para Linux, puerto a QNX y será en tiempo real por defecto?
Pregunta completa: Hemos implementado un complejo software multiproceso multiplataforma con comunicación entre procesos para Linux, Windows, Android y QNX. El lenguaje de programación es C ++, utilizamos Boost y planty de otras bibliotecas. Nuestro software hace su trabajo bien y rápidamente, pero sigue siendo un prototipo. Para fines de producción, debemos hacerlo en tiempo real. Algunas de nuestras funciones tienen que ser en tiempo real y muy robustas porque son muy importantes y la seguridad de las personas que usan nuestro software puede depender de ellas. Funcionan bastante rápido, hasta cientos de milisegundos. Pero no estoy seguro de que nuestro sistema sea realmente en tiempo real debido a este hecho (¿estoy en lo cierto?).
Entonces, hay una pregunta principal: ¿cómo modificar nuestro software para que sea en tiempo real? He buscado mucho en Google pero todavía no tengo idea de cómo hacerlo.
Alguna información adicional sobre nuestras plataformas: Linux y Windows que actualmente utilizamos solo con fines de prueba. Android: todavía no hemos decidido si lo necesitamos. QNX: es nuestro sistema operativo objetivo para la producción. Supongo que la respuesta para mi próxima pregunta es "NO" :) Pero, ¿es posible implementar software multiplataforma en tiempo real (para sistemas operativos en tiempo real (RTOS) y para sistemas operativos de propósito general (GPOS))?
¿Posiblemente necesitamos hacer nuestros esfuerzos para implementar todas las funciones en tiempo real solo para QNX? Pero todavía no entiendo cómo hacerlo. ¿Podría alguien arrojar una luz sobre esta pregunta?