Developed by Virtutech Apresentação feita por: Carlos Ferreira Inês Ramos.

Slides:



Advertisements
Apresentações semelhantes
Desempenho da Computação Paralela em Ambientes Virtualizados
Advertisements

Estruturas de Dados e Algoritmos II
Augusto NevesJoão CarlosRodrigo Paula Linguagem de Programação C++ Componentes do Grupo.
Sistemas de informação:
INTELIGÊNGIA COMPUTACIONAL
Virtualização André Bernardes RA: César Kallas RA:
XP EXTREME PROGRAMMING
Capítulo 1 Introdução.
Introdução à Programação uma Abordagem Funcional Programação I Prof.ª Claudia Boeres CT VII - Sala 32 Departamento de Informática Centro.
Virtualização de sistemas operacionais
Métricas para o Processo e o Projecto de SW
O Essencial sobre Linguagens de Programação Luís Caires Maio 2005.
Sistemas Operacionais de Rede Professor: João Paulo de Brito Gonçalves
Anatomia de uma máquina virtual
Daniel M. Aquino, Marcelo C. Perez, Thais A. B. Fernandes
Arquiteturas Diferentes
SISTEMAS DISTRIBUÍDOS
INTRODUÇÃO À PROGRAMAÇÃO
Concepts and Capabilities
Qualidade de Software Aula 2
Softwares.
Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA2.
Complexidade de Algoritmos
Linguagens de Programação
Este software destina-se à gestão da área de expediente no que respeita a entradas e saídas de correspondência, emissão de ofícios e outros textos A Gestão.
Escola Secundária Alberto Sampaio 2012/2013
Engenharia de Software e Sistemas de Informação e Gestão
PROGRAMAÇÃO I UNIDADE 1.
XEn Universidade Federal do Rio de Janeiro
Programação Avançada Prof. Natalia Castro Fernandes
Sistemas Operativos (S.O.)
Sistemas Distribuídos
Tópicos em redes e sistemas distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Gerencia de Redes Redes de Computadores II
MapReduce Conceitos e Aplicações
SISTEMAS OPERATIVOS MS-DOS.
Processadores Multicore
Cristiano Soares Rafael di Lego Roberto Nemirovsky Thiago Nascimento
Entrada e Saída (E/S ou I/O)
XIV Jornada de Cursos .NET com C# Antônio Júnior Bruno Inojosa.
Módulos de um S.O. Tiago Gomes Nº21 11ºi.
SISTEMAS OPERATIVOS UNIVERSIDADE EDUARDO MONDLANE FACULDADE DE ENGENHARIA ENGENHARIA INFORMÁTICA – PÓS LABORAL 2012 CADEIRA DE INFORMÁTICA.
Universidade de Mogi das Cruzes Tec
NESSUS - Vulnerability Scanner Attack Scripting Language
Sistemas Operacionais
Sistemas Tolerantes a Falhas: Conceitos e Técnicas
Sistemas Distribuídos
APRENDIZAGEM POR DEMONSTRAÇÃO APLICADA A UM ROBÔ HUMANOIDE DISSERTAÇÃO FILIPE SERRA MIEET Filipe Silva(DETI-IEETA) Vítor Santos(DEM-IEETA)
Back-End Compilação aula-11-back-end.pdf.
IMM Instalação e Manutenção de Microcomputadores
Componentes de Hardware
Microprocesadores x Microcontroladores
Avaliação de condições de fiabilidade e segurança de protocolos de encaminhamento de dados em redes de sensores sem fios (RSSF) Apresentação do relatório.
Introdução às TIC Prof. Carlos Freire Copyright, Carlos Freire.
Java Disciplina: Programação II Professora: Mai-Ly Vanessa.
Algoritmos e Programação MC102
Engenharia de Sistemas Embarcados Aula 5: Um Conjunto Básico de Ferramentas.
PCS PROJETO DE FORMATURA I Emulação do GameBoy e GameBoy Color para a plataforma PC/Windows Adriano Bedeschi Eduardo Sato
TIC Tecnologias de Informação e Comunicação
Sistemas Operativos.
Introdução aos Sistemas Operacionais
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.
Prof. Sidney Galeote. 2 www. prasabermais. com  Visão Geral sobre a dimensão de qualidade “performance”  Custo da qualidade  Como a performance deve.
Sistemas Operativos.
Virtualização de sistemas operacionais Uma solução para quem não tem muita infra-estrutura para testes, ou até mesmo para criação de VPS.
Influencias sobre o Projeto da Linguagem
VIRTUALIZAÇÃO - INTRODUÇÃO Na área de TI; O que é sistema legado? É o termo utilizado em referência aos sistemas computacionais de uma organização que,
Manutenção e Configuração de Micros Aula 07 - Inicialização Prof. Fabrício Azor á 62.
Introdução Programação (PG) Pedro Alexandre Pereira Centro de Cálculo Instituto Superior de Engenharia de Lisboa.
Transcrição da apresentação:

Developed by Virtutech Apresentação feita por: Carlos Ferreira Inês Ramos

1º Parte – Introdução ao Simics O que é ? Para que serve ? Benefícios da sua utilização 2º Parte – Extras do Simics Device Modeling Language Demonstração

1º Parte

