Sistemas de Tempo Real
Sérgio Cavalcante
[email protected]
(81) 32718430
Centro de Informática
Universidade Federal de Pernambuco
Sistema de Tempo Real

Sistema embutido no qual o
comportamento está sujeito a
restrições temporais
Tipos de uso

Controle
• Baixo processamento
• Requer pouca memória
• Altamente reativo (muito interativo)

Processamentos de dados
• Processamento digital de sinais
• Alto processamento
• Pouco interativo
Sistema de Controle de Tempo Real


Monitoram e modificam seu ambiente
Estão associados a dispositivos de
hardware
• Sensores: coletam dados do ambiente
• Atuadores: Mudam o ambiente do
sistema

Tempo é crítico
Criticidade

Soft real-time system: sua operação é
degradada se as restrições de tempo
não são obedecidas

Hard real-time system: sua operação
é incorreta se as restrições de tempo
não são obedecidas
Modelo de sistema de tempo real
Sensor
Sensor
Sensor
Sensor
Sensor
Sensor
Sistema de controle de tempo
real
Atuador
Atuador
Atuador
Atuador
Sistema reativos

Dado um estímulo o sistema deve produzir uma
resposta dentro do tempo estipulado.

Estímulo periódico: ocorre em intervalos de
tempo previsíveis

Estímulo aperiódico: ocorre em intervalos
imprevisíveis

Estímulo esporádico: não é periódico mas
sabemos o intervalo mínimo entre ocorrências
Considerações de projeto



STR são geralmente implementados por
tarefas cooperantes com um real-time
executive que as controla
Precisa de rápida mudança de contexto
entre tarefas
Demandas temporais de estímulos com
caracteríticas diferentes inviabilizam o uso
de loops sequenciais
Metodologia de projeto



Identifique os estímulos
Para cada estímulo e resposta, identifique
as restrições temporais
Agregue um estímulo (ou uma classe de
estímulos) e resposta em tarefas
concorrentes.
Metodologia de projeto



Projete algorítmos para cada processo de
forma a obedecer as restrições temporais.
Analise o método de escalonamento de
forma a garantir a resposta dentro dos
deadlines
Implemente usando um executivo de
tempo real
Notações

Deadline
•

Release time
•

tempo mínimo para início da tarefa
Tempo de execução
•

tempo máximo para término da tarefa
tempo para executar a tarefa na ausência de
confliots por recursos
Worst-case execution time (WCET)
•
pior tempo de execução possível para uma tarefa
Tipos de escalonamento

Pre-runtime
• Tabela de tempos de início e término das
tarefas
• Tudo definido a priori
• Muito seguro
• Não trata bem tarefas esporádicas

Estático
•
•
•
•
Prioridades dos processos definidas a priori
Ordem de execução definida on-line
Pior utilização do processador
Bom com tarefas esporádicas
Sistemas Executivos de Tempo Real




Sistemas operacionais simplificados,
eficientes e pequenos
Os tempos de resposta das chamadas
devem ser limitados e conhecidos
O método de escalonamento deve ser
determinístico e conhecido do projetista
Existem no comércio mas são
frequentemente construídos pela equipe
Componentes de um Executivo





Relógio de tempo real
Interrupt handler
Escalonador
Gerenciador de recursos
Dispatcher
Exemplo: Sistema de Segurança
Sensores de intrusos
..
.
Pânico
Teclado(s)
Visor(es) de cristal
Modem
Em. Médica
Incêndio
Sirene
Carga da Bateria
Rádio
Voltagem da rede
Exemplo: Sistema de Segurança





Bateria deve durar 4 dias
Não deve perder status mesmo quando a bateria
acabar
Deve manter um log por pelo menos 180 dias
Deve ter zonas temporizadas
Tem que ser multi-tarefa
Tolerância a Falhas
Tolerância a falhas

Sistemas computacionais em toda parte

Aumento da dependência dos usuários

Sistemas devem continuar operando
mesmo na ocorrência de falhas
Tolerância a falhas
Inserção de Redundância

Hardware

Software

Informação

Tempo
Tolerância a falhas
Terminologia

Falha, erro e defeito

Modelo dos Três Universos
Universo do Usuário
Universo da
Informação
Defeito
Erro
Universo
Falha
Físico
Tolerância a falhas
Técnicas

NMR (N-modular redundancy)
Módulo 1
Entrada
Saída Eleita
Módulo 2
...
Módulo n
Voter
Tolerância a falhas
Técnicas

Mid-Value Select
valor
tempo
saída selecionada
Tolerância a falhas
Técnicas

Flux-Summing
Módulo 1
Entrada
Módulo 2
...
Módulo n
+
Saída
Tolerância a falhas
Técnicas

Código de Hamming
• Detecção e correção de erros
Dados
Codificador
Código
Código Original
Comparador
Dados
Codificador
Código Gerado
Erro
Download

Tempo real e tolerancia - Centro de Informática da UFPE