Stimare il WCET Metodo classico e applicazione di un algoritmo genetico

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Stimare il WCET Metodo classico e applicazione di un algoritmo genetico"

Transcript

1 Stimare il WCET Metodo classico e applicazione di un algoritmo genetico

2 Sommario Introduzione Definizione di WCET Importanza del WCET Panoramica dei classici metodi per calcolare il WCET [1] Utilizzo di un algoritmo genetico per il calcolo del WCET [2] Considerazioni e conclusioni

3 Introduzione (1) La sigla WCET (worst case execution time) indica il tempo massimo di esecuzione di un processo. Esso dipende da [1]: Dati in input Codice del programma Hardware utilizzato Questo dato è alla base del funzionamento degli algoritmi di scheduling in tempo reale e può influenzare la schedulabilità o meno di un task set utilizzando un determinato algoritmo di scheduling.

4 Introduzione (2) La stima del WCET è un problema di fondamentale importanza nella applicazioni in tempo reale Recentemente le tecniche di analisi del WCET sono entrate a far parte dei processi dell ingegneria del software. L aumento della complessità hardware (caches, pipelines) e l utilizzo di differenti linguaggi di programmazione anche per applicazioni real time hanno complicato l analisi del tempo massimo di esecuzione.

5 Introduzione (3) Verranno analizzati 2 approcci differenti per la stima del WCET: 1. Utilizzo di tecniche classiche basate sul codice del programma (ricerca dei possibili cammini percorribili dal software in fase di esecuzione e calcolo del tempo di esecuzione come somma dei tempi delle varie parti del codice) 2. Applicazione di un algoritmo genetico (test sperimentale per calcolare il WCET sottoponendo al software particolari ingressi)

6 Panoramica delle tecniche classiche per valutare il WCET Gli aspetti da considerare per il calcolo del WCET Calcolare il tempo massimo di esecuzione di una parte di codice è un problema basato su 3 aspetti: 1. Livello di rappresentazione 2. Cammini possibili durante l esecuzione,cfp, control flow paths (determinati dai flow facts) 3. Modello del tempo di esecuzione

7 WCET Panoramica delle tecniche classiche per valutare il WCET Gli aspetti da considerare per il calcolo del WCET

8 Panoramica delle tecniche classiche per valutare il WCET Gli aspetti da considerare per il calcolo del WCET 1. Representation level: Livello di rappresentazione del codice da analizzare, tipicamente l analisi è effettuata a livello di linguaggio macchina. Il compilatore utilizzato deve essere in grado di trasformare il sorgente (es. in C)in linguaggio macchina mantenendo tutte le informazioni originali date dai flow facts anche in caso di ottimizazzioni fatte dal compilatore.

9 Panoramica delle tecniche classiche per valutare il WCET Gli aspetti da considerare per il calcolo del WCET 2. FLOW FACTS: Suggerimenti, vincoli che descrivono i limiti sui percorsi eseguibili dal programma, essi derivano dalla sintassi e semantica del programma e da apposite annotazioni scritte dal programmatore. 3. Modello del tempo di esecuzione Questo aspetto include la modellazione di come le istruzioni del programma sono eseguite sullo specifico hardware. Deve essere considerata la presenza di pipelines, caches e altri sistemi di ottimizzazione del processore.

10 WCET Panoramica delle tecniche classiche per valutare il WCET Processo di analisi del WCET Il calcolo del tempo massimo di esecuzione è determinato in fase di compilazione, utilizzando un apposito compilatore che supporti questa caratteristica. Questo processo è possibile se il codice sorgente soddisfa determinati requisiti: in generale è impossibile per il compilatore determinare completamente il tempo di esecuzione dai flow facts impliciti. In molti casi è necessario in fase di scrittura del codice aggiungere delle note che aiutino il compilatore (flow facts by annotation).

11 Panoramica delle tecniche classiche per valutare il WCET Processo di analisi del WCET Diagramma che rappresenta le varie fasi che portano al Calcolo del WCET in fase di compilazione

12 Panoramica delle tecniche classiche per valutare il WCET Considerazioni sulle tecniche classiche Vantaggi: Viene effettuata una stima teorica del WCET che dovrebbe comprendere tutte le possibili varianti in fase di esecuzione del codice Possibilità di utilizzare appositi tools che supportino il linguaggio di programmazione e l hardware utilizzato

13 Panoramica delle tecniche classiche per valutare il WCET Considerazioni sulle tecniche classiche Svantaggi: I tools utilizzabili sono poco flessibili, spesso utilizzabili solo per particolari linguaggi e specifici hardware Anche utilizzando i tools è necessario conoscere la struttura interna del programma Devono essere presenti i flow facts by annotation che guidano il compilatore il programma deve essere scritto seguendo specifici requisiti per il calcolo del WCET

14 Utilizzo di un algoritmo genetico per il calcolo del WCET GA per valutare il WCET Il calcolo del tempo massimo di esecuzione con la metodologia classica proposta in precedenza è soggetto a diversi problemi, primo fra tutti la necessità di conoscere il codice sorgente da cui estrarre tutti i cammini possibili. L utilizzo di una tecnica euristica, come può essere un algoritmo genetico, permette di valutare il WCET considerando il software come una black box da testare con determinati dati in input. Tali dati possono essere calcolati in modo dinamico con il fine di massimizzare il tempo massimo di esecuzione.

