FACOLTÀ DI INGEGNERIA CORSO DI LAUREA MAGISTRALE IN

Slides:



Advertisements
Presentazioni simili
Implementazione di un sistema di gestione per un IP-Core in ambiente GNU\Linux embedded: Infrared Data Association Relatore: Prof. Fabrizio FERRANDI Correlatore:
Advertisements

Prospettive dei servizi cloud in ENEA-GRID
1 Introduzione ai calcolatori Parte II Software di base.
Gestione Input Output A. Ferrari.
Il Consolidamento di Servizi Virtual Server 2005 PierGiorgio Malusardi Evangelist - IT Professional Microsoft.
Carlo Di Federico - Matricola n Roberto Gonella - Matricola n
BAnMaT Light: un tool per la rilocazione software dei bitstream
WebProfessional Web Content Management System
UNIVERSITA DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria – Sede di Modena Corso di Laurea in Ingegneria Informatica Progetto e sviluppo di.
UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA
Progetto e realizzazione del software "Solar Data Manager"
ANALISI COMPARATIVA DEGLI ERP: SAP E MICROSOFT DYNAMICS
SINCRONIZZAZIONE E TRASFERIMENTO VIA WEB DI IMMAGINI E DATI MULTIMEDIALI CON INFORMAZIONI GEOGRAFICHE E RAPPRESENTAZIONI CARTOGRAFICHE Laureando: Mitja.
Università degli studi di Trieste – Tesi di laurea triennale in Ingegneria elettronica PROTOCOLLO DI COMUNICAZIONE TRA PC E MICROCONTROLLORE PER UN’INTERFACCIA.
Tesi di Laurea Triennale in Ingegneria Elettronica Applicata
Realizzazione di algoritmi video su FPGA
Università degli Studi di Trieste
Università degli Studi di Trieste
Realizzazione di un robot mobile controllato mediante comandi labiali
Comandi ai dispositivi di I/O + Si usano due metodi per mandare informazioni a un dispositivo: –Istruzioni specifiche di I/O –I/O mappato in memoria (memory.
Relatore:. Prof. Fabrizio FERRANDI Correlatore:. Ing. Marco D
Luca Pizzamiglio Dipartimento di Elettronica ed Informazione Corso di Laurea in Ingegneria Informatica 17 Giugno 2003 Stimatori d'area per descrizioni.
Cluster openMosix Linux Day ’04 Caserta Ing. Diego Bovenzi.
Controllo remoto di un robot mobile realizzato con Lego Mindstorms
1 Corso di Informatica (Programmazione) Lezione 4 (24 ottobre 2008) Architettura del calcolatore: la macchina di Von Neumann.
Francesca Del Corso, CCR - Gruppo Windows, Bologna 16/02/2006 SUS - WSUS per il Security Patch Management.
Corso di Informatica per Giurisprudenza Lezione 5
Le prestazioni (velocità) di un singolo disco sono limitate dalla tecnologia usata, -per aumentare le prestazioni si può pensare di far operare in parallelo.
Integrazione di una piattaforma IPTV in un’architettura SOA
Struttura dei sistemi operativi (panoramica)
3. Architettura Vengono descritte le principali componenti hardware di un calcolatore.
2) Sistemi operativi Lab. Calc. AA2004/05 - cap.2.
IL CLOUD COMPUTING: portabilità o privacy?
Architettura degli elaboratori
Il Problema della Compatibilità Anno 2000 Ministero del Tesoro del Bilancio e della Programmazione Economica CONSIP S.p.A.
UNIVERSITA’ STUDI DI ROMA “FORO ITALICO”
Corso di Laurea Magistrale in Informatica
PROGETTAZIONE E REALIZZAZIONE DI UN MIDDLEWARE CLIENT-SERVER
Presentazione Campus Club
UNIVERSITA’ POLITECNICA DELLE MARCHE
Benvenuti a Un incontro informativo di grande valore ed alto contenuto sulla Virtualizzazione e sistemi ad alta disponibiltà per le PMI.
Università Politecnica delle Marche
Relatore Tesi di laurea di
Relatore: Ch. mo Prof. Ettore Bolisani Laureando: Stefano Gecchele
UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Ingegneria “Enzo Ferrari” – Sede di Modena Corso di Laurea Specialistica in Ingegneria Informatica.
VIRTUALIZZAZIONE Docente: Marco Sechi Modulo 1.
Il Sistema Operativo (1)
Servizi Grid ed agenti mobili : un ambiente di sviluppo e delivering
Un motion planner per guide multimediali interattive
Tesi di Master Universitario Applicazione Sperimentale SoftPLC e SCADA
Studio e realizzazione di un tool per lautomatizzazione dei test di un sistema software distribuito Facoltà di Ingegneria Corso di Studi in Ingegneria.
Soft-DVB: A Fully-Software GNURadio-based ETSI DVB-T Modulator
Esperimenti di testing della JVM basati sullutilizzo di workload di stress e di motori inferenziali Facoltà di Ingegneria Corso di Studi in Ingegneria.
Automazione di Test di Sistemi Embedded
Pippo.
1 di 15 Università degli studi di Modena e Reggio Emilia Mail Configurator: un’applicazione ad agenti mobili basata su ruoli dinamici Correlatori: Ing.
Universita’ degli Studi Roma Tre
Virtualization by Security A novel antivirus for personal computers Università degli Studi di Bergamo Corso di Laurea Specialistica In Ingegneria Informatica.
1© Copyright 2014 EMC Corporation. Tutti i diritti riservati. CONTINUOUS AVAILABILITY ORACLE Panoramica tecnica.
POLITECNICO DI MILANO Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica STUDIO E REALIZZAZIONE DI UN BRACCIO ROBOTICO ANTROPOMORFO E SOLUZIONE.
Università Degli Studi di Napoli “ Federico II”
Tecnologie Informatiche ed Elettroniche per le Produzioni Animali (corso TIE) CORSO LAUREA MAGISTRALE IN SCIENZE E TECNOLOGIE DELLE PRODUZIONI ANIMALI.
Università degli studi di Roma “La Sapienza” Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica Antonio Musto Correlatore Aziendale : Ing.
Relatore: Ing. Francesco Lo Presti Correlatore: Ing. Stefano Salsano UPMT: progetto e realizzazione di una soluzione di mobilità verticale e overlay networking.
D.I.Me.Ca. – D.I.Me.Ca. – Università degli Studi di Cagliari Facoltà di Ingegneria Dipartimento di Ingegneria.
Progetto Alta Affidabilità Leonello Servoli Workshop CCR, Otranto 8 giugno 2006.
Implementazioni di un analizzatore di protocollo Esistono quattro fondamentali tradeoff per la realizzazione di un analizzatore di protocollo:  Analisi.
Riccardo Veraldi, CCR Dic 2008 Xen Problematiche sulla virtualizzazione.
DA e controlli DAFNE Riccardo Gargana Frascati 13/12/ /12/13.
Virtualizzazione Server by Linux
Transcript della presentazione:

