| SISTEMI EMBEDDED E REAL TIME
(obiettivi)
OBIETTIVI FORMATIVI: L'insegnamento intende fornire allo studente un quadro aggiornato dell'attuale tecnologia dei sistemi embedded e real-time. I sistemi embedded sono i calcolatori elettronici integrati in ormai tutti gli apparati elettronici che eseguono in modo specifico ed esclusivo il programma impostato dal progettista dell'apparato. I sistemi real-time sono i sistemi di calcolo (intesi sia come hardware che come software) progettati per garantire non solo la correttezza delle operazioni svolte, ma anche la corretta temporizzazione dei risultati prodotti dal sistema. Questo corso discute entrambi i tipi di sistemi perché la maggior parte dei sistemi embedded sono anche sistemi real-time, e viceversa. Con riferimento alle linee guida riportate nel documento: "ACM/IEEE-CS- Computer Science Curricula 2013" (www.acm.org/education/CS2013-final-report.pdf), il corso contribuisce a coprire le seguenti aree e relativi obiettivi: Operating Systems (OS): Scheduling and Dispatch; Resource Allocation and Scheduling; Real-Time and Embedded Systems CONOSCENZA E CAPACITÀ DI COMPRENSIONE: Al termine lo studente avrà acquisito una comprensione approfondita delle problematiche e delle tecnologie relative allo sviluppo dei sistemi embedded e real-time. In particolare, lo studente avrà compreso i concetti fondamentali ed i risultati principali della teoria della schedulazione real-time, che consente di certificare la corretta progettazione di un sistema real-time "safety-critical"; avrà compreso le principali problematiche e soluzioni tecnologiche dei sistemi operativi adatti all'esecuzione di applicazioni real-time; avrà compreso le problematiche relativo allo sviluppo del software di un sistema embedded "bare metal" interfacciato direttamente ai dispositivi hardware del sistema, con particolare riferimento ai sistemi di supporto all'esecuzione delle applicazioni real-time. CAPACITÀ DI APPLICARE CONOSCENZA E COMPRENSIONE Al termine del corso lo studente sarà in grado di scrivere un ambiente di esecuzione real-time "bare metal" per sistemi embedded basati su architettura ARM, a partire dalla sola documentazione rilasciata dal costruttore dell'hardware. Lo studente sarà inoltre in grado di modellare una collezione di job reali con specifici compiti e scadenze temporali tramite il modello a task periodici, dimensionare opportunamente il modello di sistema real-time che dovrà garantire l'esecuzione dei job ed il rispetto delle scadenze, selezionare opportunamente gli algoritmi di schedulazione dei task e di allocazione delle risorse condivise, e dimostrare formalmente che la progettazione effettuata è corretta, nel senso che tutte le scadenze dei job saranno rispettate anche nel peggior caso che possa verificarsi.
|