Buscar

Sistemas Operacionais de Tempo Real em Sistemas Embarcados

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 9 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 9 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 9 páginas

Prévia do material em texto

CENTRO UNIVERSITÁRIO INTERNACIONAL UNINTER 
ESCOLA SUPERIOR POLITÉCNICA 
BACHARELADO EM ENGENHARIA ELÉTRICA 
DISCIPLINA DE SISTEMAS EMBARCADOS 
 
 
 
 
RTOS 
 
 
 
ALUNO: EDUARDO CONCEIÇÃO DOS SANTOS 
PROFESSOR: RAFAEL VILA BOAS 
 
 
 
RIBEIRÃO PRETO – SP 
2020-07-18 
 
1 INTRODUÇÃO 
 
 Estamos vivendo uma constante evolução tecnológica em todo o planeta. A 
globalização acarretada pelo uso da internet faz com que diversos países compartilhem 
seus conhecimentos com outros que estão em processo de expansão tecnológica. O 
profissional do futuro deve saber lidar com as novas tecnologias que estão surgindo. 
Um sistema embarcado nada mais é que um sistema microprocessado no qual o 
computador é totalmente encapsulado ao dispositivo ou sistema que ele está realizando 
o controle. Diferente de um computador convencional, um sistema embarcado realiza 
um conjunto de tarefas pré-definidas, geralmente com requisitos específicos. O sistema 
operacional de tempo real consegue executar múltiplas tarefas onde o tempo de resposta 
a um evento é pré-definido. 
 
 
1.1 OBJETIVOS 
 
 Este trabalho acadêmico tem o objetivo de aumentar o conhecimento sobre 
sistemas operacionais de tempo real. Visto que muitos sistemas embarcados utilizam 
essa ferramenta de extrema importância para a realização de diversas tarefas. 
 
 
2 FUNDAMENTAÇÃO TEÓRICA 
 
 Os sistemas operacionais de tempo real conseguem realizar múltiplas tarefas 
onde o tempo de resposta a um evento é pré-definido. Não importando, se a velocidade 
de resposta é elevada ou não. Algumas características do RTOS: 
 
● Interrupções; 
● Alternância de tarefas; 
● Resposta rápida a um evento; 
● Escalonamento; 
● Comunicação entre tarefas. 
 
● Livro recomendado sobre o assunto (disponível na nossa Biblioteca Virtual): 
Gustavo W. Dernadin. Sistemas Operacionais de Tempo Real e sua Aplicação em 
Sistemas Embarcados. Blucher, 2019. 
 
 
3 METODOLOGIA 
 
 Todas as respostas podem ser encontradas de maneira direta ou (indireta) no 
livro base sugerido na fundamentação teórica, neste documento. A leitura de alguns 
capítulos deste livro se faz necessário. Portanto. 
 
 Exercício 1: 
Explique com as suas palavras a importância de uso de um RTOS em uma 
aplicação embarcada. Devemos sempre usar um RTOS? Quais as vantagens e 
desvantagens de uso de um RTOS? 
 
Exercício 2 : 
Descreva o que é a pilha de um processador e qual sua utilidade para a 
concepção de um sistema que possui múltiplos fluxos de execução. Note que em um 
sistema tradicional, baseado em superlaço, existem múltiplos fluxos de execução 
concorrentes devido às rotinas de tratamento de interrupções. 
 
Exercício 3 : 
Considerando que duas tarefas utilizam uma mesma função, a qual é não 
reentrante, sugira, pelo menos, uma solução para evitar a corrupção dos dados quando 
utilizando um: 
a) Núcleo não preemptivo; 
b) Núcleo preemptivo; 
 
 
 
Exercício 4 : 
Descreva com suas palavras a finalidade do bloco de controle de tarefa (TCB) no 
RTOS. Tipicamente, que informações são contidas no TCB? Qual a diferença de TCB e 
contexto de uma tarefa? 
 
Exercício 5 : 
Explique o que ocorre em um processador quando uma interrupção ocorre. Qual 
o papel da pilha nesse processo? Por que o aninhamento de interrupções deve ser 
controlado por um núcleo preemptivo? 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4 RESULTADOS 
 
 Serão apresentado os resultados da pesquisa central deste trabalho acadêmico. 
Com essa pesquisa conseguimos ampliar nosso horizonte sobre os sistemas operacionais 
de tempo real. 
 
 Exercício 1 : 
 R: Diminuir o uso do processador e aumentar o número de tarefas que serão 
realizadas. Por meio de técnicas de escalonamento e sincronização entre tarefas. Mais 
importante do que a velocidade de resposta, e o cumprimento do prazo. O tempo é o que 
diferencia o RTOS de um sistema operacional utilizado por um computador 
convencional. O RTOS é utilizado apenas em sistemas embarcados mais complexos. 
Atualmente, os sistemas embarcados demandam de mais recursos para sua aplicação. 
São sistemas mais inteligentes e com mais poder de hardware, do que os seus 
antecessores (Blucher, 2019). 
 Vantagens : Sincronização das tarefas; Interrupções; Comportamento previsível; O 
