SEM0544 Desenvolvimento de Produtos Mecatrônicos Glauco Caurin Dalton Matsuo Jean Minar Jorge Felix Herrera Jose Martins Jr. Kelen Teixeira Vivaldini Leonardo.

Slides:



Advertisements
Apresentações semelhantes
Sistemas Operacionais - Aula 6
Advertisements

Sistemas Operacionais
Sistemas Distribuídos
Sistemas Operacionais Aula II
Simulação de Sistemas Antonio J. Netto AULA1.
Introdução a Algoritmos
Sistemas Operacionais
Capitulo 6: Entrada e Saída
Sistemas distribuídos Metas de Projeto Prof. Diovani Milhorim
A Interface entre Processadores e Periféricos
Tipos de sistemas de Lehman
Profa. Priscila Facciolli
ARQUITETURAS RISC E CISC
Introdução à Computação - Jorge Macêdo
Faculdade de Ciências Sociais de Aplicadas de Petrolina – FACAPE
Jaime Dalla Valle Junior
Agentes Inteligentes Introdução.
Sistemas Operacionais
SSC SISTEMAS OPERACIONAIS I Aulas 6 – Escalonamento de Processos
Sistemas Distribuídos de Tempo Real
Sistemas Distribuídos
AULA6 – tecnologia TOWER complemento
Análise e Projeto de Sistemas
Processadores – Aula 3 Professor: André Luis Meneses Silva
Sistemas de Tempo Real Introdução
Sistemas Operacionais Adriana Vettorazzo
Protocolo CMB em simulação distribuída
Sistemas Operacionais I
Revisão de Conceitos Básicos Hardware (Parte 1)
REDUNDÂNCIA POR SOFTWARE
Linguagem de Programação IV
Sistemas Distribuídos
IFSul – Campus Venâncio Aires
Banco de Dados e Usuários do Banco de Dados (capítulo 1)
Qual o melhor sabor para o RT-Linux (Real Time Linux)? Ricardo Matias Nº27471 e Vitor Hugo Nº21906 Sistemas de Tempo Real 2006 DETI-UA.
Sistemas Operacionais I
GESTÃO DE SISTEMAS OPERACIONAIS II
Sistemas Distribuídos
Engenharia de Software
Processos.
SISTEMAS OPERACIONAIS I
SISTEMAS OPERACIONAIS I
Computação L1: Infra-Estrutura Básica
Sistemas Operacionais
Arquitetura de Sistemas Operacionais
Conceitos em Sistemas de Tempo Real (Real Time Systems)
Engenharia de Software
Unified Modeling Language Professor Mário Dantas A NÁLISE O RIENTADA A O BJETOS Nov/2010.
Introdução a Banco de Dados Aula 04
Conceitos Básicos de Informática
Entrada e Saída (E/S).
Laboratório de Programação
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP Sistemas em Tempo Real Jadsonlee da Silva Sá
SISTEMAS OPERACIONAIS
SISTEMAS OPERACIONAIS
Algoritmos e Programação MC102
Sistemas Operacionais Aula 2 Danielle Costa
Abordagem Sistemática Guilherme Amaral Avelino Avaliação e Controle de Sistemas de Informação.
Universidade Federal de Pernambuco
Escola de Engenharia de Piracicaba Administração Sistema de Comunicação de Dados Aula 1 – Introdução Alberto Martins Júnior Flávio I. Callegari.
UML (Unified Modeling Language) Linguagem Unificada de Modelagem
Sistemas Operacionais IV – Gerenciamento de E/S
RUP – Rational Unified Process Márcia Seabra Cabral Prof. Augusto Sampaio Centro de Informática - UFPE.
ISO9001:2000 para Software Professor: Alexandre Vasconcelos Equipe: Amanda Pimentel Börje Karlsson Danielly Karine Erika Pessoa Jorge Cavalcanti Jose Edson.
Apresentação Leonardo Brussolo de Paula
Banco de Dados Distribuídos Sílvia Cristina de Matos Soares
Mestrado Profissional em Gestão da Qualidade Total MP 255 Sistemas de Informação e Sistemas da Qualidade UNICAMP – FEM Mestrado Profissional em.
Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Sistemas Operacionais Prof.: Gustavo Wagner
Bruna Cavallero Martins Universidade Católica de Pelotas.
Matheus Stigger Sistemas operacionais em carros. Eletrônica Embarcada A eletrônica embarcada consiste da eletrônica desenvolvida para uma aplicação móvel.
Transcrição da apresentação:

