Sistema operacional em tempo real (RTOS): componentes, tipos, exemplos

O que é um sistema operacional em tempo real (RTOS)?

Sistema operacional em tempo real (RTOS) é um sistema operacional destinado a servir a aplicativos em tempo real que processam dados conforme eles chegam, principalmente sem atraso de buffer. A forma completa do RTOS é o sistema operacional em tempo real.

Em um RTOS, os requisitos de tempo de processamento são calculados em incrementos de décimos de segundos. É um sistema com limite de tempo que pode ser definido como restrições de tempo fixas. Nesse tipo de sistema, o processamento deve ser feito dentro das restrições especificadas. Caso contrário, o sistema falhará.

Neste tutorial de sistema operacional, você aprenderá:

Por que usar um RTOS?

Aqui estão razões importantes para usar RTOS:

  • Ele oferece agendamento baseado em prioridade, que permite separar o processamento analítico do processamento não crítico.
  • O sistema operacional em tempo real fornece funções API que permitem um código de aplicativo mais limpo e menor.
  • A abstração das dependências de tempo e do design baseado em tarefas resulta em menos interdependências entre os módulos.
  • O RTOS oferece desenvolvimento baseado em tarefas modulares, o que permite testes baseados em tarefas modulares.
  • A API baseada em tarefas incentiva o desenvolvimento modular como uma tarefa, normalmente terá uma função claramente definida. Ele permite que designers / equipes trabalhem de forma independente em suas partes do projeto.
  • Um RTOS é orientado por evento sem perda de tempo no tempo de processamento para o evento que não ocorre

Componentes do RTOS

Componentes do sistema operacional em tempo real



Aqui estão componentes importantes do RTOS

The Scheduler : Este componente do RTOS informa em que ordem as tarefas podem ser executadas, o que geralmente é baseado na prioridade.

Multiprocessamento simétrico (SMP) : É uma série de várias tarefas diferentes que podem ser manipuladas pelo RTOS para que o processamento paralelo possa ser feito.

Biblioteca de funções : É um elemento importante do RTOS que atua como uma interface que o ajuda a conectar o kernel e o código do aplicativo. Esta aplicação permite enviar os pedidos ao Kernel utilizando uma biblioteca de funções para que a aplicação possa dar os resultados desejados.

Gestão de Memória : este elemento é necessário no sistema para alocar memória para cada programa, que é o elemento mais importante do RTOS.

Latência de despacho rápido : É um intervalo entre o término da tarefa que pode ser identificada pelo SO e o tempo real gasto pelo thread, que está na fila de pronto, que iniciou o processamento.

Objetos de dados definidos pelo usuário e classes : O sistema RTOS faz uso de linguagens de programação como C ou C ++, que devem ser organizadas de acordo com seu funcionamento.

Tipos de RTOS

Três tipos de sistemas RTOS são:

Hard Real Time:

No Hard RTOS, o prazo é tratado de forma muito estrita, o que significa que determinada tarefa deve começar a ser executada no horário programado especificado e deve ser concluída dentro do período de tempo atribuído.

Exemplo: sistema de cuidados médicos críticos, sistemas de aeronaves, etc.

Tempo real firme:

Este tipo de RTOS também precisa seguir os prazos. No entanto, perder um prazo pode não ter um grande impacto, mas pode causar efeitos indesejáveis, como uma grande redução na qualidade de um produto.

Exemplo: vários tipos de aplicativos multimídia.

Soft Real Time:

RTOS Soft Real time, aceita alguns atrasos pelo sistema operacional. Nesse tipo de RTOS, há um prazo atribuído para um trabalho específico, mas um atraso de um pequeno período de tempo é aceitável. Portanto, os prazos são tratados com suavidade por este tipo de RTOS.

Exemplo: Sistema de Transação Online e Sistema de Cotação de Preços Pecuária.

Termos usados ​​no RTOS

Aqui, estão os termos essenciais usados ​​no RTOS:

  • Tarefa - Um conjunto de tarefas relacionadas que podem, em conjunto, fornecer algumas funcionalidades do sistema.
  • Trabalho - Um trabalho é um pequeno trabalho que pode ser atribuído a um processador e que pode ou não exigir recursos.
  • Tempo de liberação de um trabalho - É uma época de trabalho em que o trabalho fica pronto para execução.
  • Tempo de execução de um trabalho: O trabalho demora a terminar a sua execução.
  • Prazo de trabalho: É a hora em que um trabalho deve terminar sua execução.
  • Processadores: Elas também são conhecidos como recursos ativos. Eles são importantes para a execução de um trabalho.
  • Máximo é o tempo de resposta permitido de um trabalho é chamado de prazo relativo.
  • Tempo de resposta de um trabalho: É um período de tempo desde a liberação de um trabalho até o término do instante.
  • Prazo absoluto: Este é o prazo relativo, que também inclui o tempo de lançamento.

Características do RTOS