Situação existente Aumento da complexidade dos sistemas electrónicos. Processo de desenvolvimento de sistemas focado no hardware. Necessidade de adopção de técnicas de debugging mais eficientes e económicas. Em relação ao hardware... Software tem de ser testado num sistema cujas características coincidam minimamente com as do produto de hardware final. Hardware final pode estar a meses do seu lançamento!!! Dificil detecção de bugs de hardware.

Simics: O que é ? Simics não é igual ao VirtualBox ou VMWare!!! Solução de software que modela sistemas electrónicos e fornece uma versão virtual do hardware final. O hardware final opera num ambiente virtual. Permite correr o software desenvolvido no ambiente virtual, cujos efeitos serão reflectidos de forma similar na máquina final. Solução: Sistema virtual: – Permite emulação do Hardware. – Desenvolvimento de software sobre esta plataforma. – Custo mais baixo de desenvolvimento.

Simics Hindsight Usado no desenvolvimento e teste de software para correr código, efectuar debug. É determinístico (com execução e debug reversíveis). Simics Model Builder Plataforma de desenvolvimento usada para criar os modelos dos dispositivos e as configurações da máquina. Os modelos de dispositivos podem ser combinados numa plataforma virtual de complexidade arbitrária.

Simics Ethernet Networking Providencía conectividade entre os sistemas virtuais numa simulação. Conecta os sistemas virtuais a uma rede física. Simics Accelerator Providencia escalabilidade e velocidade de execução tirando partido de multiprocessadores e multicore hosts.

Simics Virtual Platform O modelo do hardware final que vai ser simulado. A plataforma virtual do Simics pode ser tão simples ou complexa quanto o sistema físico final. Este pode conter desde um simples CPU e uma RAM a uma rede complexa de computadores e sistemas.

Exemplos de SOs usados em simulações Linux (qualquer distribuição) VxWorks Windows (Mobile, XP, Vista) Solaris BSDs (FreeBSD, NetBSD, OpenBSD e outros) Muitos mais…

Exemplos de simulação MotherBoards Processadores (single/dual/quad/N core) Sistemas heterogéneos SoC (System on Chip) Inter-System Communications (USB, FireWire, Serial, SATA, etc)

Função: Desenvolvimento de plataformas Possibilidade de visualizar o estado dos registos do processador/dispositivos durante o debug. Permite determinar onde ocorrem os erros (software ou hardware). O hardware virtual corre o mesmo software binário que o sistema físico final.

Função: Desenvolvimento de aplicações Escalabilidade O debug é feito tomando o sistema como um todo. Possibilidade de restauro do estado actual do processador/dispositivos. Permite gerar interrupções. Profiling do código.

Função: Integração e teste do sistema Tarefas realizadas em paralelo (Incremental integration) Problemas identificados mais rapidamente com resolução mais fácil e menos custosa. Integração e testes contínuos identificam problemas mais cedo Quando é detectado um bug, o estado de uma dada simulação pode ser empacotado e enviado por a engenheiros de software para futuras correcções.

Função: Gestão do projecto Paralelização das fases de desenvolvimento (redução do tempo das actividades críticas e do tempo total do projecto) Defeitos descobertos/solucionados mais cedo. Maior quantidade de defeitos descobertos (melhor qualidade do produto final). Redução dos custos Redução do tempo de desenvolvimento e minimização do uso de hardware.

Benefícios gerais: Agilidade Flexibilidade Desenvolvimento prévio do software/hardware Redução de riscos no projecto Redução dos custos do projecto

2º Parte

Linguagem usada para modelar Hardware de forma Eficiente Características Principais: Não é uma linguagem de uso geral! Possui uma sintaxe expressiva adaptada ás necessidades da programação do modelo de dispositivos. Linguagem Modelar baseada em Objectos É mais compacta. O compilador converte o código DML em código C que será posteriormente compilado para código máquina. Providencía maior rapidez durante a simulação.

Características Especificas: Linguagem Imperativa, Declarativa, Orientada por Objectos Objectos contêm Métodos e Parâmetros objectos dispositivos, registos, memórias, etc Contém Logger interno A parte algorítmica é uma extensão do subset do ISO C Palavras reservadas do ISO/ANSI C estão reservadas em DML (int, float, etc) Comportamento do DML similar com SystemC

// A very simple device dml 1.0; device simple_device; import "io-memory.dml"; bank b { register r0 size { method read() -> (value) { log "info": "Hello, bus!"; } Um pequeno exemplo de código DML Comentário Versão da linguagem Nome deste dispositivo Standard Library import Banco de Registos Nome do registo, tamanho e offset Método read() para ler o valor do registro Escreve no log info a msg Hello Bus

O Simics é uma solução de software com elevado grau de flexibilidade e escalabilidade que permite modelar sistemas electrónicos com elevada performance e fidelidade. Fornece ás corporações os meios necessários ao melhoramento do processo de desenvolvimento dos seus produtos. As empresas produzem mais, melhor e a menor custo. Complementaridade MIECT – MIEET – Engenheiros de MIEET preocupam-se em optimizar o hardware. – Engenheiros de MIECT preocupam-se em optimizar o software. – O desenvolvimento em paralelo permite ambos encontrarem-se no final do projecto, para a junção de ambos os resultados.

Simics está disponível em Licenças Académicas Gratuitas !!! E agora vamos a uma pequena demonstração…