A computação em tempo real sempre requer um sistema operacional em tempo real?
É possível executar aplicativos em tempo real em SOs de uso geral (normal)?
A computação em tempo real sempre requer um sistema operacional em tempo real?
É possível executar aplicativos em tempo real em SOs de uso geral (normal)?
Respostas:
Eu diria que a computação em tempo real requer um sistema operacional em tempo real.
As aplicações em tempo real funcionam com base no princípio das garantias , e é absolutamente necessário que o sistema operacional seja capaz de fornecer garantias sobre as chamadas do sistema, programação e hardware para que uma aplicação forneça garantias adicionais construídas sobre elas.
Quanto a um sistema operacional de propósito geral que funciona para um aplicativo em tempo real, isso depende dos seus prazos. Se o aplicativo tiver limites rígidos em tempo real (software industrial, sistemas de orientação, outro software controlador de equipamento de alta qualidade / perigoso), então não. Esses têm que estar rodando em um RTOS, a fim de fornecer as garantias de segurança que eles precisam. Para aplicações RT com limites mais suaves, aqueles que seria bom atender, mas não é o fim do mundo se eles escorregarem, você pode ser capaz de obter um SO de propósito geral que seja dedicado à tarefa e aumentar o aplicação à prioridade apropriada.No entanto, é importante observar que, embora isso possa funcionar para 99% dos casos de uso, ainda não é um sistema em tempo real e não é mais um aplicativo em tempo real porque não pode manter as garantias em todas as situações.
(Note, enquanto eu uso 'propósito geral' para estritamente significar 'não em tempo real' no acima, não há nada inerentemente excluindo um RTOS de ser usado como um sistema operacional geral, ou para um sistema de propósito geral de ter algum sistema chamadas e prioridades que têm contratos em tempo real. Enquanto o aplicativo está apenas fazendo uso do sistema operacional que ele pode garantir para operar dentro de um limite de tempo específico, então ele está sendo executado em tempo real para os nossos propósitos)