Salta al contenuto principale

Progetto e sviluppo di sistemi in tempo reale

I sistemi in tempo reale sono quei sistemi di elaborazione soggetti ad un "doppio" concetto di correttezza: logica (il sistema produce il risultato atteso) e temporale (il risultato è prodotto in tempo). Essi sono chiamati a rispettare stringenti vincoli temporali (deadline) in quanto devono interagire continuamente (in tempo reale) con l’ambiente circostante, al fine di controllare le dinamiche di un apparato o segnalare e gestire eventi significativi entro un tempo prestabilito. Ne sono un esempio i sistemi di controllo di veicoli, di aeromobili, di robot, e i sistemi di automazione industriale.

Il corso fornisce le conoscenze di base sui sistemi in tempo reale, sulla schedulazione di task real-time, sulla gestione delle risorse, sulle reti di calcolatori e sui sistemi operativi adottati in ambito industriale. Fornisce inoltre le competenze necessarie alla progettazione, il dimensionamento e lo sviluppo di sistemi in tempo reale. Le esercitazioni consistono in applicazioni di programmazione concorrente con task real-time sviluppate in ambiente LINUX real-time (patch RTAI).

Indice delle lezioni
Lezione 1 - Sistemi in tempo reale e prevedibilità
Lezione 2 - Scheduling: generalità
Lezione 3 - Scheduling di task real-time (parte I)
Lezione 4 - Scheduling di task real-time (parte II)
Lezione 5 - RTAI e gestione dei task
Lezione 6 - Gestione delle risorse
Lezione 7 - Interprocessor communication in RTAI
Lezione 8 - Server aperiodici
Lezione 9 - Gestione dei sovraccarichi
Lezione 10 - Comunicazione real-time
Lezione 11 - WCET: Tecniche e strumenti di misura
Lezione 12 - Mixed Criticality Systems

Ente erogatore

Università Federico II - Napoli

Lingua del Corso