Visão geral dos sistemas em tempo real
Tese: Visão geral dos sistemas em tempo real. Pesquise 862.000+ trabalhos acadêmicosPor: tatimilena • 1/6/2014 • Tese • 1.445 Palavras (6 Páginas) • 408 Visualizações
====> Resumo de Sistemas de Tempo Real
1.3 Conceituação Básica e Caracterização de um Sistema de Tempo Real
Uma grande parte dos sistemas computacionais atuais interagem permanentemente com os seus ambientes. Entre esses, distingue-se os chamados Sistemas Reativos que reagem enviando respostas continuamente à estímulos de entrada vindos de seus ambientes. Sistemas de tempo real de uma forma geral se encaixam neste conceito de sistemas reativos:
• Um Sistema de Tempo Real (STR) é um sistema computacional que deve reagir a estímulos oriundos do seu ambiente em prazos específicos.
O atendimento desses prazos resulta em requisitos de natureza temporal sobre o comportamento desses sistemas. Em consequência, em cada reação, o sistema de tempo real deve entregar um resultado correto dentro de um prazo específico, sob pena de ocorrer uma falha temporal.
O comportamento correto de um sistema de tempo real, portanto, não depende só da integridade dos resultados obtidos (correção lógica) mas também dos valores de tempo em que são produzidos (correção temporal). Uma reação que ocorra além do prazo especificado pode ser sem utilidade ou até representar uma ameaça.
A maior parte das aplicações tempo real se comportam então como sistemas reativos com restrições temporais. A reação dos sistemas de tempo real aos eventos vindo do ambiente externo ocorre em tempos compatíveis com as exigências do ambiente. A concepção do sistema de tempo real é diretamente relacionada com o ambiente no qual está relacionado e com o comportamento temporal do mesmo.
Na classe de Sistema de Tempo Real na qual se encontram os sistemas embutidos ("Embedded Systems") e os sistemas de supervisão e controle, distingue-se entre o Sistema a Controlar, o Sistema Computacional de Controle e o Operador. O Sistema a Controlar e o Operador são considerados como o Ambiente do Sistema Computacional. A interação entre os mesmos ocorre através de interfaces de instrumentação (compostas de sensores e atuadores) e da interface do operador. A figura 1.1 representa esse tipo de Sistema de Tempo Real.
Figura 1.1: Sistema de Tempo Real (ver no original).
Existem também situações nas quais as restrições temporais não são impostas pelo comportamento dinâmico de um eventual Sistema a Controlar mas pelas exigências dos serviços a serem oferecidos a um usuário humano ou computacional (p.ex. no caso do manuseio ou da apresentação de vídeos em sistemas multimídias). Nesses casos utiliza- se a noção de Serviço de Tempo Real como sendo um serviço que deve ser oferecido dentro de restrições de tempo impostas por exigências externas ao próprio Sistema Computacional. Então, numa generalização podemos assumir:
• Um Sistema de Tempo Real deve ser então capaz de oferecer garantias de correção temporal para o fornecimento de todos os seus serviços que apresentem restrições temporais.
1.4 A Previsibilidade nos Sistemas de Tempo Real
Uma das crenças mais comuns é que o problema de tempo real se resolve pelo aumento da velocidade computacional (ou da rede de comunicação).
A rapidez de cálculo visa melhorar o desempenho de um sistema computacional, minimizando o tempo de resposta médio de um conjunto de tarefas, enquanto o objetivo de um cálculo em tempo real é o atendimento dos requisitos temporais de cada uma das atividades de processamento caracterizadas nesses sistemas. Ter um tempo de resposta curto, não dá nenhuma garantia que os requisitos temporais de cada processamento no sistema serão atendidos.
O desempenho médio não tem importância para o comportamento de um sistema composto de diversas atividades com restrições temporais. Mais do que a rapidez de cálculo, para os sistemas de tempo real, importa o conceito de previsibilidade.
Um sistema de tempo real é dito ser previsível no domínio lógico e no domínio temporal quando, independentemente de variações ocorrendo no nível de hardware (i.e. desvios do relógio), da carga e de falhas,
o comportamento do sistema pode ser antecipado, antes de sua execução. Para se poder prever a evolução de um sistema de tempo real e garantir dentro de certos limites as suas restrições temporais, é necessário definir um conjunto de hipóteses sobre o comportamento do ambiente externo no que diz respeito à carga e as falhas:
• A hipótese de carga: ela determina o que corresponde a carga computacional de pico (carga máxima) gerada pelo ambiente em um intervalo mínimo de tempo, entre cada reação do sistema de tempo real. Mesmo eventos que ocorrem esporadicamente como os que levam a situações críticas (p.ex. alarme em planta nuclear) devem ser levados em conta para determinar essa carga computacional;
• A hipótese de falhas: ela descreve os tipos e frequências de falhas com os quais o sistema deve conviver em tempo de execução, continuando a atender os seus requisitos funcionais e temporais.
Consequentemente, de um ponto de vista rigoroso, para se assumir a previsibilidade de um sistema (ou de um serviço) de tempo real, precisa-se conhecer a priori o comportamento de um sistema, levando-se em conta a pior situação de carga ocorrendo, simultaneamente, com as hipóteses de falhas.
Como se vê é necessário nesse caso que as hipóteses de carga e de falha que descrevem o comportamento do ambiente sejam definidas de forma realista, o que nem sempre é uma tarefa simples. Mas a garantia de previsibilidade não depende só da carga computacional ativada pelo ambiente e das hipóteses de falhas. Um conjunto de fatores ligados a arquitetura de hardware, ao sistema operacional, as linguagens de programação e à rede de comunicação são também importantes. Ou seja, os tempos gastos, no pior caso,
...