24
Sistemas de Tempo Real Sistemas de Tempo Real Sérgio Cavalcante [email protected] (81) 32718430 Centro de Informática Universidade Federal de Pernambuco

Sistemas de Tempo Real Sérgio Cavalcante [email protected] (81) 32718430 Centro de Informática Universidade Federal de Pernambuco

Embed Size (px)

Citation preview

Page 1: Sistemas de Tempo Real Sérgio Cavalcante svc@cin.ufpe.br (81) 32718430 Centro de Informática Universidade Federal de Pernambuco

Sistemas de Tempo RealSistemas de Tempo RealSérgio Cavalcante

[email protected](81) 32718430

Centro de InformáticaUniversidade Federal de Pernambuco

Page 2: Sistemas de Tempo Real Sérgio Cavalcante svc@cin.ufpe.br (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

Page 3: Sistemas de Tempo Real Sérgio Cavalcante svc@cin.ufpe.br (81) 32718430 Centro de Informática Universidade Federal de Pernambuco

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

Page 4: Sistemas de Tempo Real Sérgio Cavalcante svc@cin.ufpe.br (81) 32718430 Centro de Informática Universidade Federal de Pernambuco

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

Page 5: Sistemas de Tempo Real Sérgio Cavalcante svc@cin.ufpe.br (81) 32718430 Centro de Informática Universidade Federal de Pernambuco

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

Page 6: Sistemas de Tempo Real Sérgio Cavalcante svc@cin.ufpe.br (81) 32718430 Centro de Informática Universidade Federal de Pernambuco

Modelo de sistema de tempo real

Sistema de con-trole de tempo real

AtuadorAtuador AtuadorAtuador

SensorSensorSensor SensorSensorSensor

Page 7: Sistemas de Tempo Real Sérgio Cavalcante svc@cin.ufpe.br (81) 32718430 Centro de Informática Universidade Federal de Pernambuco

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

Page 8: Sistemas de Tempo Real Sérgio Cavalcante svc@cin.ufpe.br (81) 32718430 Centro de Informática Universidade Federal de Pernambuco

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

Page 9: Sistemas de Tempo Real Sérgio Cavalcante svc@cin.ufpe.br (81) 32718430 Centro de Informática Universidade Federal de Pernambuco

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.

Page 10: Sistemas de Tempo Real Sérgio Cavalcante svc@cin.ufpe.br (81) 32718430 Centro de Informática Universidade Federal de Pernambuco

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

Page 11: Sistemas de Tempo Real Sérgio Cavalcante svc@cin.ufpe.br (81) 32718430 Centro de Informática Universidade Federal de Pernambuco

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

Page 12: Sistemas de Tempo Real Sérgio Cavalcante svc@cin.ufpe.br (81) 32718430 Centro de Informática Universidade Federal de Pernambuco

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

Page 13: Sistemas de Tempo Real Sérgio Cavalcante svc@cin.ufpe.br (81) 32718430 Centro de Informática Universidade Federal de Pernambuco

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

Page 14: Sistemas de Tempo Real Sérgio Cavalcante svc@cin.ufpe.br (81) 32718430 Centro de Informática Universidade Federal de Pernambuco

Componentes de um Executivo Relógio de tempo real Interrupt handler Escalonador Gerenciador de recursos Dispatcher

Page 15: Sistemas de Tempo Real Sérgio Cavalcante svc@cin.ufpe.br (81) 32718430 Centro de Informática Universidade Federal de Pernambuco

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

Page 16: Sistemas de Tempo Real Sérgio Cavalcante svc@cin.ufpe.br (81) 32718430 Centro de Informática Universidade Federal de Pernambuco

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

Page 17: Sistemas de Tempo Real Sérgio Cavalcante svc@cin.ufpe.br (81) 32718430 Centro de Informática Universidade Federal de Pernambuco

Tolerância a Falhas

Page 18: Sistemas de Tempo Real Sérgio Cavalcante svc@cin.ufpe.br (81) 32718430 Centro de Informática Universidade Federal de Pernambuco

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

Page 19: Sistemas de Tempo Real Sérgio Cavalcante svc@cin.ufpe.br (81) 32718430 Centro de Informática Universidade Federal de Pernambuco

Tolerância a falhas

Inserção de Redundância

Hardware Software Informação Tempo

Page 20: Sistemas de Tempo Real Sérgio Cavalcante svc@cin.ufpe.br (81) 32718430 Centro de Informática Universidade Federal de Pernambuco

Tolerância a falhas

Terminologia Falha, erro e defeito Modelo dos Três Universos

UniversoFísico

Universo daInformação

Universo do Usuário

FalhaErroDefeito

Page 21: Sistemas de Tempo Real Sérgio Cavalcante svc@cin.ufpe.br (81) 32718430 Centro de Informática Universidade Federal de Pernambuco

Tolerância a falhas

Técnicas NMR (N-modular redundancy)

Módulo 1

Módulo 2

Módulo n

...

VoterSaída EleitaEntrada

Page 22: Sistemas de Tempo Real Sérgio Cavalcante svc@cin.ufpe.br (81) 32718430 Centro de Informática Universidade Federal de Pernambuco

Tolerância a falhas

Técnicas Mid-Value Select

valor

tempo

saída selecionada

Page 23: Sistemas de Tempo Real Sérgio Cavalcante svc@cin.ufpe.br (81) 32718430 Centro de Informática Universidade Federal de Pernambuco

Tolerância a falhas

Técnicas Flux-Summing

Módulo 1

Módulo 2

Módulo n

...+

SaídaEntrada

Page 24: Sistemas de Tempo Real Sérgio Cavalcante svc@cin.ufpe.br (81) 32718430 Centro de Informática Universidade Federal de Pernambuco

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