Sistemas de Tempo Real Sérgio Cavalcante svc@cin.ufpe.br (81) 32718430 Centro de Informática...

Preview:

Citation preview

Sistemas de Tempo RealSistemas de Tempo RealSérgio Cavalcante

svc@cin.ufpe.br(81) 32718430

Centro de InformáticaUniversidade 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

Sistema de con-trole de tempo real

AtuadorAtuador AtuadorAtuador

SensorSensorSensor SensorSensorSensor

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

• tempo máximo para término da tarefa Release time

• tempo mínimo para início da tarefa Tempo de execução

• 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

Em. Médica

Incêndio

Carga da Bateria

Voltagem da rede

Teclado(s)

Visor(es) de cristal

Modem

Sirene

Rádio

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

UniversoFísico

Universo daInformação

Universo do Usuário

FalhaErroDefeito

Tolerância a falhas

Técnicas NMR (N-modular redundancy)

Módulo 1

Módulo 2

Módulo n

...

VoterSaída EleitaEntrada

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

Módulo 2

Módulo n

...+

SaídaEntrada

Tolerância a falhas

Técnicas Código de Hamming

• Detecção e correção de erros

Codificador

Codificador

Comparador

Dados

Dados

Código

Código Original

Código Gerado

Erro

Recommended