Automazione di Test di Sistemi Embedded. Sintesi

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Automazione di Test di Sistemi Embedded. Sintesi"

Transcript

1 UNIVERSITÀ DEGLI STUDI DI MILANO - BICOCCA Facoltà di Scienze Matematiche, Fisiche e Naturali Dipartimento di Informatica Sistemistica e Comunicazione Corso di Laurea Magistrale in Informatica Automazione di Test di Sistemi Embedded Sintesi Relatore: Prof. Mauro PEZZE Correlatori: Lorena SIMONI Giuseppe GORGOGLIONE Relazione della prova finale di: Carmine Carella matricola: telefono: Anno Accademico Appello di Laurea 15 Luglio 2010

2 Introduzione I sistemi embedded sono sistemi di elaborazione progettati per una determinata applicazione e supportati da una piattaforma hardware dedicata. La loro diffusione è inarrestabile, le analisi di mercato mostrano che sono ormai presenti in ogni apparato sia in modo evidente, il cellulare e i PDA né sono un esempio, sia in modo trasparente come accade per gli elettrodomestici o le automobili. Questi sistemi sono una combinazione di hardware e software, tra loro fortemente integrati. Dal punto di vista hardware generalmente un sistema embedded è costituito da soluzioni single-chip che incapsulano molte funzionalità di un normale computer su un singolo dispositivo. Il software può essere molto diversificato, in base alla potenza computazionale dell hardware. Nei sistemi con scarse risorse viene sviluppato, di solito, software ad-hoc dimensionato alla capacità di calcolo, invece nei sistemi che adottano hardware di classe superiore è possibile ospitare un sistema operativo e applicazioni, con interfacce utente evolute. Negli ultimi anni tali sistemi sono diventati molto complessi, ed il software contenuto in essi è diventato un elemento chiave, arrivando ad essere perfino più importante dell hardware stesso, in quanto è la componente che permette di aumentare le funzionalità del sistema e di ottenere un minimo di flessibilità, in questi sistemi caratterizzati dall essere poco versatili. Conseguenza diretta dell evoluzione e della criticità del software, è la crescita della complessità e dell importanza del processo di testing. Il testing è un processo costituito da diverse attività durante il ciclo di sviluppo del software e ha lo scopo di identificare e rimuovere i difetti per migliorare la qualità. L automazione del testing attraverso l utilizzo di strumenti permette di aumentare l efficacia e ridurre il costo di questo processo che spesso è più della metà del costo totale dello sviluppo software. I sistemi embedded sono sempre più utilizzati in ambiti critici come quello avionico e aerospaziale in cui la presenza di un difetto all interno del software può portare ad un fallimento del sistema e conseguentemente, compromettere la vita umana e provocare ingenti perdite economiche. Rispetto ad altri ambiti, quello embedded introduce requisiti di criticità nel sistema che hanno bisogno di maggiore attenzione. Il testing è uno degli elementi per garantire la qualità del sistema. Problema e Stato dell arte L ambito embedded introduce nuove sfide e problemi da affrontare. Esso ha delle caratteristiche peculiari che influenzano tutte le attività del processo di sviluppo. Il testing non è un eccezione. Questo dominio estremamente complesso ha: un processo di sviluppo che considera sia la parte 1

3 hardware che la parte software del sistema; specifiche complesse; vincoli platform-dependent (cpu, memoria, consumo energetico, periferiche); requisiti di qualità molto stringenti; costi contenuti e vincoli di tempo che specificano un time-to-market molto breve. Inoltre, anche la caratteristica di specificità dei sistemi embedded influenza il testing. Ogni singolo settore applicativo richiede di prendere in considerazione aspetti talmente peculiari da rendere difficile l identificazione di tecniche e strumenti di valenza davvero generale. La diretta conseguenza è lo sviluppo di approcci ad hoc. Ancora, l utilizzo di uno strumento di automazione è vincolato da una notevole personalizzazione in cui vengono eseguiti adattamenti di basso livello all architettura di uno specifico processore per rendere funzionante lo strumento. Data la complessità della personalizzazione, essa può concludersi con un successo o un insuccesso influenzando la raccolta e l analisi dei risultati per valutare e migliorare la qualità. La letteratura sul testing del software, contiene innumerevoli metodologie, tecniche e strumenti che supportano il processo di testing di software tradizionale, ma esiste ancora poco per il testing di software embedded. Negli ultimi anni sono aumentati i lavoro accademici e industriali, ma questa è un area di ricerca ancora da esplorare. Alcune domande attendono una risposta più precisa. Tra queste, quali sono i punti chiave del testing embedded?, in cosa differisce esattamente il testing embedded dal testing tradizionale? quali sono le soluzioni e gli strumenti da applicare?. Ad oggi, il testing di software di sistemi embedded è stato formalizzato solamente attraverso la creazione di tecniche e strumenti proprietari (molto costosi) e metodologie aziendali interne e di conseguenza non utilizzabili. Non esiste di fatto ancora un approccio generale, che inglobi al suo interno strumenti aventi licenze gratuite, e che raccolga pratiche comuni di test, attraverso le quali sia possibile garantire uno sviluppo software di qualità. L ambiente di sviluppo del software embedded è diverso dall ambiente di esecuzione, ovvero il software viene sviluppato su una macchina con risorse computazionali maggiori e architettura differente detta host, rispetto alla macchina detta target che coincide proprio con l architettura embedded per la quale il software viene creato e sulla quale deve essere eseguito. Questa suddivisione porta ad avere due ambienti per il testing in cui applicare tecniche diverse per valutare requisiti di qualità differenti. Questi due ambienti, nel testing di software tradizionale, non esistono in quanto l ambiente utilizzato per lo sviluppo è anche quello di esecuzione. Questa differenziazione porta al problema di definire la strategia di testing: quale test deve essere eseguito sull ambiente host e quale sull ambiente target? Un certo requisito di qualità deve essere valutato nell ambiente giusto. Naturalmente questo andrà ad influenzare le tecniche di testing da utilizzare sia nell ambiente host che nell ambiente target. Il testing del software embedded nell ambiente host, non evidenzia dif- 2

4 ferenze con il testing di software tradizionale. Nell ambiente host vengono verificate le caratteristiche funzionali del software in esecuzione in un ambiente che simula la piattaforma reale, attraverso le tecniche di testing utilizzate anche nel software tradizionale: test di unità e test d integrazione. Le maggiori differenze emergono con il testing nell ambiente target che è effettuato in quanto bisogna considerare le dipendenze del software con l hardware specifico per verificare che il codice operi correttamente sulla piattaforma sotto condizioni realistiche. Specialmente per i sistemi embedded è importante sviluppare tecniche e strumenti di testing per rilevare difetti nell interazione tra hardware e software. In quest ambiente devono essere verificate le caratteristiche funzionali del software, questa volta in esecuzione sulla piattaforma reale, dove le misure sono più affidabili, e le caratteristiche non funzionali che possono essere valutate soltanto in quest ambiente con l effettiva interazione del software con l hardware dedicato. Obiettivi della tesi La prevalenza di approcci poco concreti nella scarsa letteratura sul testing di software embedded, e la presenza di approcci ad-hoc e proprietari in ambito industriale, evidenzia la mancanza di tecniche e strumenti utilizzabili in contesti differenti. Questo aumenta la necessità di un approccio generale attraverso il quale sia possibile garantire uno sviluppo software di qualità. La tesi fornisce un contributo in questa direzione, per superare i problemi di specificità del testing in questo dominio, attraverso la sperimentazione in una realtà industriale complessa e affermata, di tecniche e strumenti per il testing di caratteristiche funzionali e non funzionali di software embedded. La tesi studia alcuni problemi di qualità specifici e propone delle tecniche di testing che possono essere applicate nell ambiente target per valutare classi di difetti rilevanti nei sistemi embedded. Inoltre, descrive l adattamento e l utilizzo di strumenti di automazione per applicare le tecniche, affrontando la scelta, in base a caratteristiche derivate dai vincoli imposti dall ambiente sperimentale, la personalizzazione e l analisi dei risultati. I risultati ottenuti dal lavoro di tesi possono essere riassunti come: un insieme di informazioni sulla personalizzazione degli strumenti per la piattaforma ARM. Il lavoro svolto, può essere un utile linea guida per personalizzare gli stessi strumenti su altre architetture. un insieme di informazioni per la comunità open-source sul funzionamento degli strumenti e sulla presenza di problemi da risolvere per migliorare l utilizzo sull architettura specifica. un insieme di risultati sperimentali, che convalidano le tecniche e gli strumenti di testing proposti. Il lavoro di tesi ha migliorato il pro- 3