15 Utilizzo di un algoritmo genetico per il calcolo del WCET Richiami sui GA Gli algoritmi genetici sono spesso utilizzati per risolvere problemi NP hard. Essi effettuano una ricerca della soluzione ottima (nel nostro caso il tempo di esecuzione massimo) testando il processo con differenti dati di input (individui). I dati sono calcolati dinamicamente ricombinando quelli che nella fase precedente del test hanno avuto risultati migliori (che avevano un alto valore della funzione di fitness, nel nostro caso una alto tempo di esecuzione). La combinazione degli individui genitori è fatta applicando delle mutazioni e dei cross over pseudocasuali, in modo da avvicinarsi sempre di più alla soluzione ottima.

16 Utilizzo di un algoritmo genetico per il calcolo del WCET Considerazioni sull utilizzo di un GA I dati di input devono essere in formato binario, per software che ammettono input diversi bisogna creare una corrispondenza fra i due formati Il raggiungimento del valore ottimo dipende dal numero di interazioni effettuate, quindi da quanti individui sono stati creati e quanti test effettuati Sperimentalmente gli algoritmi genetici sono tra le migliori tecniche euristiche per raggiungere una regione molto vicino all ottimo ma non garantiscono il raggiungimento del valore esatto.

17 WCE Utilizzo di un algoritmo genetico per il calcolo del WCET Applicazione sperimentale Per verificare i risultati raggiungibili da un GA nel calcolo del WCET è stato applicato questo algoritmo a 4 differenti software [2] e sono stati confrontati i risultati con il WCET calcolato tramite: 1. Test con input random 2. Best Effort Data Generation 3. Limite teorico Nel caso analizzato è stato possibile ricavare i valori 2 e 3 poiché si era a conoscenza della struttura dei software utilizzati.

18 Utilizzo di un algoritmo genetico per il calcolo del WCET Applicazione sperimentale Programmi testati: 1. Heasport: algoritmo di ordinamento di numeri 2. Matmul: moltiplicazioni tra matrici 3. Matcnt: determinazione del numero di elementi con un valore sopra una soglia in una matrice 4. DES: algoritmo di crittografia 5. SimXT1, SimXT2, SimXT3: programmi appositamente costruiti in cui il tempo massimo di esecuzione è fortemente dipendente dai dati in ingresso (dalla loro rappresentazione binaria)

19 Utilizzo di un algoritmo genetico per il calcolo del WCET Criterio di STOP Applicazione sperimentale Il test basato sul GA è stato fatto terminare al verificarsi di una delle due condizioni: 1. Raggiungimento di un WCET di soglia leggermente maggiore di quello teorico (in questo caso il test dimostra un errore nel calcolo teorico del WCET) 2. Raggiungimento di un numero massimo di individui (interazioni)

20 WCET Utilizzo di un algoritmo genetico per il calcolo del WCET Applicazione sperimentale - risultati L algoritmo genetico ha ottenuto un risultato migliore di quello raggiunto con il best effort data generation L algoritmo genetico non ha raggiunto il WCET teorico

21 Conclusioni Considerazioni e Conclusioni Il test sperimentale dimostra come la tecnica del GA si avvicina e in molti casi raggiunge il valore teorico del WCET. Essendo un test ti tipo black box esso ha bisogno di informazioni solo sulla natura dei dati in ingresso e sul loro range (dimensioni dello spazio su cui effettuare la ricerca)

22 Sviluppi futuri Conclusioni Nel caso di studio proposto sono stati ottenuti buoni risultati che incoraggiano l uso di algoritmi genetici per il calcolo del WCET. Il problema su cui sono indirizzate le attuali ricerche in materia è come minimizzare il numero di test da effettuare (individui creati) e come migliorare le mutazioni tra una generazione e l altra per velocizzare la convergenza dell algoritmo.

23 References [1] Raimund Kirner, Peter Puschner (2005) Classification of WCET Analysis Techniques [2] P. Puschner and R. Nossaly (2005) Testing the Results of Static Worst-Case Execution-Time Analysis (i due articoli sono consultabili nell archivio ieeexplore.ieee.org )

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

Linguaggi e Paradigmi di Programmazione

Linguaggi e Paradigmi di Programmazione Linguaggi e Paradigmi di Programmazione Cos è un linguaggio Definizione 1 Un linguaggio è un insieme di parole e di metodi di combinazione delle parole usati e compresi da una comunità di persone. È una

Dettagli

RAPPRESENTAZIONE GRAFICA DEGLI ALGORITMI

RAPPRESENTAZIONE GRAFICA DEGLI ALGORITMI RAPPRESENTAZIONE GRAFICA DEGLI ALGORITMI Diagramma di flusso L algoritmo può essere rappresentato in vari modi, grafici o testuali. Uno dei metodi grafici più usati e conosciuti è il cosiddetto diagramma

Dettagli

Programmi. Algoritmi scritti in un linguaggio di programmazione

Programmi. Algoritmi scritti in un linguaggio di programmazione Programmi Algoritmi scritti in un linguaggio di programmazione Sistema operativo:programma supervisore che coordina tutte le operazioni del calcolatore Programmi applicativi esistenti Sistemi di videoscrittura

Dettagli

Automazione Industriale (scheduling+mms) scheduling+mms. adacher@dia.uniroma3.it

Automazione Industriale (scheduling+mms) scheduling+mms. adacher@dia.uniroma3.it Automazione Industriale (scheduling+mms) scheduling+mms adacher@dia.uniroma3.it Introduzione Sistemi e Modelli Lo studio e l analisi di sistemi tramite una rappresentazione astratta o una sua formalizzazione

Dettagli

ali e non funzionali con priorità (high, medium, low) Use Case con un Activity Diagram o uno State Diagr ram

ali e non funzionali con priorità (high, medium, low) Use Case con un Activity Diagram o uno State Diagr ram Riassunto deriva able 4 novembre Lista dei requisiti iti funziona ali e non funzionali con priorità (high, medium, low) Diagramma degli Use Case dell intero progetto Descrizione di almeno uno Use Case

