Você está na página 1de 11

Engenharia da Computação

Sistemas de Tempo Real


Luis Claudio (lcoliveira.silva@gmail.com)
Apresentação da Disciplina
● Prof.: Luis Claudio
● CH: 60h
● Horário: 35N12 (online)
● Objetivos:
− Geral: Compreender os elementos conceituais fundamentais de sistemas de
tempo real e suas aplicações
− Específicos:
● Definir sistemas de tempo real e suas aplicações
● Compreender os principais elementos de um sistema de tempo real
● Compreender os principais algoritmos de escalonamento de tarefas em sistemas de
tempo real
● Identificar as formas de comunicação dos sistemas de tempo real
● Avaliar a disponibilidade e maximização de recursos tecnológicos para a construção
de sistemas de tempo real
● Reconhecer os principais RTOS do mercado
Apresentação da Disciplina
EMENTA:
Conceitos de sistemas de tempo real. Programação concorrente. Comunicação
e sincronização de processos. Recursos compartilhados e exclusão mútua.
Algoritmos de escalonamento. Projeto e implementação de kernel de tempo
real. Sistemas operacionais de tempo real.

BIBLIOGRAFIA DO PPC:
Rajib Mall, Real-Time Systems: Theory and Practice, 1rst edition, Prentice Hall,
2009.
LIU, Jane W. S. Real-time systems. New Jersey: Prentice Hall, 2000.
Marvin Rausand and Arnljot Hoyland. SYSTEM RELIABILITY THEORY -
Models, Statistical Methods, and Applications, 2nd edition. John Wiley, 2004.
Apresentação da Disciplina
BIBLIOGRAFIA COMPLEMENTAR:
Apresentação da Disciplina
Programa:

Programação concorrente
Comunicação e sincronização de processos
Recursos compartilhados e exclusão mútua
• Semáforos binários
• Semáforos genéricos
Conceitos de sistemas de tempo real
Representação de sistemas em tempo real
Conceitos básicos de escalonamento
Algoritmos de escalonamento de tarefas
Apresentação da Disciplina
Programa (cont.):

Projeto de kernel de tempo real


• Executivo cíclico
• Baseado em interrupções
• Microkernel de tempo real
Sistemas operacionais de tempo real
Introdução ao FreeRTOS
• Criação de tarefas
• Criação de Semáforos
• Filas de dados
• Temporizadores
Apresentação da Disciplina
Avaliação:

1ª Nota: tarefa teórica e tarefas práticas


2ª Nota: projeto (vídeo do projeto físico ou simulação)
3ª Nota: projeto (vídeo do projeto físico ou simulação) e
relatório em formato de artigo acerca do projeto (máx.
de 5 páginas)
Aplicações
● Os sistemas de tempo-real desempenham um papel crucial nas
sociedades modernas, suportando áreas aplicadas, tais como:
− controle de centrais nucleares, controle de indústrias químicas,
sistemas aviônicos, sistemas de controle de tração, motor e
frenagem em automóveis, controle de tráfego aéreo, marítimo,
ferroviário e rodoviário, sistemas de telecomunicações,
automação industrial, robótica, sistemas de defesa militar,
missões espaciais, etc...
Aplicações
● Esta disciplina foca em quatro aspectos essenciais:
− a origem e caracterização das restrições impostas pelo ambiente ao
comportamento temporal do sistema computacional;
− a forma como o sistema computacional mantém o conhecimento do
estado do ambiente que o rodeia;
− a teoria de escalonamento de atividades concorrentes associadas a
processos de tempo-real;
− e a constituição e construção de sistemas operacionais de tempo real.
Metodologia de Trabalho
● A organização proposta da disciplina está baseada em duas
componentes: teórica e prática.
● A primeira será essencialmente expositiva mas recorrendo a
exemplos práticos e momentos de discussão.
● A segunda fará uso de um sistema operacional de tempo-real de
domínio público ou disponíveis para ensino (e.g. RT-Linux, RTAI,
FreeRTOS, SHaRK, VxWorks, ReTMiK) bem como de uma
plataforma para sistemas embarcado (baseadas em plataforma
Arduino, NodeMCU ou outra disponível) e incluirá série de trabalhos
práticos essencialmente ilustrativos, sendo seguida pelo
desenvolvimento de um projeto.

https://www.freertos.org/
Até a próxima aula!

Você também pode gostar