Monitoramento, Métricas e Mensuração - MBA Mkt Digital iDez - aula 01
Sistemas de Tempo Real - macedo.ufba.br · 7 Equívocos comuns • Tempo-real não implica em ´rap...
Transcript of Sistemas de Tempo Real - macedo.ufba.br · 7 Equívocos comuns • Tempo-real não implica em ´rap...
1
Sistemas de Tempo Real
Prof. Raimundo Macêdo
Raimundo Macêdo LaSiD/DCC/UFBA
1
2o trimestre de 2011
Habilidades esperadas ao final do curso
Conhecimento sobre os principais problemas e conceitos de sistemastempo real (tipos, arquiteturas, requisitos de segurança, temporal, etc).tempo real (tipos, arquiteturas, requisitos de segurança, temporal, etc).
Entendimento do principais mecanismos de projeto de tempo real(gerencia de tempo global, escalonamento, confiabilidade, etc.)
Raimundo Macêdo LaSiD/DCC/UFBA
2
Capacidade de projetar e implementar um software de tempo real(projeto prático)
2
Programação
1. Aulas expositivas
2. Seminários pelos Alunos
3. Discussões Orientadas por Textos Previamente Dados
4. Projeto Prático (?)
5 P
Raimundo Macêdo LaSiD/DCC/UFBA
3
5. Prova
Avaliação
50 ou 30 % Prova Escrita (1 prova)
50 ou 35% Seminários (pelo menos 2 seminários)
35% Projeto Prático? (1 projeto individual)
Raimundo Macêdo LaSiD/DCC/UFBA
4
3
Programa do Curso
1. Introdução1. Conceituação e definições básicas2. Motivação para Sistemas de Tempo Real3. Exemplos de Sistemas de Tempo Realp S p4. Requisitos Temporais5. Confiabilidade6. Escalonamento7. Tipos de Sistemas Operacionais quanto ao Escalonamento
2. Sistemas Distribuídos de Tempo Real (Modelos de Sistemas)3. Escalonamento (princípios, mecanismos e restrições)4. Cálculo do Tempo de Execução no Pior Caso (WCET)5 T Si i ã d R ló i
Raimundo Macêdo LaSiD/DCC/UFBA
5
5. Tempo e Sincronização de Relógios6. Confiabilidade e Determinismo de Réplicas7. Arquiteturas de Sistemas de Tempo Real
Artigos para serem lidos e discutidos pelos alunos, por assunto
Introdução1. Misconceptions about real-time computing. JOHN A. STANKOVIC . IEEE Computer, 1988
Sistemas Distribuídos de Tempo Real (Modelos de Sistemas)1. An Integrated Group Communication Infrastructure for Hybrid Real-Time Distributed Systems. Raimundo g p y y
José de Araújo Macêdo. In 9th Workshop on Real-Time Systems (WTR 2007). Belém, Brazil, May 28th, 2007. (somente introdução)
Escalonamento (princípios, mecanismos e restrições)1. Scheduling algorithms and operating systems support for real-timesystems. KRITHI RAMAMRITHAM AND
JOHN A. STANKOVIC. Proc. Of IEEE. Jan 1994. Volume: 82, Issue: 1. page(s): 55-672. LIU, C. L. and LAYLAND, James W. Scheduling Algorithms for Multiprogramming in a Hard-Real-Time
Environment. Journal of the Association for Computing Machinery 20, 1(Janauary 1973), 46-61.3. + artigos de análise probabilistica
Tempo e Sincronização de Relógios1 Temporal uncertainties in interactions among real-time objects H Kopetz and K Kim Ninth
Raimundo Macêdo LaSiD/DCC/UFBA
6
1. Temporal uncertainties in interactions among real-time objects. H. Kopetz and K. Kim. NinthSymposium on Reliable Distributed Systems. 9-12 Oct 1990. pages: 165- 174.
2. On the role of time in distributed systems Verissimo, P.; Distributed Computing Systems, 1997., Proceedings of the Sixth IEEE Computer Society Workshop on Future Trends of , 29-31 Oct. 1997.
3. Probalibistic Clock Synchronization. Distributed Computing. Vol. 3 (Springer Verlag) pp. 146-185
4
Arquiteturas de Sistemas de Tempo Real
1. The time-triggered architecture. Kopetz, H.; Bauer, G.; Proceedings of the IEEE , Volume: 91 Issue: 1 , Jan. 2003.2. Adaptive middleware: Middleware for real-time and embedded systems. Douglas C. Schmidt June
2002 Comm nications of the ACM Vol me 45 Iss e 62002 Communications of the ACM, Volume 45 Issue 6.3. Real-Time Component Software For Flexible And Interoperable Automation Systems.
Sandro Santos Andrade; Raimundo José de Araújo MacêdoIn Anais do XII Congresso Brasileiro de Automática (XII CBA).Salvador. 2006. v. 1. p. 3014-3019. 2006.
Raimundo Macêdo LaSiD/DCC/UFBA
7
Livros1. Hermann Kopetz, Real-Time Systems (Design Principles for Distributed Embedded Aplications, Kluwer Ac.
Publishers. 1997
2. A. Burns & A. Wellings, Real-TimeSystems and Programming Languages, 3rd Edition, Addison-Wesley, 2001.
3. Jane W. S. Liu, Real-time Systemes, Prentice Hall, 2000.
4. Tratando a previsibilidade em sistemas de tempo-real distribuídos: Especificação. Linguagens, Middleware e Mecanismos Básicos. R. J. A Macêdo, G. M. Lima, L. P. Barreto, A.M.S.Andrade, F.J.R.Barboza, A. Sá, R. Albuquerque, S. Andrade. Capítulo 3 do Livro texto para o mini-curso a ser apresentado no do 22o. Simpósio Brasileiro de Redes de Computadores, SBRC'2004, pp. 105-163, ISBN: 85-88442-82-5, 10 a 14 de maio de 2004, Gramado, RS. (livre download : http://www.lasid.ufba.br/public/publicacoes.html)
5. Jean-Marie Farines (UFSC), Joni da S. Fraga (UFSC), Rômulo S. de Oliveira (UFRGS) (Escola de Computação, 2000). Livre para download em http://www.lcmi.ufsc.br/gtr/livro/principal.htm
6. Paulo Veríssimo and Luís Rodrigues. Distributed Systems for System Architects, Kluwer Academic Piblishers, 2001.
7. Pankaj Jalote. Fault-Tolerance in Distributed Systems. Prentice Hall, 1994.
Raimundo Macêdo LaSiD/DCC/UFBA
8
SitesIEEE Technical Committee on Real Time Systems http://cs-www.bu.edu/pub/ieee-rts/Home.html
5
Outros Artigos
The future of autonomous decentralized systemsKopetz, H.; Autonomous Decentralized Systems, 2003. ISADS 2003. The Sixth International Symposium on , 9-11 April 2003
Fault containment and error detection in the time-triggered architectureKopetz, H.; Autonomous Decentralized Systems, 2003. ISADS 2003. The Sixth International Symposium on , 9-11 April 2003
Safe automotive software developmentKen Tindell; Kopetz, H.; Ernst, F.R.; Design, Automation and Test in Europe Conference and Exhibition, 2003 , March 3-7, 203
Automotive electronics Kopetz, H.; Real-Time Systems, 1999. Proceedings of the 11th Euromicro Conference on , 9-11 June 1999
Which models and architectures of distributed real-time computing systems suit which application area? Kopetz, H.;Object-Oriented Real-Time Distributed Computing, 1999. (ISORC '99) Proceedings. 2nd IEEE International Symposium on , 2-5 May 1999
The time-triggered architecture Kopetz, H.; Object-Oriented Real-Time Distributed Computing, 1998. (ISORC 98) Proceedings. 1998 First International Symposium on , 20-22 April 1998
Raimundo Macêdo LaSiD/DCC/UFBA
9
The design of fault-tolerant real-time systemsKopetz, H.; EUROMICRO 94. System Architecture and Integration. Proceedings of the 20th EUROMICRO Conference. , 5-8 Sept. 1994
How hard is hard real-time communication on field-buses? Verissimo, P.; Rufino, J.; Li Ming;Fault-Tolerant Computing, 1997. FTCS-27. Digest of Papers., Twenty-Seventh Annual International Symposium on , 24-27 June 1997
Deadline Handling in Real Time Distributed Objects K H (Kane) Kim Juqiang Liu Moon Hae KimDeadline Handling in Real-Time Distributed Objects K. H. (Kane) Kim Juqiang Liu Moon-Hae Kim
Proc. ISORC 2000 (IEEE CS 3rd Int'l Symp. on Object-oriented Real-time distributed Computing), Newport Beach, CA, March 2000, pp.7-15.
A TMO Based Approach to Structuring Real-Time Agents. K. H. (Kane) Kim. Proc. ICTAI 2002 (IEEE CS 14th Int'l Conf. on Tools with AI), Washington, D.C., Nov. 2002, pp. 165-172.
Group Communication in Real-Time Computing Systems: Issues and Directions
K. H. (Kane) Kim, Proc. FTDCS '99 (7 th IEEE Workshop on Future Trends of Distributed Computing Systems), Cape Town, South Africa, Dec.20 -22, 1999, pp.252-258.
•C. Lu, B. Blum, T. Abdelzaher, J. Stankovic, and T. He, RAP: A Real-Time Communication Architecture for Large-Scale Wireless Sensor Networks, RTAS, September 2002.
Raimundo Macêdo LaSiD/DCC/UFBA
10
•Strategic directions in real-time and embedded systems John A. Stankovic.December 1996 ACM Computing Surveys (CSUR), Volume 28 Issue 4
6
Real-time and embedded systems John A. Stankovic
March 1996 ACM Computing Surveys (CSUR), Volume 28 Issue 1
Adaptive middleware: Middleware for real-time and embedded systems Douglas C. Schmidt June 2002 Communications of the ACM, Volume 45 Issue 6
Raimundo Macêdo LaSiD/DCC/UFBA
11
O que é um Sistema de Tempo Real ?
um sistema de processamento de informação que tem que responder a estímulos externos dentro de limites (finitos) de tempo especificados
Mais ainda......
a correção da computação não depende só do resultado lógico, mas dotempo em que este foi produzido
Raimundo Macêdo LaSiD/DCC/UFBA
12
7
Equívocos comuns
• Tempo-real não implica em ´rapidez´, mas sim em previsibilidade
• Conceito de rápido depende do contexto:– Atrasos de transmissão em Satélite– Telefonia
• Não adianta ´correr´ se for impossível tratar o pior caso– Algum dia pode acontecer pane geral
Raimundo Macêdo LaSiD/DCC/UFBA
13
Um sistema computacional de tempo real é sempre parte de umasistema maior (sistema de tempo real) que muda seu estado em funçãodo tempo físico.Ex: uma reação química continua mudando seu estado mesmodepois do sistema computacional de controle tenha parado.
Alguns desafios:gu s desa os:
• modelar a interação entre o computador e o mundo real
• manter a precisão da medidas de tempo (a temperatura de um formohá 30 minutos atrás pode não ser mais útil)
• acomodar cargas relevantes de processamento com recursos finitos
Raimundo Macêdo LaSiD/DCC/UFBA
14
• reconhecer prazos (deadlines)
• tolerar falhas (se o computador de controle falhar, nenhum prazo será atendido)
• complicações adicionais acontecem se o sistemas é distribuído
8
Principais entidades de um sistema de tempo-real (TR)
Objeto ouinterface de
sensores e atuadores
operador
Sistema Computacional tempo-real de controle
Objeto ou sistema controlado, ou Planta
interfacehomem-máquina
interface de instrumentação
monitor, teclado, etc.
Raimundo Macêdo LaSiD/DCC/UFBA
15
ambiente
EX: Controlador Digital PID(Proporcional, Integral e Derivativo)
A/DEntrada de
R(t) rk
CONTROLADOR
A/D
Computação da Leide Controle
D/AEntrada dereferência
yk
uk
u(t)y(t)
Raimundo Macêdo LaSiD/DCC/UFBA
16
AtuadorPlantaSensor
Seja o erro e(t) = r(t) – y(t)u(t) envolve três termos: proporcional a e(t); proporcional a integral de e(t); proporcional a derivada de e(t).
Amostras de r(t) e y(t) são coletadas periodicamente (a cada T unidades de tempo), k = 0,1,2,....uk = uk-2 + αek + βek-1 + γ(ek-2) ….. α, β e γ são escolhidos em tempo de projeto
9
EX: Controlador Digital PID(Proporcional, Integral e Derivativo)
Seja o erro e(t) = r(t) – y(t)u(t) envolve três termos: proporcional a e(t); proporcional a integral de e(t); proporcional a derivada de e(t)u(t) envolve três termos: proporcional a e(t); proporcional a integral de e(t); proporcional a derivada de e(t).
Amostras de r(t) e y(t) são coletadas periodicamente (a cada T unidades de tempo), k = 0,1,2,....uk = uk-2 + αek + βek-1 + γ(ek-2) ….. α, β e γ são escolhidos em tempo de projeto
Set timer to interrupt periodically with period TAt each timer interrupt, do
do analog-to-digital conversion to get y;compute control output u;
Programa do controlador
Raimundo Macêdo LaSiD/DCC/UFBA
17
output u and do digital-to-analog conversion;End do;
A escolha de T é um ponto chave para manter a estabilidade da função de controle, o tempo de respostadentro de limites aceitáveis (ex: a ação de um piloto), e para manter os recursos do sistema dentro de limitesdisponíveis
Exemplos de Sistemas de Tempo-Real
Controlador de fluxo de um canoControlador de fluxo de um canoem geral deve-se dispor de sensores independentes para medir o efeitoda ação nos atuadores(ex: sensor de posição da válvula)
sistema computacional de controleponto de operaçãoselecionado pelo operador
Raimundo Macêdo LaSiD/DCC/UFBA
18
válvula de controlede vapor
sensor de fluxo
10
Requisitos Temporais
loops de controle em geral definem os requisitos temporais
i t t i l d t l d di t t d li ido sistema computacional de controle deve medir a temperatura do liquido periodicamente para detectar desvios entre o valor desejado e o real
sistema computacional de controleponto de operaçãoselecionado pelo operador
Raimundo Macêdo LaSiD/DCC/UFBA
19
sensor temperatura
válvula de controlede vapor
cano de vapor
sensor de fluxo
Exemplos de Sistemas de Tempo-Real
Controlador de motor de carroControlador de motor de carro
calcula a quantidade de combustível e o exato momento em que estecalcula a quantidade de combustível e o exato momento em que estedeve ser injetado na câmara de combustão de cada cilindrodeve ser injetado na câmara de combustão de cada cilindro
Raimundo Macêdo LaSiD/DCC/UFBA
20Raimundo Macêdo LaSiD/DCC/UFBA
20
11
Exemplos de Sistemas de Tempo-Real
Controlador de motor de carroControlador de motor de carro
calcula a quantidade de combustível e o exato momento em que estecalcula a quantidade de combustível e o exato momento em que estedeve ser injetado na câmara de combustão de cada cilindrodeve ser injetado na câmara de combustão de cada cilindro
Raimundo Macêdo LaSiD/DCC/UFBA
21
Sistemas de Tempo-Real
AmbienteEntidade de tempo
Sistema de computação
Sistema de computação
AmbienteEntidade de tempoEntidade de tempo-
real, operadorcomputação(objeto de tempo-
real)
computação (objeto de tempo-
real)
Entidade de tempo-real, operador
Evento Estímulo(s) Tarefa(s) Resposta
Raimundo Macêdo LaSiD/DCC/UFBA
22
12
Como projetar um sistema de tempo-real?
Especificação dos requisitos
mecanismos de redundância
linguagens + middleware
aplicação
Prova de propriedades
Técnicas de tolerância a falhas
Testes validação
Raimundo Macêdo LaSiD/DCC/UFBA
23
ambiente
gerencia de recursos Escalonamento + reserva
Tempo e previsibilidade Uma questão vital
O que significa tempo ???
Tempo de execuçãoTempo de execuçãop çp ç
Tempo lógico (Lamport)Tempo lógico (Lamport)
Tempo denso Tempo denso ⇔⇔ tempo físico representado pelos números reaistempo físico representado pelos números reais
Tempo Discreto Tempo Discreto ⇔⇔ tempo físico representado pelos naturais positivos tempo físico representado pelos naturais positivos
T Gl b l ( f i ú iT Gl b l ( f i ú i l t dl t d ii di t ib íd )di t ib íd )
Raimundo Macêdo LaSiD/DCC/UFBA
24
Tempo Global (referencia única,Tempo Global (referencia única, vale para todos os vale para todos os sites sites distribuídos)distribuídos)
Tempo Local Tempo Local
13
Rede de Comunicação
Sistemas Distribuídos de Tempo-Real requerem:p q
Relógios Globais para medidas relativas de tempo (durações) e absolutas (ponto no tempo)
Exs: sincronização do progresso de um sistema concorrente
Raimundo Macêdo LaSiD/DCC/UFBA
25
(tempo para acionar troca de pontos e semáforos num sistemade trens representado por um grupo de atuadores)
concordância no tempo em que aconteceram certos eventos (umlog distribuído de alarmes pode determinar causas, implicações ,etc).
Rede de Comunicação
Precisão (π) : divergência relativaentre medidas em cada processo
Exatidão (acuracy, α) :divergência absoluta em relação ao tempo externo
Granularidade (g) : duração de umabatida do relógio virtual (que pode
α
P1
P2
Pexterno
ser maior que o relógio físico)
Raimundo Macêdo LaSiD/DCC/UFBA
26
P3
Batida (tick) global i i+1 i+2
πg
14
Estruturação do Sistema de Tempo-Real
• Modelo de tarefas Г = {τ1, τ2, …, τn}– Alguns dos atributos mais comuns
• Tempo máximo de computação (Ci) – é usado o WCET• Tempo máximo de computação (Ci) é usado o WCET
• Deadline (Di)
• Período (Ti) – refere-se a ativação das tarefas– Periódicas, esporádicas ou aperiódicas
• Jitter – variação máxima entre duas ativações consecutivas
Raimundo Macêdo LaSiD/DCC/UFBA
27
– Restrições Típicas: Di = T; tarefas são periódicas etc
atributos temporaisTi periodicidade
Di
...
deadlinerelativo
Raimundo Macêdo LaSiD/DCC/UFBA
28
TempoCiAi
di0
T. ativação T. execuçãodeadlineabsoluto
15
Tarefas podem ser
Periódicas (T exato é conhecido)
Esporádica (mínimo T é conhecido)
Aperiódica (T não conhecido)
Raimundo Macêdo LaSiD/DCC/UFBA
29
Tarefa Periódica
T T
CAi di
Di
CAi di
Di
Raimundo Macêdo LaSiD/DCC/UFBA
30
CiAi di Ci
Ai di
16
Ativação de Tarefas
• Por evento (Event-triggered)– Tarefas são disparadas pela percepção da ocorrência de
eventos– Sistemas mais versáteis– Requerem ferramentas mais elaboradas para garantia de
correção• Por tempo (Time-triggered)
Raimundo Macêdo LaSiD/DCC/UFBA
31
– Tarefas respondem a eventos em momentos predeterminados
– Sistemas menos versáteis– Mais fáceis de se garantir correção
Sobre deadlines (prazos)
Um sistema computacional de TR tem que reagir a estímulos a partirdo objeto controlado (ou operador) dentro de intervalos de tempoimpostos pelo ambiente.
Deadline é o instante em que o resultado deve ser produzido
Se o resultado tem utilidade depois do prazo soft deadline
Raimundo Macêdo LaSiD/DCC/UFBA
32
Caso contrário firm deadline
Se uma catástrofe pode acontecer hard deadline
.
17
Um sistema computacional que tem de garantir pelo menos um hard
Deadline é chamado hard real-time computer system (ou safety-critical computer system) - HRT
Ou Sistema computacional de tempo-real rígido (crítico)
Se todos deadlines são soft é um soft real-time computer system ou
Sistema computacional de tempo-real brando
Raimundo Macêdo LaSiD/DCC/UFBA
33
Um sistema computacional HRT tem que garantir comportamento temporal correto mesmo sob quaisquer
condições de carga e falhas.
Exemplos de Sistemas de Tempo-Real quanto à rigidez dos prazos
soft (brandos ou não críticos)soft (brandos ou não críticos)falhas temporais ocasionais são aceitáveis (nenhuma catástrofe)
ex: reserva aérea, comutação telefônica.
Hard (críticos)
Raimundo Macêdo LaSiD/DCC/UFBA
34
falhas temporais podem levar a catástrofes
ex: controle de vôo, planta nuclear
18
Problema de Escalonamento
Qual tarefa executar agora? σ2 σ3
• Disparadas por tempo (time-trigged)– Determina-se off-line a seqüência de ativação de
f d d i
Nenhuma deve violar suas restrições temporais! σ1
Raimundo Macêdo LaSiD/DCC/UFBA
35
tarefas durante a construção do sistema• Disparadas por evento (event-trigged)
– Técnicas on-line são usadas
Requisitos de um sistema de tempo real
Funcionais
Temporais
Confiança no Funcionamento (dependability)
Raimundo Macêdo LaSiD/DCC/UFBA
36
19
Requisitos funcionais1. Coleção de dados de tempo-real
2. Controle digital direto
3. Interação homem-máquina
1) Coleção de dados de tempo-real
O objeto controlado muda seu estado em função do tempo. O estado doobjeto é representado pelos valores das variáveis de estado, cada uma representando uma entidade de tempo real (real-time entity)
EX bj t t l d RTE l li ã l id d i ã d h
Raimundo Macêdo LaSiD/DCC/UFBA
37
EX: objeto controlado carro. RTEs : localização, velocidade, posição das chaves do painel, posição do pistão no cilindro, etc.
Tempo 40k/h 30k/h 40k/h 60k/h
Requisitos funcionais1. Coleção de dados de tempo-real
2. Controle digital direto
3. Interação homem-máquina
Uma imagem de tempo real somente tem precisão temporal dentro de
I d l
Uma imagem de tempo real somente tem precisão temporal dentro deum limite de tempo. O conjunto de todas as imagens precisas de tempo-realde um objeto controlado é chamado de banco de dados de tempo-real
Deve ser atualizado toda vez que uma entidade de tempo real muda seu valor !!
Time-trigged
Raimundo Macêdo LaSiD/DCC/UFBA
38
Tempo 40k/h 30k/h 40k/h 60k/h
Imagem de tempo-real Event-trigged
20
Requisitos funcionais1. Coleção de dados de tempo-real
2. Controle digital direto
3. Interação homem-máquina
Condicionamento de sinalCondicionamento de sinal
Processamento necessário para transformar sinais de sensores (ex: voltagens)em dados manipuláveis da entidade de tempo-real.
Técnicas : tirar média para eliminar erros, fazer testes de conformidade, etc.
Monitoramento de Alarmes
Raimundo Macêdo LaSiD/DCC/UFBA
39
Monitoramento de Alarmes
O sistema computacional deve monitorar continuamente as entidades de tempo-real paradetectar comportamentos anormais (ex: rupturas de canos ou containeres podem causardesvios de comportamentos em muitas ETR (entidade de tempo-real), causando disparosde alarmes pre-fixados (temperaturas, níveis de líquidos, etc) : Shower.
Requisitos funcionais1. Coleção de dados de tempo-real
2. Controle digital direto
3. Interação homem-máquina
Monitoramento de Alarmes
O sistema computacional de TR deve detectar e mostrar (display) os alarmes, assistindo o OPERADOR no trabalho de identificação do evento inicial causador do alarm shower
Para isso os alarmes são salvos em logs com o registro de tempo de suas ocorrências
Raimundo Macêdo LaSiD/DCC/UFBA
40
Para isso os alarmes são salvos em logs com o registro de tempo de suas ocorrências.
O Sistema Computacional de TR deve ter comportamento correto mesmo em situaçõesde picos de carga de disparo de alarmes
21
Requisitos funcionais1. Coleção de dados de tempo-real
2. Controle digital direto
3. Interação homem-máquina
Controle Digital Direto
Muitos sistemas computacionais de TR devem calcular os set points para os atuadores e controladiretamente o Objeto controlado (sem ajuda de um sistema de controle subjacente).
Aplicações de controle consistem em seqüências de períodos de controle
1. leitura (amostragem) da entidade de tempo-real2. calculo do novo set point para o atuador3. output do set point para o atuador
LOOP
Raimundo Macêdo LaSiD/DCC/UFBA
41
Interação homem-máquina
Interface homem-máquina é um componente fundamental : informa o operador o estadocorrente do objeto controlado e assiste o operador na função de controle do objeto (plantaou máquina)
Requisitos Temporais
loops de controle em geral definem os requisitos temporais
i t t i l d t l d di t t d li ido sistema computacional de controle deve medir a temperatura do liquido periodicamente para detectar desvios entre o valor desejado e o real
sistema computacional de controleponto de operaçãoselecionado pelo operador
Raimundo Macêdo LaSiD/DCC/UFBA
42
sensor temperatura
válvula de controlede vapor
cano de vapor
sensor de fluxo
22
Algumas definições
a duração entre os dois pontos de verificação é chamado de períodode amostragem (sample period, dsample)
1/dsample = freqüência de amostragem1/dsample = freqüência de amostragem
assumindo que o sistema esteja em equilíbrio :
toda vez que que o fluxo de vapor é aumentado por uma função de passo(step function), a temperatura do vaso irá aumentar até que novo equilíbrioseja atingido (de acordo com uma função resposta – response function)
Raimundo Macêdo LaSiD/DCC/UFBA
43
seja atingido (de acordo com uma função resposta response function)
A função resposta da temperatura depende da quantidade de liquido no vaso e do fluxo de vapor no trocador de calor (i.e., a dinâmica do objeto controlado)
Parâmetros básicos que caracterizam a função resposta;
latência do objeto (object delay, dobject)
período de tempo para a temperatura medida começar a subir(inércia inicial do processo)
tempo de subida da temperatura (rise time, drise)
período até que novo equilíbrio seja alcançado
Raimundo Macêdo LaSiD/DCC/UFBA
44
Uma regra geral : dsample < drise / 10 (kopetz)
dsample
drise
23
temperaturatemp do liquido
fluxo do vapor
Raimundo Macêdo LaSiD/DCC/UFBA
45dobject)drise
tempo-real
O computador compara a temperatura medida com a selecionada pelooperador e calcula do erro.
O erro calculado é a base para o calculo de um novo valor atribuído a variável de controle pelo algoritmo de controle
A cada intervalo de tempo depois do ponto de verificação (latência docomputador, dcomputer), o computador controlador passará o novovalor para a válvula de controle. dcomputer < dsample
dcomputer é o intervalo de tempo entre o ponto de amostragem (observação do objeto controlado) e o uso dessa informação (saída para o atuador do objeto controlado)
tempo de calculo + tempo de comunicaçãoponto de amostragem ponto de amostragem
Raimundo Macêdo LaSiD/DCC/UFBA
46
dcomputer
dsample
24
A diferença entre a menor e maior latências do computador é chamadode jitter
O jitter influencia na qualidade do controle (<<<< melhor)
Tempo Morto do Loop de Controle
intervalo de tempo entre a observação da entidade TR e o começo da reação do objeto controlado devido a ação do computador de controle
(deve ser o menor possível)
Raimundo Macêdo LaSiD/DCC/UFBA
47
= dcomputer + dobject
depende da dinâmica do objeto
depende da dinâmica da implementação
símbolo parâmetro esfera de controle
relaciona-mentos
dobject latência do ob. controlado
objeto controlado processo físico
drise tempo de subida objeto controlado processo físicofunção resposta
dsample período de amostragem
computador dsample << drise
dcomputer latência do computador
computador dcomputer <dsample
Raimundo Macêdo LaSiD/DCC/UFBA
48
Δdcomputer jitter da latência do computador
computador Δdcomputer<<dcomputer
ddeadtime tempo morto computador e ob. controlado
dcomputer +dobject
parâmetros de um loop de controle elementar : extraída do livro de H. Kopetz
25
Outros requisitos temporais
latência mínima de jitter
muitas aplicações assumem que o jitter de latência é muito pequeno em relação à latência do computador Δdcomputer<<dcomputer
Latência de jiiter traz uma incerteza adicional no loop de controle que pode refletir negativamente na qualidade do controle. EX: O jitter pode ser interpretado como um erro adicional na medição da temperatura.
Latência de detecção de erro
Raimundo Macêdo LaSiD/DCC/UFBA
49
tem que ser da mesma ordem de magnitude do período de amostragemdo loop de controle mais rápido para que seja possível tomar açõescorretivas ou levar o sistema a um estado seguro
Confiança no Funcionamento (Dependability)
Propriedade não-funcional (ou meta-funcional) relacionadaà qualidade do serviço disponibilizado num período de tempo
Raimundo Macêdo LaSiD/DCC/UFBA
50
26
Requisitos de Confiança no Funcionamento (Dependability)
Reliability(confiabilidade)
Propriedade do sistema dispor do serviço especificado até tempo t
dado que o mesmo funcionava no tempo t0(confiabilidade)
Safety
Maintanability
dado que o mesmo funcionava no tempo t0
Supondo que uma razão constante de falhas λdefeitos por hora
R(t) = E (- λ(t – t0)) - Kopetz
1/ λ = MTTF (mean-time-to-failure)
Raimundo Macêdo LaSiD/DCC/UFBA
51
Availability
Security
Seja X uma variável aleatória que representa tempo para o sistema falhar. Se F é a função de distribuição de probabilidade de X
R(t) = probabilidade do sistema está funcionando no tempo t
= P (X > t) = 1 – F(t)
R(t=0) = 1 e R(t=∞) = 0.
Requisitos de Confiança no Funcionamento (Dependability)
Reliability
Confiabilidade em relação a modos de defeitos críticos
O custo da falha é ordens de magnitude maior do que o beneficio do sistema em funcionamento normal
Safety
Maintanability
Availability
Safety-critical (hard) real-time systems devem ter uma razão de falhas em relação a defeitos críticos de acordo com requisitos ultra-rigorosos
Validação1) Subsistemas críticos devem estar protegidos da propagação de
erros a partir de outros componentes
Raimundo Macêdo LaSiD/DCC/UFBA
52
Availability
Security2) Todos os cenários que são cobertos pelas hipóteses de falha e
carga devem ser resolvidos sem uso de argumentos probabilísticos
3) A arquitetura deve possibilitar a certificação dos subsistemas de forma independente (deadlines da comunicação, carga da CPU, ...)
27
Requisitos de Confiabilidade
Reliability
Medida de tempo requerida paraconsertar um sistema (componente)após falha.
Safety
Maintainability
Availability
M(d) = probabilidade do sistema serconsertado dentro do intervalo d após falha
MTTR (mean-time-to-repair) = 1/reparos por hora
Conflito
Reliability x Maintainability
Raimundo Macêdo LaSiD/DCC/UFBA
53
Security
y y
+ unidades removíveis + mais fácil e rápido de manter
Menos reliability (unidade ligados por interfacessoldadas são mais confiáveis que unidades ligadaspor interfaces removíveis (plugs, sockets, etc.)
Requisitos de Confiabilidade
Reliability
Medida de tempo para a disponibilização do serviço emrelação a alternância entre serviços corretos e incorretos(operacional e não-operacional)
Fração do tempo que o sistema está pronto para prover oserviço especificado
Safety
Maintainability
Availability
Security
Ou a probabilidade do sistema está pronto (disponível) no tempo t
EX: quando pegamos o telefone qual a probabilidade domesmo estar funcionando ?
A = MTTF / (MTTF + MTTR))
MTTF + MTTR = tempo médio entre falhas
Raimundo Macêdo LaSiD/DCC/UFBA
54
y MTTF MTTR tempo médio entre falhas
up
down
defeito reparo
MTTR
MTTF
MTBFReal-time
28
Availability:
a probabilidade do sistema estar operacional em algummomento dado que este alterna entre os estados : operacional eem reparo/manutenção.
Pode ser traduzido em downtime por ano
90% > 1 mês PC sem assistencia99% 4 dias PC com manutenção99,9% 9 horas cluster99 99% 1 hora multicomputer
Raimundo Macêdo LaSiD/DCC/UFBA
55
99,99% 1 hora multicomputer99,999% 5 minutos embeded system (PC)99,99999% 3 segundos embeded system (HD especial)
Tabela extraída do livro de P. Verissimo e Luis Rodrigues
Requisitos de Confiabilidade
Reliability
Safety
Maintainability
Availability
Security
Prevenção contra acesso não autorizado
Serviços (ex: senhas para celular ou carro)
Informações
Raimundo Macêdo LaSiD/DCC/UFBA
56
Security
29
Hard x Soft C t í ti
Classificação dos Sistemas de TR
Fail-safe x Fail-operational
Garanteed timeliness x Best effort
Características da aplicação
Raimundo Macêdo LaSiD/DCC/UFBA
57
Garanteed-timeliness x Best-effort
Resorse-adequade x Resourse-inadeuqate
Event-trigged x Time-trigged
Características daImplementação
Algumas características de Sistemas de TR
Raimundo Macêdo LaSiD/DCC/UFBA
58
30
Response –time (Tempo de resposta)
Hard real-time
deve ser autônomo para garantir a continuidade da operação semintervenção humana na ordem de milisegundos
Soft real-time (on-line)
O tempo pode receber intervenção humana (retardo) e é na ordem de segundos
Performance em picos de CargaHard real-time
Raimundo Macêdo LaSiD/DCC/UFBA
59
os cenários têm que ser bem definidos e os prazos atendidos emqualquer cenário
Soft real-timePerformance média é importante e operações degradadas são toleradas
Controle do Ritmo (control of pace)
Hard real-time
Tem que se manter síncrono com o ambiente (objeto controlado e operador)
O passo é ditado pelas mudanças que ocorrem no ambiente
Soft Real-time
Pode impor controle sobre o ambiente
Raimundo Macêdo LaSiD/DCC/UFBA
60
Tipos de Redundância
Ativa (espacial) --- geralmente em Hard real-time
Roll-back recovery (Temporal) – geralmente em soft-real time
31
Redundância Temporal
FalhaDetecção
retorno a um estadoconsistente
A mesma parte do código pode ser executada várias vezes
Raimundo Macêdo LaSiD/DCC/UFBA
61
Transações Atômicas Distribuídas é exemplo típico
Redundância Espacial
Falha
Detecção
A falha é “mascarada” eo componente faltosoé posteriormente substituído.
Raimundo Macêdo LaSiD/DCC/UFBA
62
S1 S2 S3 S4
componente replicado
32
Fail-safe
Quando um ou mais estados de segurança podem ser identificados(ex: sistema de sinalização de trens)
E uma falha pode ser rapidamente identificada de modo a colocarE uma falha pode ser rapidamente identificada de modo a colocaro sistema num estado seguro
É necessario uma cobertura de detecção de falhas muito alta : propabilidadede uma erro ser detectado próximo de 1
Fail-operational
Raimundo Macêdo LaSiD/DCC/UFBA
63
Quando estados seguros não podem ser identificados (ex: controle de vôo)
O computador de controle de tempo-real deve prover um nível mínimo deserviço para evitar catástrofes em caso de falha
Event-trigged
Atividade de processamento ou comunicação é iniciada devido a umamudança de estado
É á i i di â i d l t i t ãÉ necessário mecanismo dinâmico de escalonamento e interrupção
Time-trigged
Atividades de processamento ou comunicação são iniciadas em pontospredeterminados do tempo
Raimundo Macêdo LaSiD/DCC/UFBA
64
p p
Usa interrupção do relógioRelógios têm que estar sincronizados (as observações do objeto controlado
levam o registro do tempo global)
33
Characteristic Hard real-time Soft-real time (on-line)
Response time Hard-required Soft-desired
Peak-load performance predictable degraded
Control of pace environment computer
safety Often critical Non-critical
Size of data files Small/medium large
Redundancy types active Checkpoint-recovery
Raimundo Macêdo LaSiD/DCC/UFBA
65
Data integrity Short-term Long-term
Error detection autonomous User-assisted
Tabela extraída do livro de H. Kopetz
Nichos de mercado para sistemas de tempo-real
Sistemas Embarcados (embedded systems)
Sistemas de Automação de Plantas
Sistemas Multimídia
Raimundo Macêdo LaSiD/DCC/UFBA
66
34
Sistemas Embarcados (embedded systems)parte de um produto “inteligente”
uma tendência com o barateamento dos microcontroladores : sistemas embutidos embarcados são introduzidos no lugar de mecanismos mecânicos/eletrônicosembarcados são introduzidos no lugar de mecanismos mecânicos/eletrônicos convencionais de controle
exs: controladores de motores de carros, marcadores/controladores de aquecimento e/ou ar-condicionado, maquinas de FAX, celulares, maquinas de lavar, forno micronondas....
embedded system
Raimundo Macêdo LaSiD/DCC/UFBA
67
Sistemas Embarcados (embedded systems)
um produto inteligente consiste em :
1) um sub-sistema mecânico)
2) um computador embutido de controle
3) uma interface homem-máquina (na maioria das vezes)
embedded system
Raimundo Macêdo LaSiD/DCC/UFBA
68
35
Sistemas Embarcados (embedded systems)
características que influenciam no processo de desenvolvimento
produção em massa
estrutura estática
interface homem-maquina
sub-sistemas mecânicos devem ser mínimos
funcionalidade determinado por software em ROM
facilidades de manutenção (ex: interface de diagnóstico)
Raimundo Macêdo LaSiD/DCC/UFBA
69
facilidades de manutenção (ex: interface de diagnóstico)
habilidade de comunicação
o custo é em geral dominado pela produção
Sistemas de Automação de Plantas
•trazem enormes vantagens de custos e precisão nos processos das plantas•projeto e manutenção dominam os custos dos sistemas de tempo-real
(cada planta é única)
Sistemas Multimídia
deadlines são firmes mas não são hard (nenhuma catástrofe)
Raimundo Macêdo LaSiD/DCC/UFBA
70
deadlines são firmes mas não são hard (nenhuma catástrofe)
adaptação e QoS são tópicos importantes
ex: sincronização de fluxos de dados de áudio e vídeo
36
Exercícios para a próxima aula
1) Quais funções típica um STR deve prover?
2) O que é um modo crítico de falha ? Cite exemplos) q p
3) De onde vem os requisitos temporais de aplicações de tempo-real.Quais são os parâmetros que descrevem as características temporais doobjeto controlado?
4) Ler o artigo de Stanchovic (Misconceptions ...)
Raimundo Macêdo LaSiD/DCC/UFBA
71
Responder por escrito com suas palavras:a) o que você aprendeu da leiturab) qual foi sua maior dificuldade com a leitura/texto