SEM0544 Desenvolvimento de Produtos Mecatrônicos Glauco Caurin Dalton Matsuo Jean Minar Jorge Felix Herrera Jose Martins Jr. Kelen Teixeira Vivaldini Leonardo Pedro Sistemas de Tempo Real Não se trata de seguir uma receita de bolo ! Estímulo para pensar em hardware e software de uma forma diferente. Pontos de vista controvertidos? Aula 1 – Conceitos Básicos

Programa de Aulas Aula 1 – Conceitos Básicos AulaDataDescriçãoExercícios / Prática 126/2 Organização do Curso Conceitos e História de Sistemas de Operacionais Tempo Real. 25/03 Considerações de hardwareEntrega da Lista de exercícios 1 312/03 Apresentação do IDE Workbench Treinamento introdutorio no Workbench Avaliação 1 419/03 Conceitos de RTOS (Escalonamento e Gerenciamento de Memória) Entrega da Lista de exercícios 2 526/03Tratamento de interrupções Avaliação 2 609/04Conceitos de Device DriverPrática com Workbench 716/04 RTOS (Sincronização e Comunicação entre Processos) 823/04Comunicação em Rede - I Entrega da Lista de exercícios 3 930/04Comunicação em Rede - IIAvaliação 3

Programa de Aulas Aula 1 – Conceitos Básicos AulaDataDescriçãoPrática 107/05 Prática com o Workbench com placa Digilent (Jean) 1114/05 Controle de versão (Dalton) 1221/05 Noções de Engenharia de Software Rational Rose Real Time, Rhapsody, outras ferramentas de modelagem de tempo real (Jorge) Entrega da Lista de exercícios /05 Conceitos de Board Support Package - BSPAvaliação /06 Hardware in the Loop (Leonardo) 1518/06 Avaliação 5 – Entrega de projeto 1625/06 Avaliação 5 – Entrega de projeto

Bibliografia e Material de Aula Laplante, P.A.,Real Time Systems Design and Analysis, IEEE Press, 3rd. Edition, 2004 Tanenbaum, Modern Operating Systems, 2nd Edition Agrawala, A. K., Real-Time System Design MISRA-C 2004 Guidelines for the use of the C language in critical systems MISRA, Development Guidelines For Vehicle Based Software, 1994 Mechatronics Real Time Linux Aula 1 – Conceitos Básicos

Guia para o Design de Produtos Mecatrônicos O Nome do Jogo: Melhor, + Rapido, + Economico

Desafios

Identificação de Dependências, Requisitos: Chave para as tomadas de decisões

Design Conceitual da Máquina e Design Mecânico

Exemplo Projeto Sistema Limpa Grades

PROPOSTAS PRELIMINARES DE CONJUNTO DE LIMPEZA

ANALISE PRELIMINAR DA ESTRUTURA SUBMETIDA A ESFORÇOS

ESTIMATIVA DE ESFORÇOS HIDRODINAMICOS

Design Elétrico - Eletronico

Design do Software Embarcado

Robô Kuka

Virginia Tech LabVIEW Robotics Software and NI RIO Hardware Bundle for Autonomous System Design Usuário

Roteador wireless Linksys WRT54G (versões 5.0 e posterior) Sistema iDrive da BMW Impressoras Xerox Phaser Mitel ICP 3000 IP PBX

Mars Reconnaissance Orbiter

Linguagens de Programação Preferenciais C, C++ ADA Java Antigas Assembly FORTRAN, PASCAL e até VB Pre-Requisitos Programação Cálculo Discreto Probabilidade e Estatística Aula 1 – Conceitos Básicos

Introdução Sistemas que precisam ser processados num ritmo regular e temporizado: Aviões - Sequencias de pulso de acelerômetro para determinar sua posição Sistemas que precisam ser processados rapidamente em situações não regular: Alarme de superaquecimento numa usina nuclear Aplicações que de “certa forma” requerem tipicamente soluçoes de TEMPO-REAL Guichê de aeroporto – 5 minutos ?? Tempo real ?? Aula 1 – Conceitos Básicos

1.Terminologia 1.1 Conceitos do sistemas Programas do Sistema – software de propósito genérico – software que se relaciona com o hardware subordinado – software que serve como ferramenta (compiler, assemblers e linkers) Programas Aplicativos – software de propósito especifico Aula 1 – Conceitos Básicos Definição 1 Sistema é um Mapeamento de um conjunto de entradas em um conjunto de saídas Definição 2 Tempo de resposta do sistema: O tempo entre a apresentação de um conjunto de entradas para um sistema (estimulo) e a realização do comportamento desejado (resposta)