Dettagli

COS È UN LINGUAGGIO? LINGUAGGI DI ALTO LIVELLO LA NOZIONE DI LINGUAGGIO LINGUAGGIO & PROGRAMMA

COS È UN LINGUAGGIO? LINGUAGGI DI ALTO LIVELLO LA NOZIONE DI LINGUAGGIO LINGUAGGIO & PROGRAMMA LINGUAGGI DI ALTO LIVELLO Si basano su una macchina virtuale le cui mosse non sono quelle della macchina hardware COS È UN LINGUAGGIO? Un linguaggio è un insieme di parole e di metodi di combinazione delle

Dettagli

Fasi di creazione di un programma

Fasi di creazione di un programma Fasi di creazione di un programma 1. Studio Preliminare 2. Analisi del Sistema 6. Manutenzione e Test 3. Progettazione 5. Implementazione 4. Sviluppo 41 Sviluppo di programmi Per la costruzione di un programma

Dettagli

Sistemi elettronici per la sicurezza dei veicoli: presente e futuro. Il ruolo della norma ISO 26262 per la Sicurezza Funzionale

Sistemi elettronici per la sicurezza dei veicoli: presente e futuro. Il ruolo della norma ISO 26262 per la Sicurezza Funzionale La Sicurezza Funzionale del Software Prof. Riccardo Sisto Ordinario di Sistemi di Elaborazione delle Informazioni Dipartimento di Automatica e Informatica Sicurezza Funzionale del Vari Aspetti Sicurezza

Dettagli

Ciclo di vita dimensionale

Ciclo di vita dimensionale aprile 2012 1 Il ciclo di vita dimensionale Business Dimensional Lifecycle, chiamato anche Kimball Lifecycle descrive il framework complessivo che lega le diverse attività dello sviluppo di un sistema

Dettagli

GRAFICO DI FUNZIONI GONIOMETRICHE

GRAFICO DI FUNZIONI GONIOMETRICHE GRAFICO DI FUNZIONI GONIOMETRICHE y = A* sen x ( ω + ϕ ) Prerequisiti e Strumenti Obiettivi Tempi di lavoro Problema stimolo Descrizione consegne Verifica e valutazione Prerequisiti Prerequisiti disciplinari:

Dettagli

Calcolatori Elettronici A a.a. 2008/2009

