a maioria dos sistemas operacionais são projetados para multitarefa. Isso significa que vários processos serão executados ao mesmo tempo. Mas a realidade é que cada processador executa ou executa apenas uma atividade ou Comando por vez. Todo sistema operacional vem com um agendador. Este é um centro de comando programado que dá prioridade alternando ações dependendo dos resultados esperados.
a definição de um software em tempo real é aquela que vem com um agendador que decide qual atividade deve ocorrer em um determinado momento. Na verdade, todos os dispositivos de computador vêm com agendadores, mas sua execução não é avançada. Instalações complexas como plantas de produção exigem maior precisão, velocidade e personalização.
Por Que escolher software em tempo real?
em um ambiente de produção, várias tarefas estão ocorrendo simultaneamente. Você precisa de um agendador para determinar qual ação tem prioridade e qual deve esperar. O design do software em tempo real (RTS) tem que garantir o determinismo. Isso também pode ser considerado previsibilidade. Esta é a programação que determina a tarefa que tem preferência. Não ter uma ordem razoável leva a resultados negativos.
existe um elemento de prazo para cada RTS. Durante a programação, o sistema deve responder a um comando dentro de um período de tempo definido. Perder este prazo pode ser catastrófico, como no caso de uma implantação de airbag, ou pode simplesmente trazer resultados indesejados, como na produção em que a qualidade de um produto é reduzida.
o que determina software em tempo real de alta qualidade?
a programação deu origem a inúmeras aplicações que podem ser usadas para fins de automação. Geralmente, o software em tempo real é um aplicativo cujo desempenho é considerado atual ou imediato pelo Usuário. No entanto, alguns fatores determinam se ele se qualifica como RTS ou não.
- pior tempo de execução do caso (WCET): este é o extremo ao qual um aplicativo decepciona o usuário. Deve ser o mínimo possível.
- tempo necessário para executar uma tarefa: A tecnologia e a automação são projetadas para reduzir o tempo necessário para executar determinadas tarefas. O tempo deve ser sincronizado ou alinhado a outras tarefas relacionadas. Aqui, a velocidade não é tão importante quanto a sincronização de atividades.
- número de tarefas em uma plataforma de hardware: o software deve realizar o maior número possível de tarefas usando hardware limitado. Isso corresponde aos objetivos de computação e é o princípio por trás da multitarefa.