5 cesso di testing utilizzato nell ambiente sperimentale, aumentandone il perimetro, attraverso l individuazione di aree di qualità non ancora esplorate e introducendo, per la valutazione di queste, strumenti di automazione che riduco i costi e i tempi del processo. Ambiente Sperimentale L ambiente sperimentale della tesi è quello della divisione Automotive di STMicroelectronics(STM), la quale ha ideato una nuova famiglia di Systemon-Chip dal nome Cartesio con un alto livello di integrazione di device su un singolo chip. Il core è costituito dal microcontrollore ARM che permette il supporto per un vasto insieme di periferiche e interfacce di I/O. Comprende un GPS engine che lo rende un prodotto ideale per navigatori satellitari e per l infotainment. Oltre al core viene effettuato lo sviluppo di board sperimentali che comprendono tutti i dispositivi e le interfacce con le quali il chip può interagire. La componente software è costituita dal porting del sistema operativo Linux per la piattaforma target, Baseport (BSP), che comprende principalmente lo sviluppo dei device driver necessari per la gestione dell hardware specifico. Tutto questo costituisce un ambiente di sperimentazione del chip completo e funzionante utile per mostrare le funzionalità offerte ai committenti. Il processo di testing del BSP Linux era inizialmente costituito da test per la verifica del corretto interfacciamento del software con i device, principalmente test funzionali per le periferiche supportate dalla piattaforma. Con il lavoro di tesi sono state introdotte tecniche di test e strumenti di automazione per la valutazione di altre classi di problemi. Le tecniche di test individuate sono state applicate con l obiettivo di valutare la qualità del codice platform-dependent. Ovvero dell intero sistema operativo Linux l attenzione del processo di testing è posta sull area dei device driver, sviluppati per la gestione delle componenti hardware specifiche. Tecniche e approcci per il test Il processo di sviluppo di un sistema embedded considera le peculiarità sia dell hardware che del software. Il testing, a sua volta, in una prima fase viene svolto separatamente per entrambe le componenti, e in una seconda fase si focalizza sulla verifica dell interazione tra l hardware e il software. La forte relazione tra queste due componenti del sistema embedded, in aggiunta alla presenza di vincoli real-time, rende pressoché impossibile sviluppare e testare il software indipendentemente dall hardware su cui dovrà essere eseguito. Di qui la necessità del testing nell ambiente target. Nell ambito del progetto Cartesio, sono stati sperimentati approcci e tecniche per il testing in ambiente target, utili all identificazione di classi di problemi di maggiore 4

6 importanza in ambito embedded, attraverso l utilizzo di strumenti di automazione opportunamente selezionati, in base a diversi criteri individuati nell ambiente sperimentale. Per ogni strumento è descritta in modo approfondito la personalizzazione, e in caso positivo l applicazione e l analisi dei risultati. Nell ambiente target, le tecniche di testing sperimentate sono le seguenti. Test di copertura. L analisi di copertura del codice per la verifica dell efficacia dei test funzionali esistenti. Prestazioni del codice. Il profiling (function tracing) per la valutazione della durata delle funzioni nel processo di boot. Uso e gestione della memoria. Verifica dell utilizzo della memoria da parte del software alla ricerca di problemi di memory leakage; Prestazioni di I/O su dispositivi a blocchi. Verifica delle prestazioni delle operazioni di I/O (lettura, scrittura) sui dispositivi a blocchi, disponibili sulla piattaforma target. L analisi di copertura ha l obiettivo di valutare l efficacia dei test funzionali esistenti, in termini di quantità di copertura del kernel, identificando il cosiddetto dead code dei device driver platform-dependent, il codice che non viene esercitato durante l esecuzione dei test. I risultati sono utili alla creazione di casi di test addizionali per esercitare il codice, quindi incrementare la copertura dello stesso e anche il livello di qualità dei device driver platformspecific sviluppati. Lo strumento scelto è Gcov. Gcov è un framework per l analisi di copertura fornito dal compilatore Gnu Gcc. Il function tracing è una tecnica di profiling utilizzata nel caso specifico per valutare le prestazioni delle funzioni del kernel eseguite nella fase di boot del sistema. L obiettivo è individuare le aree del processo di boot con i maggiori problemi di prestazioni, in particolare identificare le funzioni relative alla parte di codice platform-dependent eseguite nella fase iniziale del kernel, per poter intervenire e migliorare i tempi di boot, requisito importante in ambito embedded. Lo strumento utilizzato è il Function Duration Tracer che si basa sul framework di tracing di Linux, Ftrace. Il memory leakage è il principale difetto della classe degli aging-related bugs, relativo all uso non corretto della memoria che provoca fallimenti del sistema. La causa principale di questi difetti è legata a errori di programmazione. Nei sistemi embedded, la limitata quantità di memoria fisica disponibile e il fallimento del sistema, che può avere conseguenze catastrofiche, rendono il memory leakage un problema su cui soffermarsi maggiormente in quest ambito rispetto ad altri. Lo strumento utilizzato è kmemleak per la rilevazione nello spazio del kernel. La valutazione delle prestazioni di I/O (operazioni di lettura e scrittura) sui dispositivi a blocchi, periferiche con tecnologia a stato solido (Flash) 5