FACOLTÀ DI INGEGNERIA CORSO DI LAUREA MAGISTRALE IN INGEGNERIA INFORMATICA Test di software per piattaforme embedded su sistemi virtualizzati open source Relatore Prof. Maurizio Pizzonia Correlatore Aziendale Ing. Fabrizio Batino Laureando Patrizio Boschi

Contesto Operativo Tesi svolta presso il dipartimento di Software Engineering Technology (SET) di MBDA Italia MBDA è una azienda di sistemi elettronici industriali ad alta tecnologia Multinazionale sostenuta da tre gruppi: BAE System, EADS e Finmeccanica Contesto Problema Macchine Virtuali Emulatore Watchdog Opera principalmente nel campo dei sistemi: Distribuiti Safety-critical Real time Interattivi Test e Prestazioni Conclusioni

Problema Il testing del software per la piattaforma target introduce diverse problematiche Testing sul target Bottleneck sul target (N sviluppatori, 0..1 target) Testing sulle piattaforme di sviluppo Semplice Configurazioni diverse Hardware diverso Device driver diversi Testing remoto Almeno un target disponibile e dedicato Testing su piattaforme target virtuali Contesto Problema Macchine Virtuali Emulatore Watchdog Test e Prestazioni Conclusioni

Piattaforme target e di sviluppo Sistemi embedded o SBC (Single Board Computer) Es. Concurrent Technologies VP-417 Architettura x86/X86_64 PCI-E, DDR2 DRAM, USB2, EIDE, SATA, SM722, Flash Memory, Watchdog, … VME Backplane / Chassis Linux, Linux + RT, LynxOS, Aix, … Contesto Problema Macchine Virtuali Emulatore Watchdog Test e Prestazioni Conclusioni Piattaforme di sviluppo (Host) Normali personal computer Linux