1.Terminologia 1.1 Definições de Tempo Real Aula 1 – Conceitos Básicos Definição 3 Um sistema de tempo real é um sistema que deve satisfazer restrições de tempo de resposta explícitos (associados), caso contrario esta sujeito a severas consequências, inclusive de falência. Definição 4 Um sistema falido é um sistema que não é capaz de atender um ou mais dos requisitos estipulados pelas especificações formais Definição 5 Um sistema de tempo real é aquele cuja correção lógica é baseada tanto nas saídas corretas como em sua “boa temporização”

1.Terminologia Quando um sistema é de Tempo Real? Aula 1 – Conceitos Básicos Definição 6 Soft Real-Time System é aquele cuja performance se degrada as não é destruida por falhas em atender as respostas com restrições de tempo. Definição 7 Hard Real-Time System é aquele em que falhas em atender um unico prazo de resposta pode induzir à falencia completa e catastrófica do sistema. Definição 8 Firm Real-Time System é aquele em que falhas em atender algumas respostas com restrições de tempo, não levarão à falencia total do sistema. Mas a perda de mais do que “algumas” pode induzir à falência completa e catastrófica do sistema.

1.Terminologia A Natureza do tempo Fim de um Prazo é um instante no Tempo ! Como são definidos os Prazos ? Fisica dos processos Suposições e palpites Importância da imprecisão dos relógios ! Aula 1 – Conceitos Básicos

1.Terminologia 1.1 Eventos e Determinismo Aula 1 – Conceitos Básicos Mudanças de estado resultam em mudanças no controle de fluxo de um programa Definição 9 EVENTO - Toda ocorrência que força o “program counter” a mudar não sequencialmente é considerada alteraçao no fluxo do programa Definição 10 Tempo de liberação (release time) – instante quando um caso de uma tarefa agendada esta pronto para rodar, geralmente associado a uma interrupção

1.Terminologia Aula 1 – Conceitos Básicos Eventos Síncronos e Eventos Assíncronos Eventos Síncronos -> Ocorrem em tempos previsíveis dentro do fluxo de controle Eventos Assíncronos -> Ocorrem em tempos imprevisiveis dentro do fluxo de controle Eventos Periódicos e Aperiódicos

1.Terminologia Aula 1 – Conceitos Básicos Eventos Síncronos e Eventos Assíncronos PeriódicoAperiódicoEsporádico SincronoCódigo Cíclico Processos agendados por código interno Instrução de ramificação Ramificações : Traps AssíncronoInterrupção gerada por clock Interrupções frequentes mas de período não fixo Excessões geradas externamentos

1.Terminologia Determinismo Manter o controle é fundamental ! O software deve ser capaz de prever e evitar cenarios instaveis Outra característica de sistema controlados por software: A CPU busca continuamente e executa instruções do programa na área de memória ao invés de outras áreas de dados ou áreas indesejadas da memória Controle de software e hardware é mantido quando se consegue prever o próximo estado, dado o estado atual e o conjunto de entradas Aula 1 – Conceitos Básicos Definição 11 Um sistema é determinístico se por cada estado possível e cada conjunto de entradas um único conjunto de saídas e o próximo estado do sistema pode ser determinado Perigo Determinismo de eventos próximos estados e saídas de um sistema são conhecidos para entradas que disparam eventos

1.Terminologia 1.4 Utilização da CPU Aula 1 – Conceitos Básicos Definição 12 Fator de Carga Temporal U é a medida da porcentagem de tempo de processamento não ocioso UtilizaçãoZoneamento (Classificação)Aplicação Típica 0 – 25Poder de processamento excessivo - CPU deve ser mais poderosa que o necessário Varias 26 – 50Muito SeguroVarias SeguroVarias 69Limite TeóricoSistemas Embarcados QuestionávelSistemas Embarcados PerigosoSistemas Embarcados 100+SobrecarregadoSistemas Embarcados

1.Terminologia 1.4 Utilização da CPU Período de Execução p Freqüência de Execução f Tempo de Execuça – e – worst case Fator de utilização - u Aula 1 – Conceitos Básicos

2. Desafios do Design de Sistemas de Tempo Real Aula 1 – Conceitos Básicos

2. Desafios do Design de Sistemas de Tempo Real Problemas que requerem a atenção: Seleção de software e Hardware e avaliaçao de COMPROMISSO custo x (sistema distribuído, paralelismo e sincronismo) Especificação e design do RTS e “representação” correta do seu comportamento temporal Nuances das linguagens de programação Design e gerenciamento de testes, seleção de equipamentos de desenvolvimento e teste Aproveitar as vantagens de sistemas abertos, avaliar a interoperabilidade entre eles (Padrão de Tempo Real CORBA). Medição e Previsão de tempos de respostas e sua redução. Execução de analises de escalonamento (agendamento), ou seja, determinando e garantindo a satisfação deadlines. Aula 1 – Conceitos Básicos