7 utilizzate come supporti di memorizzazione di massa nei sistemi embedded, ha l obiettivo di individuare possibili problemi di efficienza nei relativi device driver, misurando le velocità di trasferimento dei dati. Lo strumento utilizzato in questo caso è IOzone. Risultati Per lo strumento di analisi di copertura, Gcov, la personalizzazione ha impedito l utilizzo e la raccolta dei dati sulla copertura. In alternativa è stata effettuata un analisi sulle cause, che ha portato alla scoperta di un bug relativo alla parte platform dependent ARM del compilatore Gcc, che esclude un problema nell architettura stessa dello strumento. Le informazioni ottenute sono state pubblicate e inserite su Bugzilla Gcc, affinché i responsabili dello sviluppo del compilatore possano risolvere il problema e permettere l utilizzo di Gcov anche sui sistemi embedded con architettura ARM. Il Function Duration Tracer, tra tutti gli strumenti, ha una personalizzazione che è la più difficile. Il risultato ottenuto è stato soddisfacente. Con i dati raccolti, infatti, abbiamo scoperto che la fase di boot del BSP kernel, può essere ottimizzata escludendo in fase di produzione del prodotto l inizializzazione dei driver della porta seriale, un device che è principalmente utilizzato in fase di produzione per sviluppo, testing e debugging. Inoltre il lavoro è un contributo valido per l integrazione diretta dello strumento nel framework Ftrace nelle future versioni del kernel e ha permesso di aggiungere al BSP il supporto per il function tracing. Kmemleak per la rilevazione dei memory leakage nel kernel, non ha avuto nessun problema per quanto riguarda la personalizzazione. Per mostrare l utilità dello strumento abbiamo studiato e individuato i principali errori di programmazione che possono essere commessi nello sviluppo di un driver e che causano difetti di memory leak. L applicazione dello strumento si basa sulla rilevazione di memory leak causati dagli errori identificati. Per Iozone, utile alla valutazione delle prestazioni di I/O, la personalizzazione è molto semplice. Lo strumento è stato utilizzato per verificare il miglioramento di prestazioni dei device driver tra release successive di sviluppo. In particolare è mostrata l applicazione su una versione migliorata del driver MMC (MultiMedia Card). Organizzazione Tesi Il capitolo 1, è una breve introduzione al mondo dei sistemi embedded, presentandone le caratteristiche, fortemente condizionate dal settore applicativo, per poi delineare le principali differenze con i sistemi desktop e gli aspetti basilari da considerare nella progettazione. Saranno presentati, inoltre, alcuni dati di mercato che testimoniano la crescita del settore embedded nel 6

8 mercato globale, e in particolare il progresso che ha avuto in questo ambito lo sviluppo del software ed il suo utilizzo nei sistemi operativi open source, come Linux. In seguito, sarà presentata una delle principali architetture hardware e le caratteristiche del software utilizzato nei sistemi embedded. La parte finale del capitolo mostra le peculiarità, l architettura e i principi di sviluppo dei sistemi Linux embedded. Il capitolo 2, introduce inizialmente le fasi del processo di testing dei sistemi embedded, focalizzandosi poi sulla fase di prototipazione e sul testing della componente software. Successivamente, delinea le differenze con il testing di software tradizionale. Vengono approfondite le tecniche di test che possono essere applicate nell ambiente target. Vengono poi introdotti i livelli software di un sistema embedded, per identificare su quale concentrare maggiormente il controllo di qualità nel porting di un sistema operativo. Infine, viene descritta l automazione del testing e la personalizzazione degli strumenti. Nel capitolo 3 è descritto l ambiente sperimentale di STMicroelectronics. Inizialmente viene introdotto l ambito automotive e il progetto Cartesio. Successivamente viene descritto lo sviluppo del sistema embedded, approfondendo l ambiente utilizzato, e la componente hardware e software. Viene descritto, poi, il processo di testing e le tecniche adottate. Successivamente vengono delineati i punti di miglioramento del processo di testing, tra cui copertura di nuove classi di problemi e aumento dell automazione. Infine sono mostrati i criteri utilizzati per la scelta degli strumenti, utili per effettuare il testing delle classi di problemi individuate. Il capitolo 4 è dedicato all analisi dell efficacia del test. Dopo una breve introduzione al code coverage, vengono descritti gli obiettivi dell analisi di copertura nell ambiente sperimentale e la scelta dello strumento. Infine viene fornita una descrizione approfondita di Gcov e della personalizzazione per l architettura ARM. Il capitolo 5 è dedicato alla valutazione delle prestazioni del codice nella fase di boot del kernel. Vengono descritti gli obiettivi nell ambiente sperimentale e la scelta dello strumento. Successivamente viene introdotto il framework Ftrace e descritto in modo approfondito il Function Graph Tracer, attraverso la personalizzazione per l architettura ARM, l utilizzo e l analisi dei risultati sperimentali. Nel capitolo 6 viene inizialmente introdotto il software aging, e poi presentato il problema del memory leakage e le sue conseguenze. Successivamente, viene descritta la scelta dello strumento e in modo dettagliato il Kernel Memory Leak Detector (Kmemleak). Infine vengono analizzati gli errori, causa di memory leakage, che possono essere commessi nello sviluppo dei device driver e la rilevazione di questi da parte di Kmemleak. Il capitolo 7 è dedicato alla valutazione delle prestazioni di I/O sui dispositivi a blocchi. Vengono presentati gli obiettivi nell ambiente sperimentale e la scelta dello strumento. Successivamente viene descritto IOzone e la per- 7

9 sonalizzazione per l architettura ARM. Infine viene descritta l applicazione per valutare un driver specifico e l analisi dei risultati sperimentali. Infine l appendice A, descrive in modo approfondito il processo di boot del kernel, focalizzandosi però sulla parte platform-dependent dell architettura Cartesio. Questa appendice è di supporto in modo principale per il capitolo 6, ma anche per approfondire aspetti citati in altri punti della tesi. 8

Automazione di Test di Sistemi Embedded

Automazione di Test di Sistemi Embedded UNIVERSITÀ DEGLI STUDI DI MILANO - BICOCCA Facoltà di Scienze Matematiche, Fisiche e Naturali Dipartimento di Informatica Sistemistica e Comunicazione Corso di Laurea Magistrale in Informatica Automazione

Dettagli

Sistemi embedded un dispositivo incapsulato progettato per una determinata applicazione

Sistemi embedded un dispositivo incapsulato progettato per una determinata applicazione Sistemi embedded esistono molte definizioni nessuna universalmente riconosciuta. In generale con sistema embedded si intende un dispositivo incapsulato all'interno del sistema da controllare progettato

Dettagli

Laureando: Damiano Vittor. Relatore: Dott. Ing. Massimiliano Nolich

Laureando: Damiano Vittor. Relatore: Dott. Ing. Massimiliano Nolich Università degli studi di Trieste Facoltà di Ingegneria Dipartimento di Elettrotecnica, Elettronica ed Informatica Sviluppo di un Driver per il Controllo di un Robot Mobile in Ambiente Multipiattaforma

Dettagli

Come valutare e scegliere un Sistema Operativo Embedded

Come valutare e scegliere un Sistema Operativo Embedded Come valutare e scegliere un Sistema Operativo Embedded Valter Minute Adeneo Embedded vminute@adeneo-embedded.com ARM e sistemi operativi Milioni di dispositivi contengono processori ARM Per sfruttare

Dettagli

«Ability, la meta-distribuzione Abinsula per il mondo Embedded»

«Ability, la meta-distribuzione Abinsula per il mondo Embedded» INUXDAY «Ability, la meta-distribuzione Abinsula per il mondo Embedded» About Abinsula Azienda che propone soluzioni nel campo dei sistemi Embedded, nel campo della Sicurezza Informatica e delle applicazioni

Dettagli

Marco Cesati Dipartimento di Ingegneria Civile e Ingegneria Informatica Università degli Studi di Roma Tor Vergata

Marco Cesati Dipartimento di Ingegneria Civile e Ingegneria Informatica Università degli Studi di Roma Tor Vergata Lezione E4 sistema bare-metal Sistemi operativi open-source, embedded e real-time 22 ottobre 2013 Dipartimento di Ingegneria Civile e Ingegneria Informatica Università degli Studi di Roma Tor Vergata SOSERT

Dettagli

Lezione E5. Sistemi embedded e real-time

