Studiare
In questa sezione è possibile reperire le informazioni riguardanti l'organizzazione pratica del corso, lo svolgimento delle attività didattiche, le opportunità formative e i contatti utili durante tutto il percorso di studi, fino al conseguimento del titolo finale.
Piano Didattico
Il piano didattico è l'elenco degli insegnamenti e delle altre attività formative che devono essere sostenute nel corso della propria carriera universitaria.
Selezionare il piano didattico in base all'anno accademico di iscrizione.
1° Anno
Insegnamenti | Crediti | TAF | SSD |
---|
Compulsory activities for Embedded & Iot Systems
Compulsory activities for Smart Systems & Data Analytics
2° Anno Attivato nell'A.A. 2023/2024
Insegnamenti | Crediti | TAF | SSD |
---|
Compulsory activities for Embedded & Iot Systems
Compulsory activities for Robotics Systems
Compulsory activities for Smart Systems & Data Analytics
Insegnamenti | Crediti | TAF | SSD |
---|
Compulsory activities for Embedded & Iot Systems
Compulsory activities for Smart Systems & Data Analytics
Insegnamenti | Crediti | TAF | SSD |
---|
Compulsory activities for Embedded & Iot Systems
Compulsory activities for Robotics Systems
Compulsory activities for Smart Systems & Data Analytics
Insegnamenti | Crediti | TAF | SSD |
---|
3 modules among the following (Computer vision and Human computer interaction 1st year only; Advanced computer architectures 2nd year only; the other courses both 1st and 2nd year). Year 2023/24: Robot Programming and Control not activated
Legenda | Tipo Attività Formativa (TAF)
TAF (Tipologia Attività Formativa) Tutti gli insegnamenti e le attività sono classificate in diversi tipi di attività formativa, indicati da una lettera.
Embedded operating systems (2022/2023)
Codice insegnamento
4S009005
Docente
Coordinatore
Crediti
6
Lingua di erogazione
Inglese
Settore Scientifico Disciplinare (SSD)
ING-INF/05 - SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI
Periodo
Secondo semestre dal 6 mar 2023 al 16 giu 2023.
Obiettivi di apprendimento
Il corso si propone di formare gli studenti sugli aspetti teorici e implementativi avanzati dei sistemi operativi embedded, in uno scenario distribuito e real time. L’obiettivo principale del corso è quindi quello di evidenziare le principali differenze tra sistemi operativi convenzionali e sistemi operativi embedded nell’ambito della gestione di processi, memoria e file system, tenendo conto dei vincoli tipici di un sistema embedded e della interazione di quest’ultimo con l’ambiente esterno. A completamento del corso, gli studenti dovranno dimostrare di avere acquisito le conoscenze fondamentali per comprendere l'organizzazione interna, il funzionamento e i servizi dei sistemi operativi embedded. In particolare, avranno compreso: i) le differenze tra un sistema operativo convenzionale e un sistema operativo embedded in uno scenario distribuito e real-time; ii) le strategie con cui i sistemi operativi embedded gestiscono le risorse del sistema di calcolo su cui vengono eseguiti; iii) i campi di applicazione dei sistemi operativi embedded. Queste conoscenze consentiranno agli studenti di: i) sviluppare programmi con la consapevolezza di come un sistema operativo embedded gestisce i processi; ii) sviluppare applicazioni che utilizzano le primitive (chiamate a funzioni di sistema) messe a disposizione da particolari categorie di sistemi operativi embedded; iii) sviluppare e modificare componenti di un sistema operativo embedded. Al termine del corso gli studenti avranno acquisito la capacità di valutare autonomamente vantaggi e svantaggi di differenti scelte progettuali nell'ambito dei servizi offerti da un sistema operativo embedded, anche in ambito distribuito e real-time. Inoltre, saranno in grado di: i) realizzare un progetto laboratoriale di gruppo e di presentarne i relativi risultati motivando le scelte effettuate con appropriatezza di linguaggio: ii) proseguire autonomamente lo studio e la ricerca nell'ambito dei sistemi operativi distribuiti, embedded e real time, affrontando tematiche avanzate sia in ambito industriale che in ambito scientifico.
Prerequisiti e nozioni di base
Per poter apprendere al meglio gli argomenti trattati nel corso è necessario aver acquisito conoscenze e competenze relative a:
- Sistemi operativi
Programma
1- Modelli di sistemi embedded.
2- Sistemi operativi real time: principi di progettazione, scheduling dei task, protocollo di accesso alle risorse
3- Sincronizzazione in ambiente distribuito
4- Casi di studio
Modalità didattiche
Il corso è organizzato in lezioni frontali, esercitazioni e attività di autovalutazione tramite l'uso di questionari online.
Sono previste inoltre esercitazioni pratiche al calcolatore.
Modalità di verifica dell'apprendimento
L'esame consiste in due parti:
- una prova scritta contenente domande ed esercizi;
- la presentazione di un approfondimento relativo a un sistema operativo embedded a propria scelta
E' possibile, ma non obbligatorio, realizzare un progetto pratico (a gruppi di 2/3 persone) che può consistere in:
- implementazione/modifica di una o più funzionalità di un sistema operativo embedded
- analisi, valutazione e presentazione di nuove tecnologie nell'ambito di sistemi operativi embedded.
In caso di restrizioni legate al COVID la modalità d'esame potrebbe essere variata in accordo con chi segue il corso.
Criteri di valutazione
Per superare l'esame gli studenti dovranno dimostrare di:
- aver compreso i principi alla base del funzionamento di un sistema operativo embedded e real-time
- essere in grado di esporre le proprie argomentazioni in modo preciso e organico senza divagazioni
- saper applicare le conoscenze acquisite per risolvere problemi applicativi presentati sotto forma di esercizi, domande e progetti.
Criteri di composizione del voto finale
La prova scritta è superata con un voto maggiore o uguale a 18/30 e permette di ottenere un voto massimo pari a 30/30.
Il progetto permette di ottenere al massimo 4/30 punti da sommare al voto dello scritto.
Lingua dell'esame
English