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
Queste informazioni sono destinate esclusivamente agli studenti e alle studentesse già iscritti a questo corso.Se sei un nuovo studente interessato all'immatricolazione, trovi le informazioni sul percorso di studi alla pagina del corso:
Laurea interateneo in Ingegneria dei sistemi medicali per la persona - Immatricolazione dal 2025/2026Il 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 |
|---|
2° Anno Attivato nell'A.A. 2024/2025
| Insegnamenti | Crediti | TAF | SSD |
|---|
3° Anno Attivato nell'A.A. 2025/2026
| Insegnamenti | Crediti | TAF | SSD |
|---|
1 insegnamento a scelta| Insegnamenti | Crediti | TAF | SSD |
|---|
| Insegnamenti | Crediti | TAF | SSD |
|---|
| Insegnamenti | Crediti | TAF | SSD |
|---|
1 insegnamento a scelta| Insegnamenti | Crediti | TAF | SSD |
|---|
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.
Sistemi operativi (2025/2026)
Codice insegnamento
4S009887
Crediti
6
Coordinatore
Non ancora assegnato
Lingua di erogazione
Italiano
Settore Scientifico Disciplinare (SSD)
ING-INF/05 - SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI
Corsi Singoli
Autorizzato
L'insegnamento è organizzato come segue:
Teoria
Crediti
4
Periodo
I semestre
Docenti
Graziano Pravadelli
Laboratorio
Crediti
2
Periodo
I semestre
Docenti
Samuele Germiniani
Obiettivi di apprendimento
Il corso si propone di introdurre i principi dei sistemi operativi, con particolare riguardo ai concetti relativi alle architetture software di un sistema operativo, alla gestione e sincronizzazione dei processi e alla gestione delle risorse del sistema di calcolo. Al termine del corso gli studenti dovranno dimostrare di avere:
- Conoscenze e capacità di comprensione relative all'organizzazione interna, il funzionamento e i servizi di un sistema operativo. In particolare, avranno compreso: le principali funzionalità di un sistema operativo nei confronti di utenti e programmi applicativi, le strategie con cui il sistema operativo gestisce le risorse di un calcolatore, e le tecniche impiegate per implementare le componenti in cui è suddiviso un sistema operativo.
- Capacità di applicare le conoscenze acquisite per: sviluppare applicazioni con la consapevolezza di come il sistema operativo gestisce i processi, sviluppare applicazioni che utilizzano le primitive messe a disposizione dal sistema operativo, e sviluppare e modificare componenti di un sistema operativo.
- Capacità di saper valutare autonomamente vantaggi e svantaggi di differenti scelte progettuali nell'ambito dei servizi offerti da un sistema operativo.
- Capacità di realizzare un progetto laboratoriale di gruppo e di presentarne i relativi risultati motivando le scelte effettuate con appropriatezza di linguaggio.
- Capacità di sviluppare le competenze necessarie per proseguire nello studio dei sistemi operativi, affrontando tematiche avanzate relative ai sistemi distribuiti, real-time ed embedded.
Programma
Teoria
---------
* Introduzione: Struttura e funzioni di un sistema operativo.
* Gestione dei Processi: Immagine in memoria e stati dei processi. Cambiamento di contesto. Operazioni sui processi. Cooperazione e comunicazione fra processi.
* Scheduling: Scheduling a lungo, medio e breve termine. Scheduling della CPU con e senza prelazione.
* Sincronizzazione fra processi: Consistenza dei dati. Sezioni critiche. Schemi e costrutti di sincronizzazione.
* Deadlock: Condizioni per l'innesco di un deadlock. Tecniche di prevenzione, rilevazione e ripristino.
* Gestione della memoria principale: Indirizzamento logico e fisico, e binding degli indirizzi. Tecniche di allocazione della memoria. Gestione della memoria virtuale.
* Gestione della memoria secondaria: Dispositivi di memorizzazione. File system.
Laboratorio:
------------
* Chiamate di sistema per la gestione dei processi e delle thread
* Chiamate di sistema per la comunicazione tra processi
* Chiamate di sistema per la sincronizzazione tra processi
* Chiamate di sistema per la condivisione della memoria tra processi
Modalità di verifica dell'apprendimento
L'esame è composto da due prove, una di teoria e una di laboratorio. Non sono previste prove intermedie.
L’esame è il medesimo sia per gli studenti frequentanti sia per gli studenti non frequentanti.
Teoria
---------
L'esame della parte di teoria consiste in una prova scritta della durata di 2 ore, contenente solitamente 4 quesiti di cui, di norma, 2 domande a risposta aperta e 2 esercizi.
Laboratorio
-----------------
L'esame della parte di laboratorio consiste nella risoluzione di esercizi di programmazione al calcolatore secondo le specifiche fornite dal docente. Lo studente dovrà commentare le scelte progettuali effettuate durante una successiva discussione orale.