Lezione E5. Sistemi embedded e real-time Lezione E5 sistema bare-metal Sistemi embedded e real-time 25 ottobre 2012 Dipartimento di Ingegneria Civile e Ingegneria Informatica Università degli Studi di Roma Tor Vergata SERT 13 E5.1 Di cosa parliamo

Dettagli

Sviluppo di applicazioni mobili su piattaforma Maemo

Sviluppo di applicazioni mobili su piattaforma Maemo tesi di laurea Anno Accademico 2009/2010 relatore Ch.mo prof. Marcello Cinque candidato Giovanni Fortini Matr. 534/2169 Contesto e contributo Sistemi operativi per dispositivi mobili Sviluppo di un applicazione

Dettagli

Introduzione alle tecnologie informatiche. Strumenti mentali per il futuro

Introduzione alle tecnologie informatiche. Strumenti mentali per il futuro Introduzione alle tecnologie informatiche Strumenti mentali per il futuro Panoramica Affronteremo i seguenti argomenti. I vari tipi di computer e il loro uso Il funzionamento dei computer Il futuro delle

Dettagli

Lezione E1. Sistemi embedded e real-time

Lezione E1. Sistemi embedded e real-time Lezione E1 Sistemi embedded e real-time 3 ottobre 2012 Dipartimento di Ingegneria Civile e Ingegneria Informatica Università degli Studi di Roma Tor Vergata SERT 13 E1.1 Di cosa parliamo in questa lezione?

Dettagli

Porting su architettura ARM Marvell 88F6281 ed analisi comparativa delle patch real-time RTAI e Xenomai per il kernel Linux

Porting su architettura ARM Marvell 88F6281 ed analisi comparativa delle patch real-time RTAI e Xenomai per il kernel Linux UNIVERSITÀ POLITECNICA DELLE MARCHE FACOLTÀ DI INGEGNERIA Corso di Laurea Specialistica in Ingegneria Elettronica Porting su architettura ARM Marvell 88F6281 ed analisi comparativa delle patch real-time

Dettagli

Lezione 4 La Struttura dei Sistemi Operativi. Introduzione

Lezione 4 La Struttura dei Sistemi Operativi. Introduzione Lezione 4 La Struttura dei Sistemi Operativi Introduzione Funzionamento di un SO La Struttura di un SO Sistemi Operativi con Struttura Monolitica Progettazione a Livelli di un SO 4.2 1 Introduzione (cont.)

Dettagli

Il sistema operativo. Sistema operativo. Multiprogrammazione. Il sistema operativo. Gestione della CPU

Il sistema operativo. Sistema operativo. Multiprogrammazione. Il sistema operativo. Gestione della CPU Il sistema operativo Sistema operativo Gestione della CPU Primi elaboratori: Monoprogrammati: un solo programma in memoria centrale Privi di sistema operativo Gestione dell hardware da parte degli utenti

Dettagli

Progettazione di sistemi Embedded

Progettazione di sistemi Embedded Progettazione di sistemi Embedded Corso introduttivo di progettazione di sistemi embedded A.S. 2013/2014 proff. Nicola Masarone e Stefano Salvatori Eccetto dove diversamente specificato, i contenuti di

Dettagli

Software. Algoritmo. Algoritmo INFORMATICA PER LE DISCIPLINE UMANISTICHE 2 (13042)

Software. Algoritmo. Algoritmo INFORMATICA PER LE DISCIPLINE UMANISTICHE 2 (13042) INFORMATICA PER LE DISCIPLINE UMANISTICHE 2 (13042) Gli elaboratori utilizzano memoria per Dati da elaborare Istruzioni eseguite dall elaboratore software differenti risoluzione problemi differenti Algoritmo

Dettagli

Prefazione. Contenuti

Prefazione. Contenuti Prefazione Il sistema operativo costituisce uno dei componenti fondamentali di ogni sistema di elaborazione, in particolare è quello con cui l utente entra direttamente in contatto quando accede al sistema,

Dettagli

Software Open Source per sistemi embedded

Software Open Source per sistemi embedded Software Open Source per sistemi embedded Alberto Ferrante OSLab ALaRI, Facoltà di Informatica Università della Svizzera italiana ferrante@alari.ch Outline Introduzione Perché usare il software OS in ambito

Dettagli

Il Sistema Operativo. Introduzione di programmi di utilità. Elementi di Informatica Docente: Giorgio Fumera

Il Sistema Operativo. Introduzione di programmi di utilità. Elementi di Informatica Docente: Giorgio Fumera CPU Memoria principale Il Sistema Operativo Elementi di Informatica Docente: Giorgio Fumera Corso di Laurea in Edilizia Facoltà di Architettura A.A. 2009/2010 ALU Unità di controllo Registri A indirizzi

Dettagli

SISTEMI E DISPOSITIVI EMBEDDED

SISTEMI E DISPOSITIVI EMBEDDED SISTEMI E DISPOSITIVI EMBEDDED SISTEMI E DISPOSITIVI EMBEDDED Fasar Elettronica propone un innovativa e performante famiglia di prodotti per l'ambiente embedded, che comprende sistemi completi e singoli

Dettagli

Virtualizzazione e Macchine Virtuali

Virtualizzazione e Macchine Virtuali Virtualizzazione e Macchine Virtuali Gabriele D Angelo, Ludovico Gardenghi {gda, garden}@cs.unibo.it http://www.cs.unibo.it/~gdangelo/ http://www.cs.unibo.it/~gardengl/ Università di Bologna Corso di Laurea

Dettagli

Reingegnerizzazione del processo di test nel contesto Exprivia

Reingegnerizzazione del processo di test nel contesto Exprivia Facoltà di Scienze MM, FF, NN. Corso di laurea : Informatica e T. P. S. Tesi di laurea in Ingegneria del Software Reingegnerizzazione del processo di test nel contesto Exprivia Relatore : Prof. Giuseppe

Dettagli

Software. Definizione, tipologie, progettazione

Software. Definizione, tipologie, progettazione Software Definizione, tipologie, progettazione Definizione di software Dopo l hardware analizziamo l altra componente fondamentale di un sistema di elaborazione. La macchina come insieme di componenti

Dettagli

Implementazione di un servizio VoIP in ambienti SOA per mobile computing

Implementazione di un servizio VoIP in ambienti SOA per mobile computing tesi di laurea Implementazione di un servizio VoIP in ambienti SOA per mobile computing Anno Accademico 2006/2007 relatore Ch.mo prof. Domenico Cotroneo correlatore ing. Marcello Cinque candidato Vittorio

Dettagli

Linux Embedded un pinguino piccolo così

Linux Embedded un pinguino piccolo così Linux Embedded un pinguino piccolo così Fabrizio Vacca fabrizio.vacca@microc.it Agenda Introduzione Sistemi embedded: hardware Sistemi embedded: software Piccola panoramica di progetti Open Source DEMO

Dettagli

HARDWARE. Relazione di Informatica

HARDWARE. Relazione di Informatica Michele Venditti 2 D 05/12/11 Relazione di Informatica HARDWARE Con Hardware s intende l insieme delle parti solide o ( materiali ) del computer, per esempio : monitor, tastiera, mouse, scheda madre. -

Dettagli

Applied Research & Technology Dept.

Applied Research & Technology Dept. 17/12/08 Elenco Tesi Disponibili Applied Research & Technology Dept. La Società MBDA La MBDA Italia è un azienda leader nella realizzazione di sistemi di difesa che con i suoi prodotti è in grado di soddisfare

