O que é Sistema Operacional em Tempo Real (RTOS) e como funciona?

Experimente Nosso Instrumento Para Eliminar Problemas





Quando ouvimos a palavra sistema operacional, primeiro em nossa mente vem o sistema operacional usado nos laptops e computadores. Geralmente, usamos diferentes tipos de sistemas operacionais como Windows XP, Linux, Ubuntu, Windows 7,8.8.1 e 10. Nos smartphones, os sistemas operacionais são como KitKat, Jellybean, marshmallow e Nougat. Em um dispositivo eletrônico digital, existe algum tipo de sistema operacional que é desenvolvido por o programa de microcontrolador . tem diferentes tipos de sistemas operacionais para desenvolver para o microcontrolador, mas aqui discutimos o sistema operacional em tempo real.

O que é um sistema operacional em tempo real?

O RTOS é um sistema operacional, é um cérebro do sistema em tempo real e sua resposta às entradas imediatamente. No RTOS, a tarefa será concluída no tempo especificado e suas respostas de forma previsível a eventos imprevisíveis. A estrutura do RTOS é mostrada abaixo.




Estrutura do RTOS

Estrutura do RTOS

Tipos de RTOS

Existem três tipos diferentes de RTOS que seguem



  • Sistema operacional soft em tempo real
  • Sistema operacional em tempo real difícil
  • Sistema operacional firme em tempo real
Tipos de RTOS

Tipos de RTOS

Sistema operacional Soft Real-Time

O sistema operacional soft real-time tem certos prazos, podem ser perdidos e eles tomarão a ação em um momento t = 0 +. O sistema operacional soft real-time é um tipo de sistema operacional e não contém regras extremas. O tempo crítico deste sistema operacional está atrasado até certo ponto. Os exemplos deste sistema operacional são a câmera digital, telefones celulares e dados online, etc.

Sistema operacional Soft Real Time

Sistema operacional Soft Real-Time

Sistema Operacional Hard Real-Time

Este também é um tipo de sistema operacional e é previsto por um prazo. Os prazos previstos reagirão em um tempo t = 0. Alguns exemplos desse sistema operacional são o controle do air bag em carros, freio antibloqueio e sistema de controle do motor, etc.

Sistema operacional em tempo real firme

No tempo real da empresa, um sistema operacional possui certas restrições de tempo, elas não são rígidas e podem causar efeitos indesejáveis. Os exemplos desse sistema operacional são uma inspeção visual em automação industrial.


Trabalho com sistema operacional em tempo real

Existem diferentes tipos de funcionalidades básicas de um RTOS que seguem

  • Agendador baseado em prioridade
  • Rotina de interrupção do relógio do sistema
  • Comportamento determinístico
  • Sincronização e Mensagens
  • Serviço RTOS

Agendador baseado em prioridade

No escalonador baseado em prioridade, a maior parte do RTOS está entre 32 e 256 prioridades possíveis para as tarefas ou processos individuais. Este planejador executará o processo com a prioridade mais alta. Se a tarefa estiver sendo executada na CPU, a próxima tarefa de maior prioridade será executada e os processos contínuos.

No sistema, o processo de maior prioridade terá a CPU

  • Corre para fechar
  • Se a tarefa original for antecipada pela nova, um processo de alta prioridade é preparado.

Existem três estados de tarefas ou processos que estão prontos para serem executados e o outro está bloqueado e a descrição de cada estado é fornecida abaixo.

Pronto para correr

O pronto para ser executado é quando o processo tem todos os recursos para executar, mas não deve estar no estado de execução. Em seguida, ele é chamado de pronto para ser executado.

Correndo

Se a tarefa estiver em execução, é dito que ela está em execução.

Bloqueado

Nesse estado, se não houver recursos suficientes para ser executado, ele será enviado para o estado bloqueado.

Três técnicas são modificadas para agendar a tarefa, a seguir com sua descrição.

Agendamento de cooperação

Neste tipo de agendamento, a tarefa será executada até que a execução seja concluída