Host OS / Virtual Machine Monitor Macchine virtuali Paravirtualization, OS Virtualization, … Xen, User Mode Linux, lguest, Linux Vserver, chroot, … System emulation, Full Virtualization Contesto Problema Macchine Virtuali Hardware Host OS / Virtual Machine Monitor Guest OS App Guest OS VM 1 VM 2 HW emulato QEMU (System emulation) Cross platform (es. ARM su x86) Emulazione dispositivi hardware Lento KQEMU, KVM, Xen HVM (x86 full virtualization) Più veloci di QEMU Emulazione dispositivi tramite QEMU Solo x86 su x86 KVM e Xen HVM richiedono CPU con supporto HW alla virtualizzazione Emulatore Watchdog Test e Prestazioni Conclusioni

Emulazione di un device con QEMU (1) Implementazione dell’emulatore del dispositivo PCI Watchdog Intel I6300ESB Presente sulla piattaforma target Non presente tra gli emulatori offerti con QEMU Analisi del dispositivo reale Datasheet (≈25 registri, ≈70 bitfields) Reverse engineering del suo driver Linux /drivers/watchdog/i6300esb.c (≈900 LOC) Analisi di QEMU Open source Realizzato in C (≈450k LOC) Codice “autodocumentato” Contesto Problema Macchine Virtuali Emulatore Watchdog Test e Prestazioni Conclusioni

Emulazione di un device con QEMU (2) Interfaccia hardware-software del dispositivo PCI Configuration Registers Memory-mapped I/O Registers I/O Ports IRQ Funzionalità del dispositivo Effetti collaterali di scritture/letture nei registri Eventi asincroni (es. timeouts) Contesto Problema Macchine Virtuali Guest side Host side Emulatore Watchdog uint8_t PCIConfRegs[256] Test e Prestazioni Conclusioni

Emulazione di un device con QEMU (3) Progettazione e sviluppo dell’emulatore 1) “Stub” device 2) Comunicazione device <-> driver 3) Logica funzionale Contesto Problema Macchine Virtuali QEMU PCI Device Emulatore Watchdog LOGICA DEL DISPOSITIVO Stato Test e Prestazioni PCI Configuration Registers Altri Registri Conclusioni QEMU BIOS DRIVER

Test delle macchine virtuali Installazione e utilizzo del sistema operativo presente sul target (Finmeccanica Linux) sulla macchina virtuale Esecuzione della suite LTP (Linux Test Project) sulle piattaforme target e virtuale Applicazione user-space wdt-tool creata appositamente per il controllo del Watchdog Contesto Problema Macchine Virtuali ≈30 discrepanze su ≈1200 test ht_affinity cacheflush01 accept4_01 Power Management … LTP Version LTP-20090430 Kernel Version 2.6.24-FNM v2.1-ric41 Total Tests 1183 Total Test TPASS 1109 Total Test TFAIL 10 Total Test TBROK 14 Total Test TWARN 6 Total Test TCONF 44 Emulatore Watchdog Test e Prestazioni Conclusioni

Prestazioni Suite di benchmark Microbenchmark (lmbench, netperf) Benchmark sintetici (dbench, whetstone) Benchmark applicativi (dacapo, make) Caratterizzazione (speedup/slowdown) dei carichi kernel-mode Context switch, fork, pipes, signals, stat, open/close, exec, page/protection faults, … Caratterizzazione (speedup/slowdown) dei carichi I/O Disco, rete (non) determinismo delle prestazioni Letture successive del Timestamp Counter (RDTSC) (non) determinismo delle prestazioni Latenza letture successive del Timestamp Counter (RDTSC) Contesto Problema Macchine Virtuali QEMU watchdog Test e Prestazioni Conclusioni

Conclusioni e sviluppi futuri Know-how sull’utilizzo di macchine virtuali per il testing funzionale per la piattaforma target Emulatore del dispositivo Watchdog Intel I6300ESB Stima dell’effort per lo sviluppo di nuovi emulatori Sviluppi futuri: Nuovi emulatori di device es. Tundra Universe II PCI-VME Bridge Implementazione di un framework per il debugging passo-passo del kernel mediante GDB e QEMU Porting delle patch Xen al kernel Finmeccanica Linux Contesto Problema Macchine Virtuali Emulatore Watchdog Test e Prestazioni Conclusioni

“Work-in-Progress” paper “Embedded Software Testing with Open Source Virtual Platforms” Contesto Problema Macchine Virtuali Emulatore Watchdog Test e Prestazioni Conclusioni

Interfaccia Driver di rete in Linux Contesto Problema Macchine Virtuali QEMU watchdog Test e Prestazioni Conclusioni

Virtualizzazione Contesto Problema Macchine Virtuali QEMU watchdog Test e Prestazioni Conclusioni

Watchdog Init Function Contesto Problema Macchine Virtuali QEMU watchdog Test e Prestazioni Conclusioni