Dettagli

Generazione Automatica di Asserzioni da Modelli di Specifica

Generazione Automatica di Asserzioni da Modelli di Specifica UNIVERSITÀ DEGLI STUDI DI MILANO BICOCCA FACOLTÀ DI SCIENZE MATEMATICHE FISICHE E NATURALI Corso di Laurea Magistrale in Informatica Generazione Automatica di Asserzioni da Modelli di Specifica Relatore:

Dettagli

Sistemi Mobili e Wireless Android Introduzione alla piattaforma

Sistemi Mobili e Wireless Android Introduzione alla piattaforma Sistemi Mobili e Wireless Android Introduzione alla piattaforma Stefano Burigat Dipartimento di Matematica e Informatica Università di Udine www.dimi.uniud.it/burigat stefano.burigat@uniud.it Cos'è Android?

Dettagli

Un sistema dedicato è per sua. Sistemi embedded modulari con PC/104 e PC/104 Plus. appunti

Un sistema dedicato è per sua. Sistemi embedded modulari con PC/104 e PC/104 Plus. appunti Sistemi embedded modulari con PC/104 e PC/104 Plus Costruire un sistema embedded con i componenti della famiglia PC/104 non è molto diverso dall assemblare un PC con componenti off-the-shelf. La differenza

Dettagli

INTRODUZIONE AI SISTEMI EMBEDDED

INTRODUZIONE AI SISTEMI EMBEDDED 1 INTRODUZIONE AI SISTEMI EMBEDDED DEFINIZIONE DI SISTEMA EMBEDDED SVILUPPO HW/SW DI SISTEMI EMBEDDED \ DEFINIZIONE DI SISTEMA EMBEDDED UN SISTEMA EMBEDDED È UN SISTEMA DI ELABORAZIONE (COMPUTER) SPECIALIZZATO

Dettagli

Software relazione. Software di base Software applicativo. Hardware. Bios. Sistema operativo. Programmi applicativi

Software relazione. Software di base Software applicativo. Hardware. Bios. Sistema operativo. Programmi applicativi Software relazione Hardware Software di base Software applicativo Bios Sistema operativo Programmi applicativi Software di base Sistema operativo Bios Utility di sistema software Software applicativo Programmi

Dettagli

1. Hard Real Time Linux (Laurea VO o specialistica)

1. Hard Real Time Linux (Laurea VO o specialistica) 20/9/06 Elenco Tesi Disponibili Applied Research & Technology Dept. La Società MBDA La MBDA Italia è un azienda leader nella realizzazione di sistemi di difesa che con i suoi prodotti è in grado di soddisfare

Dettagli

MODULO 1. 1.1 Il personal computer. ISIS STRINGHER Corso Serale Anno scolastico 2010/11 Classe 1 Commerciale

MODULO 1. 1.1 Il personal computer. ISIS STRINGHER Corso Serale Anno scolastico 2010/11 Classe 1 Commerciale MODULO 1 1.1 Il personal computer ISIS STRINGHER Corso Serale Anno scolastico 2010/11 Classe 1 Commerciale 1.1 Il personal computer Il PC Hardware e software Classificazioni del software Relazione tra

Dettagli

Il sistema di elaborazione Hardware e software

Il sistema di elaborazione Hardware e software Il sistema di elaborazione Hardware e software A. Lorenzi M. Govoni TECNOLOGIE INFORMATICHE. Release 2.0 Atlas Hardware e software Un sistema di elaborazione è formato da: parti hardware: componenti fisiche

Dettagli

Capitolo 1: Introduzione

Capitolo 1: Introduzione Capitolo 1: ntroduzione Che cos è un sistema operativo? Sistemi mainframe. Sistemi desktop. Sistemi multiprocessore. Sistemi distribuiti. Sistemi cluster. Sistemi in tempo reale. Sistemi palmari. Migrazione

Dettagli

Embedded Linux Introduzione

Embedded Linux Introduzione Embedded Linux Introduzione Progetto STRAGO su WSN, Fase 1 pascione@napoli.consorzio-cini.it cotroneo@unina.it Napoli, 16 Gennaio 2006 macinque@unina.it Perché Embedded Linux? Perchè Linux? Codice sorgente

Dettagli

Porting (o cambio strategico) da un embedded proprietario a un Linux Embedded. problemi, soluzioni... ed esperienze in evoluzione

Porting (o cambio strategico) da un embedded proprietario a un Linux Embedded. problemi, soluzioni... ed esperienze in evoluzione Porting (o cambio strategico) da un embedded proprietario a un Linux Embedded problemi, soluzioni... ed esperienze in evoluzione commitsoftware consulting, engineering, project delivery rich-client & web

Dettagli

Il sistema operativo TinyOS

Il sistema operativo TinyOS tesi di laurea Anno Accademico 2005/2006 relatore Ch.mo prof. Domenico Cotroneo candidato Giovanni Chierchia Matr. 534 / 804 ::. Obiettivi del lavoro di tesi Studio del sistema operativo TinyOS Studio

Dettagli

Comunicato stampa. Intel Progetta Nuovi System-on-Chip Basati su Atom e Annuncia Nuovi Successi Ottenuti in Cina nei Settori Telco e Automobilistico

Comunicato stampa. Intel Progetta Nuovi System-on-Chip Basati su Atom e Annuncia Nuovi Successi Ottenuti in Cina nei Settori Telco e Automobilistico Intel Corporation 2200 Mission College Blvd. Santa Clara, CA 95054-1549 Comunicato stampa Intel Progetta Nuovi System-on-Chip Basati su Atom e Annuncia Nuovi Successi Ottenuti in Cina nei Settori Telco

Dettagli

ASPETTI GENERALI DI LINUX. Parte 2 Struttura interna del sistema LINUX

ASPETTI GENERALI DI LINUX. Parte 2 Struttura interna del sistema LINUX Parte 2 Struttura interna del sistema LINUX 76 4. ASPETTI GENERALI DEL SISTEMA OPERATIVO LINUX La funzione generale svolta da un Sistema Operativo può essere definita come la gestione dell Hardware orientata

Dettagli

Unipi EPrints, l'archivio istituzionale dell'università di Pisa

Unipi EPrints, l'archivio istituzionale dell'università di Pisa DOPO BERLIN 3: POLITICHE DI ACCESSO APERTO ALLA LETTERATURA DI RICERCA Pisa, Aula magna della facoltà di Scienze politiche Giovedì 16 febbraio 2006, h. 15.00 Unipi EPrints, Barbara Pistoia bpistoia@dcci.unipi.it

Dettagli

Software di base. Corso di Fondamenti di Informatica