Agendamento de Round Robin

Neste escalonamento, cada processo recebe um slot de tempo fixo e o processo precisa completar sua execução ou então a tarefa perde o fluxo e a geração de dados.

Agendamento preventivo

O agendamento preventivo envolve a alocação de tempo dependente do tempo de prioridade. Em geral, são usados ​​256 níveis de prioridade e cada tarefa tem um nível de prioridade exclusivo. Existem alguns sistemas que suportam o nível de prioridade mais e as tarefas múltiplas têm algumas prioridades.

Rotina de interrupção do relógio do sistema

Para realizar a operação sensível ao tempo, o RTOS fornecerá algum tipo de relógio de sistema. Se houver um relógio de sistema de 1 ms, você terá que completar a tarefa em 50 ms. Normalmente, existe uma API que segue você para dizer “Em 50ms me acorde”. Portanto, a tarefa estaria na posição de dormir até que o RTOS fosse acordado. Temos dois avisos de que o acordado não garantirá a execução exatamente naquele momento, isso depende da prioridade e se a prioridade mais alta estiver em execução no momento, ela será atrasada.

Comportamento Determinístico

O RTOS se move muito para proteger que, se você executou 100 tarefas ou 10 tarefas, não faz nenhuma diferença na distância para alternar o contexto e determina a próxima tarefa de maior prioridade. Na área principal determinística o RTOS é o tratamento de interrupção, quando a linha de interrupção é sinalizada o RTOS imediatamente executa a ação da rotina de serviço de interrupção correta e a interrupção é tratada sem qualquer atraso.

Temos que dizer que os desenvolvedores do projeto escreverão os ISRs específicos do hardware. Antes, o RTOS fornece os ISRs para as portas seriais, relógios do sistema e pode ser um hardware de rede, mas se houver algo especializado como sinais de marcapasso, atuadores, etc., não faça parte do RTOS.

Isso é tudo sobre generalizações brutas e há uma grande variedade de implementações no RTOS. Alguns dos RTOS são operados de maneira diferente e a descrição acima é compatível com a grande parte dos RTOS existentes.

Sincronização e Mensagens

A sincronização e as mensagens fornecem a comunicação entre a tarefa de um sistema para outro sistema e os serviços de mensagens estão seguindo. Para sincronizar as atividades internas é usado o flag de evento e para enviar as mensagens de texto que podemos usar na caixa de correio, canais e filas de mensagens. Nas áreas de dados comuns, os semáforos são usados.

  • Semáforos
  • Bandeiras de eventos
  • Caixas de correio
  • Tubos
  • Filas de mensagens

Serviço RTOS

A parte mais importante do sistema operacional é o kernel. Para monitorar o hardware, a tarefa deve ser aliviada e as responsabilidades que o kernel gerencia e aloca os recursos. Se a tarefa não pode obter a atenção da CPU para todas as vezes, existem alguns outros serviços fornecidos pelo kernel. Os seguintes são

  • Serviços de tempo
  • Serviços de manuseio de interrupção
  • Serviços de gerenciamento de dispositivos
  • Serviços de gerenciamento de memória
  • Serviços de entrada-saída

Vantagens do RTOS

  • Quando todos os recursos e dispositivos estão inativos, o RTOS fornece o consumo máximo do sistema e mais saída.
  • Quando uma tarefa está sendo executada, não há chance de obter o erro porque o RTOS é um erro livre.
  • A alocação de memória é o melhor tipo de gerenciamento neste tipo de sistema.
  • Nesse tipo de sistema, o tempo de deslocamento é muito menor.
  • Devido ao pequeno tamanho do programa, o RTOS é usado no sistema embarcado como transporte e outros.

Neste artigo, discutimos como o sistema operacional de tempo real funcionará. Espero que ao ler isto você tenha obtido algumas informações básicas. Se você tiver alguma dúvida sobre este artigo ou para implementar projetos elétricos , sinta-se à vontade para comentar na seção abaixo. Aqui fica a pergunta para você, quais são as funções do RTOS?