Calcolatori Elettronici A a.a. 2008/2009 Calcolatori Elettronici A a.a. 2008/2009 PRESTAZIONI DEL CALCOLATORE Massimiliano Giacomin Due dimensioni Tempo di risposta (o tempo di esecuzione): il tempo totale impiegato per eseguire un task (include

Dettagli

Un esempio di applicazione della programmazione lineare intera all ingegneria del software: stima del worst-case execution time di un programma

Un esempio di applicazione della programmazione lineare intera all ingegneria del software: stima del worst-case execution time di un programma Un esempio di applicazione della programmazione lineare intera all ingegneria del software: stima del worst-case execution time di un programma Corso di Ricerca Operativa per il Corso di Laurea Magistrale

Dettagli

Parte I. Prima Parte

Parte I. Prima Parte Parte I Prima Parte Capitolo 1 Introduzione generale 1.1 Il problema dell assegnazione Corsi-Borsisti Il problema dell assegnazione delle borse dei corsi ai vari studenti può essere riassunto nei punti

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

Application note. CalBatt NomoStor per i sistemi di accumulo di energia

Application note. CalBatt NomoStor per i sistemi di accumulo di energia 1. Panoramica Application note CalBatt NomoStor per i sistemi di accumulo di energia Gli Energy Management Systems () sono dispositivi atti al controllo dei flussi di energia dalle sorgenti di produzione

Dettagli

Informatica 3. Informatica 3. LEZIONE 10: Introduzione agli algoritmi e alle strutture dati. Lezione 10 - Modulo 1. Importanza delle strutture dati

Informatica 3. Informatica 3. LEZIONE 10: Introduzione agli algoritmi e alle strutture dati. Lezione 10 - Modulo 1. Importanza delle strutture dati Informatica 3 Informatica 3 LEZIONE 10: Introduzione agli algoritmi e alle strutture dati Modulo 1: Perchè studiare algoritmi e strutture dati Modulo 2: Definizioni di base Lezione 10 - Modulo 1 Perchè

Dettagli

SOMMARIO. Sistemi Self-Adaptive Motivazioni Ciclo di vita della cellula Paradigma. Future Work

SOMMARIO. Sistemi Self-Adaptive Motivazioni Ciclo di vita della cellula Paradigma. Future Work LEARNING FROM CELL LYFE- CYCLE: A SELF ADAPTIVE PARADIGM Antinisca Di Marco, Francesco Gallo, Paola Inverardi Università degli Studi dell'aquila Dipartimento di Informatica SOMMARIO Sistemi Self-Adaptive

Dettagli

Linguaggi di programmazione

Linguaggi di programmazione Linguaggi di programmazione Un calcolatore basato sul modello di von Neumann permette l esecuzione di un programma, cioè di una sequenza di istruzioni descritte nel linguaggio interpretabile dal calcolatore

Dettagli

Approccio stratificato

Approccio stratificato Approccio stratificato Il sistema operativo è suddiviso in strati (livelli), ciascuno costruito sopra quelli inferiori. Il livello più basso (strato 0) è l hardware, il più alto (strato N) è l interfaccia

Dettagli

Posizionamento ottimale di sensori per il monitoraggio degli inquinanti nelle reti idriche

Posizionamento ottimale di sensori per il monitoraggio degli inquinanti nelle reti idriche Posizionamento ottimale di sensori per il monitoraggio degli inquinanti nelle reti idriche Fulvio BOANO Politecnico di Torino Dipartimento di Ingegneria dell Ambiente, del Territorio e delle Infrastrutture

Dettagli

Metodologie di programmazione in Fortran 90

Metodologie di programmazione in Fortran 90 Metodologie di programmazione in Fortran 90 Ing. Luca De Santis DIS - Dipartimento di informatica e sistemistica Anno accademico 2007/2008 Fortran 90: Metodologie di programmazione DIS - Dipartimento di

Dettagli

Il calcolatore oggi : UN SISTEMA DI ELABORAZIONE

Il calcolatore oggi : UN SISTEMA DI ELABORAZIONE Il calcolatore oggi : UN SISTEMA DI ELABORAZIONE hardware Firmware, software memorizzato su chip di silicio Sistema Operativo venduto con l, comprende vari programmi di gestione del sistema Applicativo,

Dettagli

7. Architetture Software

7. Architetture Software 7. Architetture Software progettare la struttura Andrea Polini Ingegneria del Software Corso di Laurea in Informatica (Ingegneria del Software) 7. Architetture Software 1 / 20 Scopo della fase di design

Dettagli

Sommario. Analysis & design delle applicazioni parallele. Misura delle prestazioni parallele. Tecniche di partizionamento.

Sommario. Analysis & design delle applicazioni parallele. Misura delle prestazioni parallele. Tecniche di partizionamento. Sommario Analysis & design delle applicazioni parallele Misura delle prestazioni parallele Tecniche di partizionamento Comunicazioni Load balancing 2 Primi passi: analizzare il problema Prima di iniziare

Dettagli

Corso Sistemi Informativi Aziendali, Tecnologie dell Informazione applicate ai processi aziendali. Sistemi informativi aziendali

Corso Sistemi Informativi Aziendali, Tecnologie dell Informazione applicate ai processi aziendali. Sistemi informativi aziendali Corso Sistemi Informativi Aziendali,. Sistemi informativi aziendali di Simone Cavalli (simone.cavalli@unibg.it) Bergamo, Febbraio - Marzo 2009 Produzione (cenni) Pagina 2 Produzione La produzione, in termini

Dettagli

15 volte più veloce. per ridurre TCO e time-to-market

15 volte più veloce. per ridurre TCO e time-to-market 15 volte più veloce per ridurre TCO e time-to-market Instant Developer aumenta la produttività dei team di sviluppo riducendo il TCO e i tempi di realizzazione delle soluzioni software Instant Developer

Dettagli

IL SOFTWARE SECONDO LA NORMA UNI EN ISO 13849-1:2008 (IIA PARTE) 1

IL SOFTWARE SECONDO LA NORMA UNI EN ISO 13849-1:2008 (IIA PARTE) 1 Ernesto Cappelletti (ErnestoCappelletti) IL SOFTWARE SECONDO LA NORMA UNI EN ISO 13849-1:2008 (IIA PARTE) 6 April 2012 1. Requisiti per la scrittura del software secondo la norma UNI EN ISO 13849-1:2008

Dettagli

ISTITUTO TECNICO ECONOMICO MOSSOTTI

ISTITUTO TECNICO ECONOMICO MOSSOTTI CLASSE III INDIRIZZO S.I.A. UdA n. 1 Titolo: conoscenze di base Conoscenza delle caratteristiche dell informatica e degli strumenti utilizzati Informatica e sistemi di elaborazione Conoscenza delle caratteristiche

Dettagli

Specifiche dello sviluppo di un progetto software e indicazioni sulla documentazione e sulle modalità di esercizio delle prestazioni

Specifiche dello sviluppo di un progetto software e indicazioni sulla documentazione e sulle modalità di esercizio delle prestazioni Specifiche dello sviluppo di un progetto software e indicazioni sulla documentazione e sulle modalità di esercizio delle prestazioni Redatto dalla Commissione per l elettronica, l informatica e la telematica

Dettagli

INFORMATICA GENERALE. Prof Alberto Postiglione Dipartim. Scienze della Comunicazione Univ. Salerno. Università degli Studi di Salerno

INFORMATICA GENERALE. Prof Alberto Postiglione Dipartim. Scienze della Comunicazione Univ. Salerno. Università degli Studi di Salerno INFORMATICA GENERALE Prof. Alberto Postiglione Dipartimento Scienze della Comunicazione Università degli Studi di Salerno : Introduzione alla Programmazione Bibliografia 14 apr 2010 Dia 2 Curtin, (vecchie

Dettagli

e-dva - eni-depth Velocity Analysis

e-dva - eni-depth Velocity Analysis Lo scopo dell Analisi di Velocità di Migrazione (MVA) è quello di ottenere un modello della velocità nel sottosuolo che abbia dei tempi di riflessione compatibili con quelli osservati nei dati. Ciò significa

Dettagli

4. Operazioni aritmetiche con i numeri binari

4. Operazioni aritmetiche con i numeri binari I Numeri Binari 4. Operazioni aritmetiche con i numeri binari Contare con i numeri binari Prima di vedere quali operazioni possiamo effettuare con i numeri binari, iniziamo ad imparare a contare in binario:

Dettagli

FONDAMENTI di INFORMATICA L. Mezzalira

FONDAMENTI di INFORMATICA L. Mezzalira FONDAMENTI di INFORMATICA L. Mezzalira Possibili domande 1 --- Caratteristiche delle macchine tipiche dell informatica Componenti hardware del modello funzionale di sistema informatico Componenti software

Dettagli

Ottimizzazione Multi Obiettivo

Ottimizzazione Multi Obiettivo Ottimizzazione Multi Obiettivo 1 Ottimizzazione Multi Obiettivo I problemi affrontati fino ad ora erano caratterizzati da una unica (e ben definita) funzione obiettivo. I problemi di ottimizzazione reali

Dettagli

Introduzione agli Algoritmi Genetici Prof. Beatrice Lazzerini

Introduzione agli Algoritmi Genetici Prof. Beatrice Lazzerini Introduzione agli Algoritmi Genetici Prof. Beatrice Lazzerini Dipartimento di Ingegneria della Informazione Via Diotisalvi, 2 56122 PISA ALGORITMI GENETICI (GA) Sono usati per risolvere problemi di ricerca

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

Scheduling della CPU:

Scheduling della CPU: Coda dei processi pronti (ready( queue): Scheduling della CPU primo ultimo PCB i PCB j PCB k contiene i descrittori ( process control block, PCB) dei processi pronti. la strategia di gestione della ready

Dettagli

Attività 9. La città fangosa Minimal Spanning Trees

Attività 9. La città fangosa Minimal Spanning Trees Attività 9 La città fangosa Minimal Spanning Trees Sommario la nostra società ha molti collegamenti in rete: la rete telefonica, la rete energetica, la rete stradale. Per una rete in particolare, ci sono

Dettagli

La Metodologia adottata nel Corso

La Metodologia adottata nel Corso La Metodologia adottata nel Corso 1 Mission Statement + Glossario + Lista Funzionalià 3 Descrizione 6 Funzionalità 2 Schema 4 Schema 5 concettuale Logico EA Relazionale Codice Transazioni In PL/SQL Schema

Dettagli

TECNOLOGIE INFORMATICHE DELLA COMUNICAZIONE ORE SETTIMANALI 2 TIPO DI PROVA PER GIUDIZIO SOSPESO PROVA DI LABORATORIO

TECNOLOGIE INFORMATICHE DELLA COMUNICAZIONE ORE SETTIMANALI 2 TIPO DI PROVA PER GIUDIZIO SOSPESO PROVA DI LABORATORIO CLASSE DISCIPLINA MODULO Conoscenze Abilità e competenze Argomento 1 Concetti di base Argomento 2 Sistema di elaborazione Significato dei termini informazione, elaborazione, comunicazione, interfaccia,

Dettagli

ISTITUTO D ISTRUZIONE SUPERIORE "L. EINAUDI" ALBA ANNO SCOLASTICO 2015/2016

ISTITUTO D ISTRUZIONE SUPERIORE L. EINAUDI ALBA ANNO SCOLASTICO 2015/2016 ISTITUTO D ISTRUZIONE SUPERIORE "L. EINAUDI" ALBA ANNO SCOLASTICO 2015/2016 CLASSE 5 I Disciplina: Sistemi automatici Docenti: Linguanti Vincenzo Gasco Giovanni PROGETTAZIONE DIDATTICA ANNUALE COMPETENZE

Dettagli

Algoritmi di scheduling - Parte 2

Algoritmi di scheduling - Parte 2 Algoritmi di scheduling - Parte 2 Automazione I 12/11/2013 Vincenzo Suraci STRUTTURA DEL NUCLEO TEMATICO ALGORITMO DEADLINE MONOTONIC PRIORITY ORDERING (DMPO) ALGORITMO TIMELINE SCHEDULING (TS) SCHEDULING

Dettagli

ISTITUTO D ISTRUZIONE SUPERIORE "L. EINAUDI" ALBA

ISTITUTO D ISTRUZIONE SUPERIORE L. EINAUDI ALBA ISTITUTO D ISTRUZIONE SUPERIORE "L. EINAUDI" ALBA CLASSE 5H Docenti: Raviola Giovanni Moreni Riccardo Disciplina: Sistemi elettronici automaticih PROGETTAZIONE DIDATTICA ANNUALE COMPETENZE FINALI Al termine

Dettagli

Più processori uguale più velocità?

Più processori uguale più velocità? Più processori uguale più velocità? e un processore impiega per eseguire un programma un tempo T, un sistema formato da P processori dello stesso tipo esegue lo stesso programma in un tempo TP T / P? In

Dettagli

Applicazione di tecniche di Infinitesimal Perturbation Analysis alle reti di Petri ibride.

Applicazione di tecniche di Infinitesimal Perturbation Analysis alle reti di Petri ibride. Applicazione di tecniche di Infinitesimal Perturbation Analysis alle reti di Petri ibride. Relatori: A. Giua, C. Seatzu Reti di Petri ibride Analisi perturbativa infinitesimale Il simulatore HYPENS I sistemi

Dettagli

Tecniche di Simulazione: Introduzione. N. Del Buono:

Tecniche di Simulazione: Introduzione. N. Del Buono: Tecniche di Simulazione: Introduzione N. Del Buono: 2 Che cosa è la simulazione La SIMULAZIONE dovrebbe essere considerata una forma di COGNIZIONE (COGNIZIONE qualunque azione o processo per acquisire

Dettagli

PROGETTO EM.MA PRESIDIO

PROGETTO EM.MA PRESIDIO PROGETTO EM.MA PRESIDIO di PIACENZA Bentornati Il quadro di riferimento di matematica : INVALSI e TIMSS A CONFRONTO LE PROVE INVALSI Quadro di riferimento per la valutazione Quadro di riferimento per i

Dettagli

PASSAGGIO ALLA ISO 9000:2000 LA GESTIONE DELLE PICCOLE AZIENDE IN OTTICA VISION

PASSAGGIO ALLA ISO 9000:2000 LA GESTIONE DELLE PICCOLE AZIENDE IN OTTICA VISION PASSAGGIO ALLA ISO 9000:2000 LA GESTIONE DELLE PICCOLE AZIENDE IN OTTICA VISION PIETRO REMONTI 1 2 APPROCCIO BASATO SUI PROCESSI UN RISULTATO DESIDERATO È OTTENUTO IN MODO PIÙ EFFICACE SE RISORSE E ATTIVITÀ

Dettagli

fit-up), cioè ai problemi che si verificano all atto dell assemblaggio quando non si riescono a montare i diversi componenti del prodotto o quando il

fit-up), cioè ai problemi che si verificano all atto dell assemblaggio quando non si riescono a montare i diversi componenti del prodotto o quando il Abstract Nel presente lavoro di tesi è stata analizzata l importanza che riveste l assemblaggio meccanico nelle diverse fasi del processo produttivo, centrando l attenzione sulle fasi di progettazione

Dettagli

Ottimizazione vincolata

Ottimizazione vincolata Ottimizazione vincolata Ricordiamo alcuni risultati provati nella scheda sulla Teoria di Dini per una funzione F : R N+M R M di classe C 1 con (x 0, y 0 ) F 1 (a), a = (a 1,, a M ), punto in cui vale l

Dettagli

Titolo della tesi Testing Black Box di un Web Service : sperimentazione su di un servizio con stato

Titolo della tesi Testing Black Box di un Web Service : sperimentazione su di un servizio con stato tesi di laurea Titolo della tesi Testing Black Box di un Web Service : sperimentazione su di un servizio con stato Anno Accademico 2005/2006 relatore Ch.mo prof. Porfirio Tramontana candidato Giuseppe

Dettagli

Indice generale. OOA Analisi Orientata agli Oggetti. Introduzione. Analisi

Indice generale. OOA Analisi Orientata agli Oggetti. Introduzione. Analisi Indice generale OOA Analisi Orientata agli Oggetti Introduzione Analisi Metodi d' analisi Analisi funzionale Analisi del flusso dei dati Analisi delle informazioni Analisi Orientata agli Oggetti (OOA)

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

Page 1. Evoluzione. Intelligenza Artificiale. Algoritmi Genetici. Evoluzione. Evoluzione: nomenclatura. Corrispondenze natura-calcolo

Page 1. Evoluzione. Intelligenza Artificiale. Algoritmi Genetici. Evoluzione. Evoluzione: nomenclatura. Corrispondenze natura-calcolo Evoluzione In ogni popolazione si verificano delle mutazioni. Intelligenza Artificiale In un ambiente che varia, le mutazioni possono generare individui che meglio si adattano alle nuove condizioni. Questi

Dettagli

Trasformazione dei Processi in Progetti DIB 1

Trasformazione dei Processi in Progetti DIB 1 Trasformazione dei Processi in Progetti DIB 1 Generalità DIB 2 Progetto PROGETTO: esecuzione di un insieme di attività in un tempo e con risorse limitati per raggiungere uno specifico scopo. A causa dell

Dettagli

Piano di gestione della qualità

Piano di gestione della qualità Piano di gestione della qualità Pianificazione della qualità Politica ed obiettivi della qualità Riferimento ad un eventuale modello di qualità adottato Controllo della qualità Procedure di controllo.

Dettagli

Scenario di Progettazione

Scenario di Progettazione Appunti del 3 Ottobre 2008 Prof. Mario Bochicchio SCENARIO DI PROGETTAZIONE Scenario di Progettazione Il Committente mette a disposizione delle risorse e propone dei documenti che solitamente rappresentano

Dettagli

IL SISTEMA DI DELEGHE E PROCURE una tutela per la società e i suoi amministratori. Milano 18 novembre 2014. A cura di: Luca Ghisletti

IL SISTEMA DI DELEGHE E PROCURE una tutela per la società e i suoi amministratori. Milano 18 novembre 2014. A cura di: Luca Ghisletti IL SISTEMA DI DELEGHE E PROCURE una tutela per la società e i suoi amministratori Milano 18 novembre 2014 A cura di: Luca Ghisletti Compliance Aziendale Compliance è la conformità delle attività aziendali

Dettagli

GHPPEditor è un software realizzato per produrre in modo rapido e guidato un part program per controlli numerici Heidenhain.

GHPPEditor è un software realizzato per produrre in modo rapido e guidato un part program per controlli numerici Heidenhain. *+33(GLWRU GHPPEditor è un software realizzato per produrre in modo rapido e guidato un part program per controlli numerici Heidenhain. Il programma si basa su un architettura di tasti funzionali presenti

Dettagli

SCENARIO. Personas. 2010 ALICE Lucchin / BENITO Condemi de Felice. All rights reserved.

SCENARIO. Personas. 2010 ALICE Lucchin / BENITO Condemi de Felice. All rights reserved. SCENARIO Personas SCENARIO È una delle tecniche che aiuta il designer a far emergere le esigente dell utente e il contesto d uso. Gli scenari hanno un ambientazione, attori (personas) con degli obiettivi,

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T2 1 Sistema software 1 Prerequisiti Utilizzo elementare di un computer Significato elementare di programma e dati Sistema operativo 2 1 Introduzione In questa Unità studiamo

Dettagli

Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione.

Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione. Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione. Compito fondamentale di un S.O. è infatti la gestione dell

Dettagli

I WEBQUEST SCIENZE DELLA FORMAZIONE PRIMARIA UNIVERSITÀ DEGLI STUDI DI PALERMO. Palermo 9 novembre 2011

I WEBQUEST SCIENZE DELLA FORMAZIONE PRIMARIA UNIVERSITÀ DEGLI STUDI DI PALERMO. Palermo 9 novembre 2011 I WEBQUEST SCIENZE DELLA FORMAZIONE PRIMARIA Palermo 9 novembre 2011 UNIVERSITÀ DEGLI STUDI DI PALERMO Webquest Attività di indagine guidata sul Web, che richiede la partecipazione attiva degli studenti,

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

Università degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica. Ingegneria del Software.

Università degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica. Ingegneria del Software. Università degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica Ingegneria del Software La fase di Test Giulio Destri Ing. del Software: Test - 1 Scopo del modulo Definire

Dettagli

Onestà di un dado. Relazione sperimentale

Onestà di un dado. Relazione sperimentale Onestà di un dado Relazione sperimentale La valutazione dell onesta di un qualunque dado a n facce è svolta mediante l analisi statistica di un set di tiri del medesimo ed il confronto con i valori teorici.

Dettagli

Archivi e database. Prof. Michele Batocchi A.S. 2013/2014

Archivi e database. Prof. Michele Batocchi A.S. 2013/2014 Archivi e database Prof. Michele Batocchi A.S. 2013/2014 Introduzione L esigenza di archiviare (conservare documenti, immagini, ricordi, ecc.) è un attività senza tempo che è insita nell animo umano Primi

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T2 3-Compilatori e interpreti 1 Prerequisiti Principi di programmazione Utilizzo di un compilatore 2 1 Introduzione Una volta progettato un algoritmo codificato in un linguaggio

Dettagli

I Problemi e la loro Soluzione. Il Concetto Intuitivo di Calcolatore. Risoluzione di un Problema. Esempio

I Problemi e la loro Soluzione. Il Concetto Intuitivo di Calcolatore. Risoluzione di un Problema. Esempio Il Concetto Intuitivo di Calcolatore Fondamenti di Informatica A Ingegneria Gestionale Università degli Studi di Brescia Docente: Prof. Alfonso Gerevini I Problemi e la loro Soluzione Problema: classe

Dettagli

Artifact Centric Business Processes (I)

Artifact Centric Business Processes (I) Introduzione Autore: Docente: Prof. Giuseppe De Giacomo Dipartimento di Informatica e Sistemistica SAPIENZA - Universitá di Roma 16 Novembre 2008 Una visione assiomatica La modellazione dei processi di

Dettagli

Informazione e dato. Gabriella Trucco

Informazione e dato. Gabriella Trucco Informazione e dato Gabriella Trucco Cos è l informatica? Informatica? Trattamento automatico delle informazioni INFORMATICA Informazione Informazione: Qualcosa che quando viene fornito dissipa un dubbio,

Dettagli

Tecniche di riconoscimento statistico

Tecniche di riconoscimento statistico On AIR s.r.l. Tecniche di riconoscimento statistico Applicazioni alla lettura automatica di testi (OCR) Parte 4 Reti neurali per la classificazione Ennio Ottaviani On AIR srl ennio.ottaviani@onairweb.com

Dettagli

Capitolo 13: L offerta dell impresa e il surplus del produttore

Capitolo 13: L offerta dell impresa e il surplus del produttore Capitolo 13: L offerta dell impresa e il surplus del produttore 13.1: Introduzione L analisi dei due capitoli precedenti ha fornito tutti i concetti necessari per affrontare l argomento di questo capitolo:

Dettagli

EVOLUZIONE DEI LINGUAGGI DI ALTO LIVELLO

EVOLUZIONE DEI LINGUAGGI DI ALTO LIVELLO EVOLUZIONE DEI LINGUAGGI DI ALTO LIVELLO Linguaggi di programmazione classificati in base alle loro caratteristiche fondamentali. Linguaggio macchina, binario e fortemente legato all architettura. Linguaggi

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

Regressione non lineare con un modello neurale feedforward

Regressione non lineare con un modello neurale feedforward Reti Neurali Artificiali per lo studio del mercato Università degli studi di Brescia - Dipartimento di metodi quantitativi Marco Sandri (sandri.marco@gmail.com) Regressione non lineare con un modello neurale

Dettagli

Ottimizzazione delle interrogazioni (parte I)

Ottimizzazione delle interrogazioni (parte I) Ottimizzazione delle interrogazioni I Basi di Dati / Complementi di Basi di Dati 1 Ottimizzazione delle interrogazioni (parte I) Angelo Montanari Dipartimento di Matematica e Informatica Università di

Dettagli

Corso di PHP. Prerequisiti. 1 - Introduzione

Corso di PHP. Prerequisiti. 1 - Introduzione Corso di PHP 1 - Introduzione 1 Prerequisiti Conoscenza HTML Principi di programmazione web Saper progettare un algoritmo Saper usare un sistema operativo Compilazione, link, esecuzione di programmi Conoscere

Dettagli

PowerSchedo. Un sistema di supporto alla decisione nel settore dell'oil&gas. For further information: www.mbigroup.it

PowerSchedo. Un sistema di supporto alla decisione nel settore dell'oil&gas. For further information: www.mbigroup.it PowerSchedo Un sistema di supporto alla decisione nel settore dell'oil&gas For further information: Introduzione PowerSchedO è uno strumento software di supporto alle decisioni per problemi nel settore

Dettagli

Reti sequenziali sincrone

Reti sequenziali sincrone Reti sequenziali sincrone Un approccio strutturato (7.1-7.3, 7.5-7.6) Modelli di reti sincrone Analisi di reti sincrone Descrizioni e sintesi di reti sequenziali sincrone Sintesi con flip-flop D, DE, T

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

Volumi di riferimento

Volumi di riferimento Simulazione seconda prova Esame di Stato Gestione di un centro agroalimentare all ingrosso Parte prima) Un nuovo centro agroalimentare all'ingrosso intende realizzare una base di dati per l'attività di

Dettagli

Come ragiona il computer. Problemi e algoritmi

Come ragiona il computer. Problemi e algoritmi Come ragiona il computer Problemi e algoritmi Il problema Abbiamo un problema quando ci poniamo un obiettivo da raggiungere e per raggiungerlo dobbiamo mettere a punto una strategia Problema Strategia

Dettagli

Lezione 2. Il modello entità relazione

Lezione 2. Il modello entità relazione Lezione 2 Il modello entità relazione Pag.1 Introduzione alla progettazione delle basi di dati 1. Analisi dei requisiti Quali sono le entità e le relazioni dell organizzazione? Quali informazioni su queste

Dettagli

Raggruppamenti Conti Movimenti

Raggruppamenti Conti Movimenti ESERCITAZIONE PIANO DEI CONTI Vogliamo creare un programma che ci permetta di gestire, in un DB, il Piano dei conti di un azienda. Nel corso della gestione d esercizio, si potranno registrare gli articoli

Dettagli

Alla ricerca dell algoritmo. Scoprire e formalizzare algoritmi.

Alla ricerca dell algoritmo. Scoprire e formalizzare algoritmi. PROGETTO SeT Il ciclo dell informazione Alla ricerca dell algoritmo. Scoprire e formalizzare algoritmi. Scuola media Istituto comprensivo di Fagagna (Udine) Insegnanti referenti: Guerra Annalja, Gianquinto

Dettagli

Database. Si ringrazia Marco Bertini per le slides

Database. Si ringrazia Marco Bertini per le slides Database Si ringrazia Marco Bertini per le slides Obiettivo Concetti base dati e informazioni cos è un database terminologia Modelli organizzativi flat file database relazionali Principi e linee guida

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

Procedura di elaborazione dei dati di un questionario attraverso un sistema di lettura ottica.

Procedura di elaborazione dei dati di un questionario attraverso un sistema di lettura ottica. Procedura di elaborazione dei dati di un questionario attraverso un sistema di lettura ottica. Indice 1 INTRODUZIONE... 3 2 PREDISPOSIZIONE DEI DOCUMENTI... 4 3 LETTURA OTTICA... 5 4 CREAZIONE DI REPORT...

Dettagli

L applicazione dei vettori di collaudo

L applicazione dei vettori di collaudo L applicazione dei vettori di collaudo Fulvio Corno Maurizio Rebaudengo Matteo Sonza Reorda Politecnico di Torino Dipartimento di Automatica e Informatica Sommario Introduzione Gli ATE I programmi di collaudo.

Dettagli

Tirocinio per la Laurea Triennale

Tirocinio per la Laurea Triennale Tirocinio per la Laurea Triennale Studente: Filippo Dattola Studio di un prototipo di infrastruttura virtuale di analisi parallela interattiva L'obiettivo del tirocinio è stato quello di studiare un prototipo

Dettagli

Software per Helpdesk

Software per Helpdesk Software per Helpdesk Padova - maggio 2010 Antonio Dalvit - www.antoniodalvit.com Cosa è un helpdesk? Un help desk è un servizio che fornisce informazioni e assistenza ad utenti che hanno problemi nella

Dettagli

Scheduling della CPU. Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux

Scheduling della CPU. Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux Scheduling della CPU Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux Sistemi multiprocessori Fin qui si sono trattati i problemi di scheduling su singola

Dettagli

Fondamenti di Informatica. Docenti: Prof. Luisa Gargano Prof. Adele Rescigno BENVENUTI!

Fondamenti di Informatica. Docenti: Prof. Luisa Gargano Prof. Adele Rescigno BENVENUTI! Fondamenti di Informatica Docenti: Prof. Luisa Gargano Prof. Adele Rescigno BENVENUTI! Finalità: Fornire gli elementi di base dei concetti che sono di fondamento all'informatica Informazioni Pratiche ORARIO:

Dettagli

DI D AGRA R MM M I M A BLOCC C H C I TEORI R A E D D E SERC R I C ZI 1 1

DI D AGRA R MM M I M A BLOCC C H C I TEORI R A E D D E SERC R I C ZI 1 1 DIAGRAMMI A BLOCCHI TEORIA ED ESERCIZI 1 1 Il linguaggio dei diagrammi a blocchi è un possibile formalismo per la descrizione di algoritmi Il diagramma a blocchi, o flowchart, è una rappresentazione grafica

Dettagli

Lo scheduling. Tipici schedulatori

Lo scheduling. Tipici schedulatori Lo scheduling Un processo durante la sua evoluzione è o running o in attesa di un evento. Nel secondo caso trattasi della disponibilità di una risorsa (CPU, I/O, struttura dati, ecc.) di cui il processo

Dettagli

Introduzione all Information Retrieval

Introduzione all Information Retrieval Introduzione all Information Retrieval Argomenti della lezione Definizione di Information Retrieval. Information Retrieval vs Data Retrieval. Indicizzazione di collezioni e ricerca. Modelli per Information

Dettagli

Appunti di Interazione Uomo Macchina Principi di progettazione per il web I wireframe

Appunti di Interazione Uomo Macchina Principi di progettazione per il web I wireframe Appunti di Interazione Uomo Macchina Principi di progettazione per il web I wireframe Luca Pulina 1 Introduzione Nell ambito della progettazione di siti web, i wireframe sono un insieme di documenti che

Dettagli

Sistemi di Automazione Industriale

Sistemi di Automazione Industriale Introduzione ai PLC Sistemi di Automazione Industriale Ridurre e/o eliminare il ruolo dell operatore umano Ogni sistema di automazione prevede: Sistema Controllato; è un generatore di eventi non prevedibili

Dettagli