Programmazione dei Sistemi Avionici - Struttura del corso

Corso di Programmazione dei Sistemi Avionici
Ingegneria dei Sistemi Aerospaziali
A. A. 2016- 2017
Programmazione dei Sistemi Avionici
Prof. Ing. Michele Ruta
1 di 12
Introduzione
M. Ruta
Conoscenze preliminari
• Principi della programmazione strutturata.
• Algoritmi e strutture dati.
• Principi della programmazione orientata agli oggetti.
2 di 12
Introduzione
M. Ruta
Obiettivi
•Corso di Teoria
Studio dell’architettura tipica di un Sistema Operativo
interfacce dei sistemi avionici
struttura del nucleo
politiche di gestione delle risorse
gestione dei processi per l’avionica
analisi della concorrenza
comunicazione e sincronizzazione
blocco critico
sistemi real time avionici
3 di 12
Introduzione
M. Ruta
Obiettivi
•Corso di Esercitazioni
Addestramento all’utilizzo del S.O. LINUX
caratteristiche generali del sistema
struttura del nucleo
sistema grafico
licenze
confronto con Microsoft Windows
comandi di SHELL con esempi concreti di utilizzo al calcolatore
4 di 12
Introduzione
M. Ruta
Struttura del corso
•
I Parte: struttura e funzionamento generale di un S.O.
•
II Parte: attività computazionali, nucleo e gestione delle risorse
•
III Parte: gestione dei processi
•
IV Parte: sistemi real-time
•
V Parte: esercitazioni in aula
•
VI Parte: esercitazioni in laboratorio
5 di 12
Introduzione
M. Ruta
Parte I/II
I Parte: struttura e funzionamento generale di un S.O. per l’avionica
•
Storia ed evoluzione dei S.O.;
•
Interfacce;
•
Modelli del nucleo.
II Parte: attività computazionali, nucleo e gestione delle risorse
•
Job, job-step, task;
•
Stati di una attività computazionale;
•
Nucleo e sue componenti;
•
Politiche di gestione delle risorse.
6 di 12
Introduzione
M. Ruta
Parte III/IV
III Parte: gestione dei processi dei sistemi avionici
•
Concorrenza di processi;
•
Cooperazione tra processi;
•
Blocco critico;
•
Comunicazione interprocesso.
IV Parte: sistemi real-time avionici
•
Generalità sui sistemi real-time e relativo scheduling;
•
Cenni all’architettura di FreeRTOS
7 di 12
Introduzione
M. Ruta
Parte V
V Parte: esercitazioni in aula
•
Generalità sui S.O. UNIX-like;
•
Architettura generale di LINUX;
•
Sistema grafico X-Window;
•
Microsoft Windows vs LINUX;
•
GNU GPL, garanzia del diritto d’autore per il software liberamente
distribuibile;
•
BASH Shell.
8 di 12
Introduzione
M. Ruta
Parte VI
VI Parte: esercitazioni in laboratorio
•
Comandi di uso generale (pwd, cd, ls, cp, mv…);
•
Comandi di help;
•
Comandi per visualizzare, scrivere e manipolare file testuali;
•
Ridirezione dell’input, dell’output e/o dell’error standard;
•
Pipeline;
•
Gestione dei processi;
•
Comandi informativi;
•
Comandi di filtering dell’output;
•
Gestione degli utenti;
•
Link e permessi: organizzazione del file system;
•
Script di shell (cenni).
9 di 12
Introduzione
M. Ruta
Modalità d’esame
• Prova scritta
–
–
10 di 12
Domande teoriche ed esercizi pratici sull’architettura dei S.O. e su
LINUX.
Gli studenti che abbiano superato la prova scritta con una votazione
uguale o superiore a 18/30 possono verbalizzare l’esame.
Introduzione
M. Ruta
Testi consigliati
Testi di riferimento principali:
• A. Silberschatz, P.B. Galvin, G. Gagne, Sistemi Operativi con esempi
per l’uso in Java, Apogeo, giugno 2005.
Ulteriori testi suggeriti:
• P. Ancillotti, M. Boari, A. Ciampolini, G. Lipari, Sistemi operativi,
McGraw-Hill, luglio 2004.
• W. Stallings, Sistemi Operativi, Jackson libri, 2000.
• D.P. Bovet, M. Cesati, Understanding the LINUX kernel - Third
Edition, O’Reilly, Novembre 2005.
• David I. Schwartz, Introduzione a UNIX, Apogeo Education, 2001.
11 di 12
Introduzione
M. Ruta
Materiale didattico
• Appunti-dispense del corso, reperibili sul sito:
http://sisinflab.poliba.it/ruta/
• Contatto:
– e-mail:
• [email protected]
• Orario di ricevimento:
– Martedì ore 16.30-17.30 presso SisInfLab
12 di 12
Introduzione
M. Ruta