Aqui estão recursos importantes do RTOS:

  • Ocupe muito menos memória
  • Consuma menos recursos
  • Os tempos de resposta são altamente previsíveis
  • Ambiente imprevisível
  • O kernel salva o estado do anúncio de tarefa interrompido e, em seguida, determina qual tarefa deve ser executada em seguida.
  • O Kernel restaura o estado da tarefa e passa o controle da CPU para essa tarefa.

Fatores para selecionar um RTOS

Aqui, estão os fatores essenciais que você precisa considerar para selecionar RTOS:

  • atuação : O desempenho é o fator mais importante que deve ser considerado ao selecionar um RTOS .
  • Middleware : se não houver suporte de middleware no sistema operacional de tempo real, ocorre o problema de integração demorada de processos.
  • Livre de erros : Os sistemas RTOS não apresentam erros. Portanto, não há chance de obter um erro durante a execução da tarefa.
  • Uso do sistema integrado : Os programas de RTOS são de tamanho pequeno. Portanto, usamos amplamente RTOS para sistemas embarcados.
  • Consumo Máximo : podemos alcançar o consumo máximo com a ajuda de RTOS.
  • Mudança de tarefa : O tempo de deslocamento das tarefas é muito menor.
  • Características únicas : Um bom RTS deve ser capaz, e possui alguns recursos extras como a forma como opera para executar um comando, proteção eficiente da memória do sistema, etc.
  • Desempenho 24/7 : RTOS é ideal para aquelas aplicações que precisam funcionar 24 horas por dia, 7 dias por semana.

Diferença entre em GPOS e RTOS

Aqui estão as diferenças importantes entre GPOS e RTOS:

Sistema operacional de uso geral (GPOS) Sistema operacional em tempo real (RTOS)
É usado para PC desktop e laptop.Ele é aplicado apenas ao aplicativo incorporado.
Agendamento baseado em processo.A programação baseada no tempo é usada como a programação round-robin.
A latência de interrupção não é considerada tão importante quanto no RTOS.O atraso de interrupção é mínimo, medido em alguns microssegundos.
Nenhum mecanismo de inversão de prioridade está presente no sistema.O mecanismo de inversão de prioridade é atual. Portanto, não pode ser modificado pelo sistema.
A operação do kernel pode ou não ser interrompida.A operação do kernel pode ser antecipada.
A inversão de prioridade permanece despercebidaSem garantias de previsibilidade

Aplicações do Sistema Operacional em Tempo Real

Os sistemas em tempo real são usados ​​em:

  • Sistema de reservas de companhias aéreas.
  • Sistema de controle de tráfego aéreo.
  • Sistemas que fornecem atualização imediata.
  • Utilizado em qualquer sistema que forneça informações atualizadas e imediatas sobre os preços das ações.
  • Sistemas de aplicação de defesa como RADAR.
  • Sistemas Multimídia em Rede
  • Sistemas de controle de comando
  • Telefonia pela Internet
  • Sistemas de freio antibloqueio
  • Marcapasso cardíaco

Desvantagens do RTOS

Aqui estão as desvantagens / contras de usar o sistema RTOS:

  • O sistema RTOS pode executar tarefas mínimas em conjunto e se concentra apenas nos aplicativos que contêm um erro para que possa evitá-los.
  • RTOS é o sistema que se concentra em algumas tarefas. Portanto, é realmente difícil para esses sistemas realizarem multitarefas.
  • Drivers específicos são necessários para o RTOS para que ele possa oferecer um tempo de resposta rápido aos sinais de interrupção, o que ajuda a manter sua velocidade.
  • Muitos recursos são usados ​​pelo RTOS, o que torna este sistema caro.
  • As tarefas de baixa prioridade precisam esperar muito tempo, pois o RTOS mantém a precisão do programa, que está em execução.
  • A comutação mínima de tarefas é feita em sistemas operacionais de tempo real.
  • Ele usa algoritmos complexos que são difíceis de entender.
  • O RTOS usa muitos recursos, que às vezes não são adequados para o sistema.

Resumo:

  • RTOS é um sistema operacional destinado a servir a aplicativos em tempo real que processam os dados assim que eles chegam, principalmente sem atrasos no buffer.
  • Ele oferece agendamento baseado em prioridade, que permite separar o processamento analítico do processamento não crítico.
  • Os componentes importantes do sistema RTOS são: 1) O Agendador, 2) Multiprocessamento simétrico, 3) Biblioteca de funções, 4) Gerenciamento de memória, 5) Latência de despacho rápido e 6) Objetos e classes de dados definidos pelo usuário
  • Três tipos de RTOS são 1) Hard time 2) Soft time e 3) Firm time
  • O sistema RTOS ocupa muito menos memória e consome menos recursos
  • O desempenho é o fator mais importante a ser considerado ao selecionar um RTOS.
  • O General-Purpose Operating System (GPOS) é usado para desktops e laptops, enquanto o Real-Time Operating System (RTOS) é aplicado apenas ao aplicativo incorporado.
  • Os sistemas em tempo real são usados ​​no sistema de reservas de companhias aéreas, sistema de controle de tráfego aéreo, etc.
  • A maior desvantagem do RTOS é que o sistema se concentra apenas em algumas tarefas.