You are on page 1of 21

Sistemas de

Tempo Real e
Tolerantes
Falha
Projeto de Sistemas de Tempo
Real
Agenda
Modelo Geral
Especificaes de Projeto
Definio da Arquitetura
Hardware
Software
Projeto detalhado
Implementao
Teste
Modelo Geral
Os sistemas de tempo real so geralmente reativos e baseados numa
abordagem estmulo-resposta.
Diretriz geral: processos separados para cada tipo de sensor e atuador
Notaes
Desenvolver um projeto basicamente realizar a
transformaes entre diferentes notaes em diferentes
estgios.

Nos nveis mais altos, as transformaes no so bem
definidas.

Notao vaga e no captura a semntica das transformaes.
Nveis de Notaes
Informal
Linguagem corrente

Estruturada
Representao grca
Componentes bem denidos
Interconexes bem denidas

Formal
Base matemtica
Descries precisas
Encapsulamento
Abstrao exige subcomponentes
Funes bem denidas
Interconexes no ambguas
Interfaces claras
Information hiding

Coeso
Coincidencial, Lgica , Temporal, Procedural, Comunicacional,
Funcional

Acoplamento
Forte, fraco
Detalhamento do Projeto
Top-down
Decomposio
Abstrao
Pode ser difcil de utilizar j que decises de baixo nvel, relacionadas
ao hardware precisam ser tomadas desde o incio.
Os custos, consumo de energia e espao so crticos.

Botton-up
Facilita a reutilizao de mdulos
Adapta-se melhor a pequenos projetos
Implementao
Gap entre metodologia de projeto e linguagem de programao.

As linguagens de programao precisam incluir recursos de baixo nvel.

Nveis de Linguagens
Linguagem de baixo nvel: Assembly
Linguagens alto nvel sequenciais: Fortran, Pascal, Modula-2, C, C++
Linguagens de alto nvel concorrentes: Ada, Occam, Java
Linguagens que suportam a noo de tempo: VHDL, Verilog

Java vem sendo atualizada para incluir vrios mecanismos que permitam o
uso em sistemas de tempo real.
Principais atividades do projeto
Seleo da plataforma (hardware e SO)

Identificar os estmulos (sensores) /respostas (atuadores).

Analisar restries temporais (timing) para cada estmulo (restries de
tempo).

Alocar estmulo e processamento a processos concorrentes.

Projeto de processos (concorrentes), de acordo com a arquitetura do
sistema.
Principais atividades do projeto
Projetar os algoritmos para fazer o processamento necessrio






Projeto de dados

Teste de escalabilidade
Projetar um sistema de alocao (scheduling) que permita atender as
restries temporais
Consideraes
Coordenao de processos (semforos, regies crticas).

Pode ser difcil realizar anlises para avaliar se as restries temporais
sero atendidas.

Linguagens OO podem no ser eficientes para implementar um STR.

Os processos podem
executar com diferentes
velocidades.
Excluso mtua para
controlar o acesso.
Modelagem de Sistema de Tempo Real
As respostas aos estmulos muitas vezes dependem do estado do sistema.
UML: diagrama de transio de estados


Bomba de gasolina automtica
Arquitetura de um sistema de
monitorao e controle

Padres de arquitetura
Um padro de arquitetura pode ser visto como um projeto genrico a ser
utilizado por outros projetos com caractersticas similares.

Existem 3 padres que iremos mostrar:
Observar e reagir
Controle de ambiente
Pipeline de processo
Padres de arquitetura

Padres de arquitetura
Controle de ambiente

Padres de arquitetura
Pipeline de processo

Gerenciamento de Processos
Muitos sistemas embutidos funcionam como sistemas operacionais de
tempo real e possuem, de um modo geral:
Relgio de tempo real
Tratador de interrupes
Escalonador (scheduler)
Gerenciador de recurso de despachador

Os processos devem ser tratados com pelo menos dois nveis de
prioridade.
Nvel de interrupo, para os processos que precisam de uma resposta
rpida.
Nvel de relgio, para os processos peridicos.
Teste
Diculdade de teste devido as caractersticas temporais.

Interaes entre processos so difceis de reproduzir.

Respostas a condies imprevistas do ambiente

Simulao
Teste de arquiteturas
Teste com mdulos simulados
Exemplo: sistema de alarme contra
roubos para edifcios comerciais
Sensores de movimento em salas (200)
Sensores em janelas (50)
Sensores de porta (30)
Chama um telefone da polcia e sintetiza voz para indicar
onde foi ativado o alarme
liga alarme sonoro
Acende luzes ao redor do sensor ativado
Tem back-up de energia e monitora a queda de energia,
mudando para a conjunto de baterias.
Concluso





"A vida no examinada no vale a pena ser vivida.
Scrates

You might also like