3. Exemplos de Sistemas de Tempo Real Sistema de medidas inercial 10 ms medidas em x,y,z pulsos de acelerômetros Tarefa fornecer para um display a 40 ms vetores de posição, velocidade e aceleração Tarefas com correlação de tempo Sistema de monitoramento de usina nuclear Lidar com três eventos sinalizados por interrupção 1o. Evento disparado por qualquer sinal severo entre os vários pontos de segurança Resposta em 1 s 2o. Evento indica que o núcleo alcançou uma sobretemperatura Resposta em 1 ms Display de operação atualizado 30 vezes por segundo Aula 1 – Conceitos Básicos Como se consegue que uma indicação de eminência de derretimento interrompa qualquer outro processo ????

3. Exemplos de Sistemas de Tempo Real Sistema de reserva de lugares em aviões Lidar com três eventos sinalizados por interrupção Tempo de retorno de qualquer transação deve ser menor que 15 s Sem “overbooking” (sistema ideal) Vários agentes podem querer acessar o sistema ao mesmo tempo Trancamento de gravação, Mecanismos de comunicação que protegem o banco de dados de reservas contra alterações de mais de um atendente por vez, Como isto é feito ????? Sistema de inspeção de garrafas Fabrica da Kaizer Limpeza, Nível de Liquido, Presença de Tampa, etc... Sistema de controle de semáforo em um cruzamento com duas vias de mão dupla Aula 1 – Conceitos Básicos

4. Falsos Conceitos 1. Sistemas de Tempo real são a mesma coisa que sistemas rápidos 2. Analise de taxa monofônica resolveram o “problema de tempo real” 3. Existem metodologias universais amplamente aceitas para a especificação e design de sistemas de tempo real 4. Não existe nunca a necessidade de se construir um sistema de tempo real, pois já existem muitos sistemas comerciais 5. O estudo de sistema de tempo real é preponderantemente um estudo da teoria de agendamentos Aula 1 – Conceitos Básicos

5. Breve Histórico Avanços Teoricos Sistemas de hardware pioneiros Desenvolvimentos de Hardware Softwares Pioneiros Suporte de Sistemas operacionais comerciais Aula 1 – Conceitos Básicos

Exercícios 1.1 Considere um sistema de pagamento para uma pequena firma de manufatura. Descreva 3 cenários diferentes nos quais o sistema pode ser justificado como Hard, Firm e Soft Real Time 1.2 Discuta se os seguintes sistemas são Hard, Firm ou Soft Real Time: (a) O sistema de banco de dados de publicações disponíveis na Biblioteca da EESC. (b) O banco de dados da policia que fornece informações sobre veículos roubados (c) Uma maquina de jogos eletrônicos que opera com moeda (d) Um sistema de notas de uma Universidade (e) Um switch controlado por computador utilizado em uma compania de telefonia local como roteador 1.3 Considere um sistema de controle de tempo real para armamentos abordo de um avião caça. Discuta quais dos seguintes eventos podem ser considerados síncronos e quais seria assíncronos: (a) Um clock de interrupção gerado externamente com 10 ms (b) Um trap de divisão por zero (c) Um software de teste de falha embutido (d) Um sinal discreto gerado por um piloto apertando um botão de disparo de um foguete (e) Um sinal discreto indicando falta de combustível Aula 1 – Conceitos Básicos

Exercícios 1.4 Descreva um sistema completamente não-tempo real, ou seja, não ha restrições qualquer tempo de resposta. 1.5 Para os seguintes conceitos, preencha as células da tabela de taxonomia com os descritores para possíveis eventos. Estime os tempos para os eventos periódicos (a) Controle de elevador: este sistema controla todos os aspectos de um conjunto elevadores que serve a um predio de 40 andares no centro de São Paulo. (b) Controle Automotivo: este sistema para evitar colisões on-board usa dados de uma variedade de sensores e toma decisões e afeta comportamentos para evitar colisões ou proteger os ocupantes num evento de colisão iminente. O sistema pode ter a necessidade de tomar o comando do automóvel do motorista. 1.6 Para o sistema do exercício 1.2 quais seriam os tempos de resposta razoáveis para todos os eventos ? 1.7 Para os sistemas exemplo apresentados no capitulo, enumere alguns eventos possíveis e marque se eles são periódicos, esporádico, assíncronos. Discuta tempos de resposta razoáveis para os eventos. Aula 1 – Conceitos Básicos