tempo é o fator principal; Implementação mais simples; Comunicação; Alternância 
entre tarefas. 
Desvantagens: Apenas para sistemas embarcados mais complexos; Custo mais elevado 
do sistema; Quando o tempo não é o fator principal não tem boa atuação. 
 
 Exercício 2 : 
 R: A pilha de um processador é uma forma das aplicações utilizarem uma área 
de memória designada para execução, conhecida como “pilha de execução”. Cada tarefa 
possui sua própria pilha. O uso da pilha fica destinado ao salvamento de variáveis e 
registradores, além dos dados utilizados pelo compilador que gerenciam o sistema de 
chamada de funções e troca de contexto. A última sub-rotina é a primeira a ser 
executada. Lembrando, que estamos falando do sistema com múltiplas tarefas aplicadas 
no processador (Blucher, 2019). 
 
 Exercício 3 : 
 R: a) Não preemptivo – utilização da técnica de exclusão mútua para garantir a 
integridade dos dados que serão acessados. A exclusão mútua vai garantir a seção crítica 
para os processos (Blucher, 2019). 
R: b) Preemptivo – utilização da técnica de exclusão mútua para garantir a 
integridade dos dados que serão acessados. Para não ocorrer a interrupção da tarefa que 
está em execução. Está solução vai garantir a seção crítica para os processos, impedindo 
que ocorra a corrupção dos dados (Blucher, 2019). 
 
Exercício 4 : 
R: Estrutura que serve para manter o estado da tarefa quando ocorre preempção. 
O TCB faz o registro e armazenamento de várias informações que serão acessadas pelo 
sistema operacional. O sistema operacional irá definir a posição de retorno destas 
informações que estão contidas no bloco de controle de tarefas (Blucher, 2019). 
As informações contidas no TCB são: 
 Nome da tarefa – qual está sendo executada neste instante. 
 Prioridade – qual tarefa tem a maior prioridade de execução. 
 Memória utilizada – posição de memória e quantidade de memória. 
 Estado do processador – registradores e estados da CPU neste momento. 
 Variáveis – que estão sendo executadas no momento. 
 
Quando ocorre a mudança da tarefa de menor prioridade para a de maior 
prioridade que estava sendo executada pelo núcleo. O contexto da tarefa suspensa 
(menor prioridade) fica salvo no TCB, onde este contexto da tarefa que será executado 
pode ser recuperado do TCB. O núcleo (Kernel) executa a tarefa de maior prioridade 
primeiro e, depois inicia a tarefa de menor prioridade que está salva no TCB. O TCB faz 
o armazenamento das informações das tarefas é o contexto da tarefa pode ser resumido 
como uma informação de determinada tarefa de menor prioridade que será salva e 
resgatada dentro do TCB. Um necessita do outro para o correto funcionamento do 
sistema operacional de tempo real (Blucher, 2019). 
 
Exercício 5 : 
R: Quando ocorre uma interrupção, o processador interrompe o processamento 
do programa que está em execução e executa apenas um pedaço de código (parte do 
sistema operacional) chamado de tratador de interrupção. Geralmente, após a execução 
do tratador, o processador volta a executar o programa interrompido. Serão salvos na 
pilha de controle o conteúdo dos demais registradores do processador através da rotina 
de tratamento. O núcleo preemptivo tem como característica permitir a interrupção 
temporária de uma tarefa de menor prioridade em função de uma tarefa de maior 
prioridade. Está característica do núcleo preemptivo pode ser chamado de “interrupções 
aninhadas”. 
Por isso, deve ser utilizada apenas com o núcleo preemptivo, para evitar falhas 
do sistema embarcado. O processador ARM aplicado nos sistemas embarcadosé um 
exemplo prático real da aplicação das interrupções aninhadas controladas pelo núcleo 
preemptivo (Blucher, 2019). 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5 CONCLUSÃO 
 
O sistema operacional de tempo real tem como principal objetivo o controle do 
tempo para a realização das tarefas. Implementada em sistemas embarcados mais 
complexos. Cada vez mais os sistemas embarcados realizam mais funções o que 
acarreta na utilização do RTOS, microprocessadores e microcontroladores. O sistema 
operacional precisa utilizar os recursos do hardware para desempenhar melhor suas 
funções. Isso aumenta drasticamente o custo do projeto, afetando sua implementação 
em sistemas embarcados mais simples. O núcleo preemptivo permite a interrupção 
temporária de uma tarefa de menor prioridade em função de outra tarefa de maior 
prioridade de execução. O bloco de controle de tarefa (TCB) faz o armazenamento de 
várias informações que serão acessadas pelo sistema operacional. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6 REFERÊNCIAS 
 
Livros 
 
Denardin, G. W. Sistemas Operacionais de Tempo Real e sua Aplicação em 
Sistemas Embarcados. Blucher, 2019.

Outros materiais