Software di base. Corso di Fondamenti di Informatica Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Software di base Corso di Fondamenti di Informatica Laurea in Ingegneria Informatica (Canale di Ingegneria delle Reti

Dettagli

Abilità Informatiche A.A. 2010/2011 Lezione 4: SoftWare. Facoltà di Lingue e Letterature Straniere

Abilità Informatiche A.A. 2010/2011 Lezione 4: SoftWare. Facoltà di Lingue e Letterature Straniere Abilità Informatiche A.A. 2010/2011 Lezione 4: SoftWare Facoltà di Lingue e Letterature Straniere Software È un insieme di programmi che permettono di trasformare un insieme di circuiti elettronici (=

Dettagli

Realizzazione di un sistema di logging prototipale per la piattaforma

Realizzazione di un sistema di logging prototipale per la piattaforma tesi di laurea Realizzazione di un sistema di logging prototipale per la piattaforma Android Anno Accademico 2011 / 2012 relatore Ch.mo prof. Marcello Cinque candidato Dario De Meis Matr. 528 / 741 Smartphone

Dettagli

Sistemi Operativi. Introduzione. C.d.L. in Informatica (laurea triennale) Anno Accademico 2009-2010. Dipartimento di Matematica e Informatica Catania

Sistemi Operativi. Introduzione. C.d.L. in Informatica (laurea triennale) Anno Accademico 2009-2010. Dipartimento di Matematica e Informatica Catania Sistemi Operativi C.d.L. in Informatica (laurea triennale) Anno Accademico 2009-2010 Dipartimento di Matematica e Informatica Catania Introduzione Prof. Mario Di Raimondo Sistemi Operativi 9 CFU (72 ore)

Dettagli

Pieces of Technology at your service. dottesttm

Pieces of Technology at your service. dottesttm Pieces of Technology at your service dottesttm DOTNET - AUTOMATIZZAZIONE DELL ANALISI STATICA, CODE REVIEW, TEST UNIT dottest è una soluzione di test di sviluppo integrato per automatizzare una vasta gamma

Dettagli

INFORMATICA. INFORmazione automatica

INFORMATICA. INFORmazione automatica INFORMATICA INFORmazione automatica Insieme di discipline e tecniche per rappresentare, elaborare e trasmettere automaticamente delle informazioni. Computer - Elaboratore elettronico: e macchina concepita

Dettagli

Prototipazione GNU/Linux-Arduino

Prototipazione GNU/Linux-Arduino di Rodolfo Giometti Prototipazione GNU/Linux-Arduino Prototipazione rapida con GNU/Linux & Arduino Rodolfo Ing. Giometti Ingegnere informatico libero professionista. Embedded x86,

Dettagli

Il software: natura e qualità

Il software: natura e qualità Sommario Il software: natura e qualità Leggere Cap. 2 Ghezzi et al. Natura e peculiarità del software Classificazione delle qualità del software Qualità del prodotto e del processo Qualità interne ed esterne

Dettagli

Fondamenti di Informatica: Sistemi Operativi 1. Introduzione

Fondamenti di Informatica: Sistemi Operativi 1. Introduzione Introduzione Fondamenti di Informatica: Sistemi Operativi 1 Elaboratori necessitano di SOFTWARE SOFTWARE DI SISTEMA (SISTEMI OPERATIVI): fanno funzionare le varie componenti del computer e permettono all

Dettagli

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche Software di sistema e software applicativo I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche Software soft ware soffice componente è la parte logica

Dettagli

1.3 Concetti base dell Informatica: Elaboratore

1.3 Concetti base dell Informatica: Elaboratore 1.3 Concetti base dell Informatica: Elaboratore Insegnamento di Informatica Elisabetta Ronchieri Corso di Laurea di Economia, Universitá di Ferrara I semestre, anno 2014-2015 Elisabetta Ronchieri (Universitá)

Dettagli

Il SOFTWARE DI BASE (o SOFTWARE DI SISTEMA)

Il SOFTWARE DI BASE (o SOFTWARE DI SISTEMA) Il software Software Il software Il software è la sequenza di istruzioni che permettono ai computer di svolgere i loro compiti ed è quindi necessario per il funzionamento del calcolatore. Il software può

Dettagli

Confronto sperimentale tra tecniche di testing automatico per applicazioni Android

Confronto sperimentale tra tecniche di testing automatico per applicazioni Android Tesi di laurea in Ingegneria del Software Confronto sperimentale tra tecniche di testing automatico per applicazioni Anno Accademico 2011/2012 Relatore Ch.mo prof. Porfirio Tramontana Correlatore Ing.

Dettagli

Calcolo numerico e programmazione. Sistemi operativi

Calcolo numerico e programmazione. Sistemi operativi Calcolo numerico e programmazione Sistemi operativi Tullio Facchinetti 25 maggio 2012 13:47 http://robot.unipv.it/toolleeo Sistemi operativi insieme di programmi che rendono

Dettagli

Arduino: domotica open source

Arduino: domotica open source Arduino: domotica open source Emanuele Palazzetti Feedback: http://tinyurl.com/arduinold2011 1 Physical Computing Costruire dei sistemi fisici interattivi tramite l'uso di software e di hardware in grado

Dettagli

Linux su FPGA Xilinx

Linux su FPGA Xilinx Linux su FPGA Xilinx Paolo Palana University of Rome Tor Vergata System Programming Research Group palana@sprg.uniroma2.it Corso interdottorato su sistemi embedded Paolo Palana (SPRG) Linux su FPGA Xilinx

Dettagli

Arduino e l Internet delle cose

Arduino e l Internet delle cose Arduino e l Internet delle cose Cristian Maglie (c.maglie@arduino.cc) 1 Notizie sul relatore - Programmatore Freelance - Entusiasta utilizzatore di tecnologie Open - Collabora con Arduino da oltre 5 anni

Dettagli

Nessie 2013 prende il volo

Nessie 2013 prende il volo La scienza, qualsivoglia siano i suoi ultimi sviluppi, ha le sue origini nelle tecniche, nelle arti e nei mestieri. La scienza emerge nel contatto con le cose, dipende dall evidenza dei sensi, e, per quanto

Dettagli

I Modelli della Ricerca Operativa

I Modelli della Ricerca Operativa Capitolo 1 I Modelli della Ricerca Operativa 1.1 L approccio modellistico Il termine modello è di solito usato per indicare una costruzione artificiale realizzata per evidenziare proprietà specifiche di

Dettagli

Manuale di riferimento di HP Web Jetadmin Database Connector Plug-in

Manuale di riferimento di HP Web Jetadmin Database Connector Plug-in Manuale di riferimento di HP Web Jetadmin Database Connector Plug-in Informazioni sul copyright 2004 Copyright Hewlett-Packard Development Company, L.P. Sono vietati la riproduzione, l'adattamento e la

Dettagli

INFORMATICA. Corso di Laurea in Scienze dell'educazione

INFORMATICA. Corso di Laurea in Scienze dell'educazione INFORMATICA Corso di Laurea in Scienze dell'educazione Introduzione all Informatica Docente: Mario Alviano Studio: Dipartimento di Matematica Cubo 30B 2 Piano Ricevimento: giovedì 18:30 19:30 (avvisare

Dettagli

Il software. Il software. Dott. Cazzaniga Paolo. Dip. di Scienze Umane e Sociali paolo.cazzaniga@unibg.it

Il software. Il software. Dott. Cazzaniga Paolo. Dip. di Scienze Umane e Sociali paolo.cazzaniga@unibg.it Il software Dip. di Scienze Umane e Sociali paolo.cazzaniga@unibg.it Outline 1 Il software Outline Il software 1 Il software Algoritmo Sequenza di istruzioni la cui esecuzione consente di risolvere uno

Dettagli

Lezione R14. Sistemi embedded e real-time

Lezione R14. Sistemi embedded e real-time Lezione R14 Sistemi embedded e 22 gennaio 2013 Dipartimento di Ingegneria Civile e Ingegneria Informatica Università degli Studi di Roma Tor Vergata SERT 13 R14.1 Di cosa parliamo in questa lezione? In

Dettagli

Corso di Sistemi di Elaborazione A.A. 2008/2009

Corso di Sistemi di Elaborazione A.A. 2008/2009 Università di Ferrara Facoltà di Ingegneria Docente: Ing. Massimiliano Ruggeri Mail: m.ruggeri@imamoter.cnr.it mruggeri@ing.unife.it Tel. 0532/735631 Corso di Sistemi di Elaborazione A.A. 2008/2009 Durata:

Dettagli

Software e Sistemi Operativi Prof. Maurizio Naldi A.A. 2015/16

Software e Sistemi Operativi Prof. Maurizio Naldi A.A. 2015/16 Software e Sistemi Operativi Prof. Maurizio Naldi A.A. 2015/16 Cosa vedremo Il software applicativo Categorie di SW Il sistema operativo Gestione programmi in esecuzione (processi) Gestione memoria Gestione

Dettagli

Arduino UNO. Single board microcontroller

Arduino UNO. Single board microcontroller Arduino UNO Single board microcontroller Che cos è Arduino? Arduino è una piattaforma hardware basata su un microcontrollore, per lo sviluppo di applicazioni che possono interagire con il mondo esterno.

Dettagli

L informatica INTRODUZIONE. L informatica. Tassonomia: criteri. È la disciplina scientifica che studia

L informatica INTRODUZIONE. L informatica. Tassonomia: criteri. È la disciplina scientifica che studia L informatica È la disciplina scientifica che studia INTRODUZIONE I calcolatori, nati in risposta all esigenza di eseguire meccanicamente operazioni ripetitive Gli algoritmi, nati in risposta all esigenza

Dettagli

LPIC-1 Junior Level Linux Certification

LPIC-1 Junior Level Linux Certification Corso 2012/2013 Introduzione a GNU/Linux Obiettivi Il percorso formativo ha l obiettivo di fornire ai partecipanti le competenze basilari necessarie per installare, configurare e gestire un server/workstation

Dettagli

Architetture Applicative

Architetture Applicative Alessandro Martinelli alessandro.martinelli@unipv.it 6 Marzo 2012 Architetture Architetture Applicative Introduzione Alcuni esempi di Architetture Applicative Architetture con più Applicazioni Architetture

Dettagli

Uno strumento per l emulazione di fallimenti hardware in sistemi virtualizzati

Uno strumento per l emulazione di fallimenti hardware in sistemi virtualizzati Tesi di laurea magistrale Uno strumento per l emulazione di fallimenti hardware in sistemi virtualizzati Anno Accademico 2012/2013 relatore Ch.mo prof. Marcello Cinque Ing. Antonio Pecchia correlatore

Dettagli

Software open source: è qui per restare

Software open source: è qui per restare Software open source: è qui per restare Il codice aperto coesiste e talvolta s intreccia con quello proprietario in un sempre maggior numero di applicazioni embedded. Ma in alcuni settori specifici di

Dettagli

Le Aziende del Distretto Green & High Tech presentano i loro progetti. Valorizzare le sinergie della rete per creare valore aggiunto.

Le Aziende del Distretto Green & High Tech presentano i loro progetti. Valorizzare le sinergie della rete per creare valore aggiunto. Le Aziende del Distretto Green & High Tech presentano i loro progetti Valorizzare le sinergie della rete per creare valore aggiunto Azcom Technology Relatore: Claudio Canosi 10-15 Aprile 2014 APA Confartigianato

Dettagli

FACOLTÀ DI INGEGNERIA CORSO DI LAUREA IN INGEGNERIA INFORMATICA DIPARTIMENTO DI INFORMATICA E SISTEMISTICA. Presentazione

FACOLTÀ DI INGEGNERIA CORSO DI LAUREA IN INGEGNERIA INFORMATICA DIPARTIMENTO DI INFORMATICA E SISTEMISTICA. Presentazione UNIVERSITÀ DEGLI STUDI DI NAPOLI FEDERICO II FACOLTÀ DI INGEGNERIA CORSO DI LAUREA IN INGEGNERIA INFORMATICA DIPARTIMENTO DI INFORMATICA E SISTEMISTICA Presentazione Tesi di Laurea in Misure per l Automazione

Dettagli

ATI MAI Srl Milano SCHEDE TECNICHE INTERVENTI CONCLUSI

ATI MAI Srl Milano SCHEDE TECNICHE INTERVENTI CONCLUSI SCHEDE TECNICHE INTERVENTI CONCLUSI ATI MAI Srl Milano - S&H Software & Hardware Srl Peschiera Borromeo MI - MERLINO TECHNOLOGY Srl Milano - DIPARTIMENTO ELETTRONICA E INFORMAZIONE (DEI) Politecnico Milano

Dettagli

Sistemi Elettronici #1. Sistemi Elettronici. Definizioni e concetti generali. Sistemi Elettronici Laurea Triennale in Elettronica A.A.

Sistemi Elettronici #1. Sistemi Elettronici. Definizioni e concetti generali. Sistemi Elettronici Laurea Triennale in Elettronica A.A. Sistemi Elettronici Definizioni e concetti generali Concetti generali Il microcontrollore è un dispositivo che raggruppa su un unico chip un processore ed un insieme di dispositivi CPU Memoria RAM Memoria

Dettagli

Il sistema di elaborazione

Il sistema di elaborazione Il sistema di elaborazione Hardware e software Hardware e software Un sistema di elaborazione è formato da: parti hardware: componenti fisiche parti software: componenti logiche i dati da trattare le correlazioni

Dettagli

Cos è l Ingegneria del Software?

Cos è l Ingegneria del Software? Cos è l Ingegneria del Software? Corpus di metodologie e tecniche per la produzione di sistemi software. L ingegneria del software è la disciplina tecnologica e gestionale che riguarda la produzione sistematica

Dettagli

Infrastrutture Software

Infrastrutture Software Infrastrutture Software I componenti fisici di un sistema informatico sono resi accessibili agli utenti attraverso un complesso di strumenti software finalizzati all utilizzo dell architettura. Si tratta

Dettagli

PROTOTIPAZIONE DI UN TRADUTTORE DA SORGENTE PLC AD ASSEMBLY DI UNA MACCHINA VIRTUALE

PROTOTIPAZIONE DI UN TRADUTTORE DA SORGENTE PLC AD ASSEMBLY DI UNA MACCHINA VIRTUALE PROTOTIPAZIONE DI UN TRADUTTORE DA SORGENTE PLC AD ASSEMBLY DI UNA MACCHINA VIRTUALE Relatore: prof. Michele Moro Laureando: Marco Beggio Corso di laurea in Ingegneria Informatica Anno Accademico 2006-2007

Dettagli

Tesi di Laurea Automazione del testing delle Interfacce utente di applicazioni WEB:

Tesi di Laurea Automazione del testing delle Interfacce utente di applicazioni WEB: Tesi di Laurea Automazione del testing delle Interfacce utente di applicazioni WEB: un caso di studio Anno accademico 2009 / 2010 Relatore Ch.mo prof. Porfirio Tramontana Correlatore Ch.mo Ing. Domenico

Dettagli

Caratteristiche Qualitative. del FLOSS TCExam

Caratteristiche Qualitative. del FLOSS TCExam PAAL2008 Caratteristiche Qualitative L o del FLOSS TCExam Nicola Asuni http://www.tcexam.com 1 TCExam TCExam è un sistema software, gratuito ed Open Source (FLOSS), che consente ad insegnanti, educatori

Dettagli

Sistemi Operativi. Introduzione. C.d.L. in Informatica (laurea triennale) Anno Accademico 2013-2014. Dipartimento di Matematica e Informatica Catania

Sistemi Operativi. Introduzione. C.d.L. in Informatica (laurea triennale) Anno Accademico 2013-2014. Dipartimento di Matematica e Informatica Catania Sistemi Operativi C.d.L. in Informatica (laurea triennale) Anno Accademico 2013-2014 Dipartimento di Matematica e Informatica Catania Introduzione Prof. Mario Di Raimondo Sistemi Operativi 9 CFU (72 ore)

Dettagli

Servizi On-Line Docenti https://webstudenti.unica.it

Servizi On-Line Docenti https://webstudenti.unica.it Servizi On-Line Docenti https://webstudenti.unica.it Direzione per le Reti e i Servizi Informatici UNIVERSITÀ DEGLI STUDI DI CAGLIARI L Università di Cagliari in cifre 1300 personale docente 1200 personale

Dettagli

ISTVAS Ancona Introduzione ai sistemi operativi Tecnologie Informatiche

ISTVAS Ancona Introduzione ai sistemi operativi Tecnologie Informatiche ISTVAS Ancona Introduzione ai sistemi operativi Tecnologie Informatiche Sommario Definizione di S. O. Attività del S. O. Struttura del S. O. Il gestore dei processi: lo scheduler Sistemi Mono-Tasking e

Dettagli

Introduzione alla Virtualizzazione

Introduzione alla Virtualizzazione Introduzione alla Virtualizzazione Dott. Luca Tasquier E-mail: luca.tasquier@unina2.it Virtualizzazione - 1 La virtualizzazione è una tecnologia software che sta cambiando il metodo d utilizzo delle risorse

Dettagli

Testwell CTC++ Test Coverage Analyser Copertura del codice per tutti i livelli, tutti i compilatori, tutti i target embedded

Testwell CTC++ Test Coverage Analyser Copertura del codice per tutti i livelli, tutti i compilatori, tutti i target embedded Testwell CTC++ Test Coverage Analyser Copertura del codice per tutti i livelli, tutti i compilatori, tutti i target embedded Testwell CTC++ è uno strumento per l analisi della copertura del codice e la

Dettagli

CAPITOLO 1 I SISTEMI OPERATIVI

CAPITOLO 1 I SISTEMI OPERATIVI CAPITOLO 1 I SISTEMI OPERATIVI Introduzione ai sistemi operativi pag. 3 La shell pag. 3 Tipi di sistemi operativi pag. 4 I servizi del sistema operativo pag. 4 La gestione dei file e il file system Il

Dettagli

Analisi sperimentale di software aging nel kernel Linux

Analisi sperimentale di software aging nel kernel Linux Tesi di laurea specialistica Anno Accademico 2008/09 Relatore Ch.mo Prof. Stefano Russo Correlatori Ing. Roberto Natella Ing. Roberto Pietrantuono Candidato Berniero Volzone Matr.: 885/288 1 Contesto Software

Dettagli

Il Microcontrollore. Microcontrollore PIC

Il Microcontrollore. Microcontrollore PIC Il Microcontrollore Per realizzare un automatismo l elettronica ci mette a disposizione diverse possibilità. La prima, la più tradizionale, si basa su componenti transistor, mosfet, integrati con porte

Dettagli

Anno Accademico 2011-2012 (Triennio)

Anno Accademico 2011-2012 (Triennio) Anno Accademico 2011-2012 (Triennio) Sito del Corso: http://host.uniroma3.it/laboratori/infoeco/idoneita/ Sito del Centro di Calcolo: http://host.uniroma3.it/laboratori/infoeco/ Sito della Facoltà: http://host.uniroma3.it/facolta/economia/

Dettagli

Sistemi Operativi I Corso di Laurea in Ingegneria Informatica Facolta di Ingegneria, Universita La Sapienza Docente: Francesco Quaglia

Sistemi Operativi I Corso di Laurea in Ingegneria Informatica Facolta di Ingegneria, Universita La Sapienza Docente: Francesco Quaglia Sistemi Operativi I Corso di Laurea in Ingegneria Informatica Facolta di Ingegneria, Universita La Sapienza Docente: Francesco Quaglia Introduzione: 1. Principi di base dei sistemi operativi 2. Sistemi

Dettagli

Indice degli argomenti del s.o. Software. Software. Buona lezione a tutti!! SISTEMI OPERATIVI

Indice degli argomenti del s.o. Software. Software. Buona lezione a tutti!! SISTEMI OPERATIVI Buona lezione a tutti!! SISTEMI OPERATIVI Gli appunti sono disponibili per tutti gratis sul sito personale del Prof M. Simone al link: www.ascuoladi.135.it nella pagina web programmazione, sezione classi

Dettagli

Virtualizzazione. Di tutti. Per tutti.

Virtualizzazione. Di tutti. Per tutti. Virtualizzazione. Di tutti. Per tutti. Autore: Claudio Cardinali Email: claudio@csolution.it 1 Agenda L.T.S.P. Linux Terminal Server Project Virtualizzazione K.V.M. Kernel Based Virtual Machine Deploy

Dettagli

Sistemi Operativi. Libri di Testo

Sistemi Operativi. Libri di Testo Sistemi Operativi Rocco Aversa Tel. 0815010268 rocco.aversa@unina2.it Ricevimento: Ma 14.00-16.00 Gi 14.00-16.00 1 Libri di Testo Testo Principale A.S. Tanenbaum, I moderni sistemi operativi (3 ed), Prentice-

Dettagli

INFORMATICA. Il Sistema Operativo. di Roberta Molinari

INFORMATICA. Il Sistema Operativo. di Roberta Molinari INFORMATICA Il Sistema Operativo di Roberta Molinari Il Sistema Operativo un po di definizioni Elaborazione: trattamento di di informazioni acquisite dall esterno per per restituire un un risultato Processore:

Dettagli

Funzioni del Sistema Operativo

Funzioni del Sistema Operativo Il Software I componenti fisici del calcolatore (unità centrale e periferiche) costituiscono il cosiddetto Hardware (ferramenta). La struttura del calcolatore può essere schematizzata come una serie di

Dettagli

POS SOLUTIONS SPECIALIST

POS SOLUTIONS SPECIALIST POS SOLUTIONS SPECIALIST COS È UN POS Un acronimo per Point Of Sale, ovvero Punto Di Vendita. Il POS più tradizionale è il registratore di cassa che per anni è stato l unico dispositivo in grado di regolarizzare

Dettagli

Linux nella scuola...proviamo!

Linux nella scuola...proviamo! Il software opensource per la didattica Linux nella scuola...proviamo! V. Candiani, G. Caruso, L. Ferlino, M. Ott, M. Tavella Il problema dei sw didattici protetti da copyright Alti costi per le licenze;

Dettagli

Prestazioni CPU Corso di Calcolatori Elettronici A 2007/2008 Sito Web:http://prometeo.ing.unibs.it/quarella Prof. G. Quarella prof@quarella.

Prestazioni CPU Corso di Calcolatori Elettronici A 2007/2008 Sito Web:http://prometeo.ing.unibs.it/quarella Prof. G. Quarella prof@quarella. Prestazioni CPU Corso di Calcolatori Elettronici A 2007/2008 Sito Web:http://prometeo.ing.unibs.it/quarella Prof. G. Quarella prof@quarella.net Prestazioni Si valutano in maniera diversa a seconda dell

Dettagli