operating-systems
operating-systems copied to clipboard
Sistemi Operativi I - 2023-24 (I Canale)
News | Informazioni Generali | Syllabus | Materiale Didattico | Anni Precedenti
News
-
III Appello Scritto del 4/6/2024
La prova d'esame scritta relativa al III appello dell'a.a. 2023-24 si svolgerà martedì 4/6/2024 dalle ore 13:30 alle ore 14:30 presso l'Aula 15 dei laboratori situati in via Tiburtina, 205 (mappa). Tutti gli studenti interessati a partecipare alla prova dovranno obbligatoriamente registrarsi sull'apposito verbale Infostud (928154). Le registrazioni resteranno aperte dal 30/4/2024 al 31/5/2024.
[Qualora, alla chiusura delle registrazioni, il numero di iscritti risultasse maggiore della capienza dell'aula, la prova si svolgerà su due turni consecutivi. Informazioni più accurate e definitive sulle modalità di partecipazione verranno pertanto rese note nei giorni immediatamente precedenti alla data d'esame.] -
Appello Orale Straordinario del 28/3/2024
La prova orale del 28/3/2024 si svolgerà a partire dalle ore 9:30 interamente da remoto su piattaforma Google Meet, secondo le modalità indicate nel messaggio inviato sul forum Moodle. -
Esiti Appello Scritto Straordinario del 25/3/2024
Gli esiti dell'appello scritto straordinario del 25/3/2024 sono disponibili al seguente link. -
Appello Scritto Straordinario del 25/3/2024
La prova d'esame scritta relativa all'appello straordinario dell'a.a. 2023-24 si svolgerà lunedì 25/3/2024 dalle ore 14:30 alle ore 15:30 presso l'Aula 15 dei laboratori situati in via Tiburtina, 205 (mappa). Tutti gli studenti accreditati a partecipare alla prova straordinaria dovranno obbligatoriamente registrarsi sull'apposito verbale Infostud (923583). Le registrazioni resteranno aperte dal 28/2/2024 al 22/3/2024.
[Qualora, alla chiusura delle registrazioni, il numero di iscritti risultasse maggiore della capienza dell'aula, la prova si svolgerà su due turni consecutivi. Informazioni più accurate e definitive sulle modalità di partecipazione verranno pertanto rese note nei giorni immediatamente precedenti alla data d'esame.] -
II Appello Orale del 15/2/2024
La prova orale del 15/2/2024 si svolgerà a partire dalle ore 14:00 interamente da remoto su piattaforma Google Meet, secondo le modalità indicate nel messaggio inviato sul forum Moodle. -
Esiti II Appello Scritto del 23/1/2024
Gli esiti dell'appello scritto del 13/2/2024 sono disponibili al seguente link. -
I Appello Orale del 29/1/2024
La prova orale del 29/1/2024 si svolgerà a partire dalle ore 9:00 interamente da remoto su piattaforma Google Meet, secondo le modalità indicate nel messaggio inviato sul forum Moodle. -
Esiti I Appello Scritto del 23/1/2024
Gli esiti dell'appello scritto del 23/1/2024 sono disponibili al seguente link. -
II Appello Scritto del 13/2/2024
La prova d'esame scritta relativa al II appello dell'a.a. 2023-24 si svolgerà martedì 13/2/2024 dalle ore 13:30 alle ore 14:30 presso l'Aula 15 dei laboratori situati in via Tiburtina, 205 (mappa). Tutti gli studenti interessati a partecipare alla prova dovranno obbligatoriamente registrarsi sull'apposito verbale Infostud (914595). Le registrazioni resteranno aperte dall'1/2/2024 al 9/2/2024.
[Qualora, alla chiusura delle registrazioni, il numero di iscritti risultasse maggiore della capienza dell'aula, la prova si svolgerà su due turni consecutivi. Informazioni più accurate e definitive sulle modalità di partecipazione verranno pertanto rese note nei giorni immediatamente precedenti alla data d'esame.] -
I Appello Scritto del 23/1/2024
La prova d'esame scritta relativa al I appello dell'a.a. 2023-24 si svolgerà martedì 23/1/2024 dalle ore 13:30 alle ore 14:30 presso l'Aula 15 dei laboratori situati in via Tiburtina, 205 (mappa). Tutti gli studenti interessati a partecipare alla prova dovranno obbligatoriamente registrarsi sull'apposito verbale Infostud (914592). Le registrazioni resteranno aperte dal 21/12/2023 al 19/1/2024.
[Qualora, alla chiusura delle registrazioni, il numero di iscritti risultasse maggiore della capienza dell'aula, la prova si svolgerà su due turni consecutivi. Informazioni più accurate e definitive sulle modalità di partecipazione verranno pertanto rese note nei giorni immediatamente precedenti alla data d'esame.] - IMPORTANTE: La lezione del 21/12/2023 è annullata.
- Date Appelli Esame Scritto: Le date degli appelli di esame scritto per le sessioni di gennaio e febbraio 2024 sono disponibili al seguente link. A breve, verranno aperti i relativi verbali su Infostud a cui sarà possibile iscriversi.
- ANNUNCIO: La lezione del 2/11/2023 si svolgerà da remoto via Zoom. Per ulteriori dettagli, si prega di consultare il messaggio sul forum della pagina Moodle del corso.
- IMPORTANTE: La lezione del 31/10/2023 è annullata.
- Si invitano tutti gli studenti intenzionati a frequentare il corso ad iscriversi quanto prima alla pagina Moodle del corso, come indicato di seguito.
- L'inizio delle lezioni è fissato per il giorno martedì 3 ottobre 2023, e l'orario completo degli insegnamenti del I semestre a.a. 2023-24 è disponibile al seguente link.
Informazioni Generali
Benvenuti sul sito web del corso di Sistemi Operativi - I Modulo!
Il corso si svolge al primo semestre del secondo anno della Laurea Triennale in Informatica della Sapienza Università di Roma.
Questo repository contiene il materiale didattico del corso sottoforma di slide PDF ed esercizi relativi all'anno accademico 2023-24, limitatamente al I canale.
Orario delle Lezioni
- Martedì dalle 16:00 alle 19:00
- Giovedì dalle 13:00 alle 15:00
Entrambe le lezioni si svolgeranno nell'Aula III - Edificio "V. Caglioti" c/o Dipartimento di Chimica [map]
Pagina Moodle del Corso
Gli studenti devono registrarsi alla pagina Moodle che si trova al seguente indirizzo web, utilizzando le stesse credenziali istituzionali (username/password) per l'accesso ai servizi Wi-Fi e Infostud: https://elearning.uniroma1.it/course/view.php?id=16966
Orario di Ricevimento
Per garantire la massima flessibilità, è preferibile concordare con il docente un ricevimento su appuntamento (in presenza o a distanza). Si prega di inviare la propria richiesta via email all'indirizzo: [email protected], indicando come soggetto "SO-I 2023-24: Ricevimento".
I ricevimenti in presenza si terranno nell'ufficio del docente, presso la Stanza 106 al I piano dell'Edificio "E" situato in Viale Regina Elena, 295 (map).
Contatti Docente
- Email: [email protected]
- Sito web: https://www.di.uniroma1.it/~tolomei
- Bacheca Sapienza: https://corsidilaurea.uniroma1.it/it/users/gabrieletolomeiuniroma1it
- Ufficio: Stanza 106 I piano Edificio "E" c/o Viale Regina Elena, 295 (map)
Obiettivi del Corso
I sistemi operativi sono parte essenziale di un sistema di calcolo e costituiscono l'esempio ideale di un concetto fondamentale e trasversale all'intero percorso di studio in Informatica, ossia quello dell'astrazione.
Più specificamente, grazie al processo di virtualizzazione delle risorse fisiche, i sistemi operativi consentono ai programmatori di sviluppare software applicativi evitando di doversi concentrare sui dettagli della macchina hardware, garantendo infine un miglior livello di usabilità da parte dell'utente finale. È pertanto necessario che uno studente di Informatica possieda le basi per comprendere le principali problematiche relative all'efficace progettazione (e utilizzo) di un software altamente complesso come quello di un sistema operativo moderno.
Allo scopo di fornire tali basi, durante il corso verranno discussi alcuni concetti fondamentali relativi ai sistemi operativi cosiddetti general purpose (tipicamente installati su PC/laptop) e alle loro funzionalità primarie (gestione dei processori, della memoria e dei dispositivi di ingresso/uscita). Verranno altresì forniti cenni sulle caratteristiche principali dei sistemi operativi installati sui dispositivi mobili (tablet/smartphone).
I concetti generali previsti per il corso, ampiamente coperti dal materiale bibliografico consigliato, verranno discussi a lezione in maniera relativamente indipendente da specifici sistemi operativi. Essi saranno comunque esemplificati facendo riferimento a sistemi operativi noti e di utilizzo comune, come ad esempio UNIX/Linux, Windows, Mac, Android, iOS, etc.
Prerequisiti
- Concetti fondamentali di architetture degli elaboratori
- Fondamenti di programmazione
Modalità di Esame
Per il superamento dell'esame è prevista una prova scritta, basata su un quiz Moodle a risposta multipla. Tutti coloro che superano la prova scritta con un punteggio compreso tra 15 e 17 (estremi inclusi) sono ammessi, nonché obbligati, a sostenere la successiva prova orale. Coloro che, invece, ottengono un punteggio sufficiente (maggiore o uguale a 18) alla prova scritta possono decidere di confermare il voto ottenuto oppure sostenere un'ulteriore prova orale integrativa opzionale.
Testi Consigliati
Sebbene non obbligatori ai fini del superamento dell'esame, i seguenti libri di testo (preferibilmente in lingua inglese) costituiscono una fonte utile per assimilare più approfonditamente i concetti esposti durante le lezioni:
- Operating System Concepts [Silberschatz et al.];
- Modern Operating Systems [Tanenbaum et al.];
- Operating Systems: Three Easy Pieces [Remzi] (disponibile gratuitamente online).
I primi due libri sono comunque disponibili anche in versione italiana:
- Sistemi Operativi. Concetti ed Esempi [Silberschatz et al.];
- I Moderni Sistemi Operativi [Tanenbaum et al.]
Syllabus
Parte I: Introduzione
- Concetti di base
- Storia dei sistemi operativi
- Relazione tra macchina fisica (HW) e sistemi operativi
- Struttura dei sistemi operativi
Parte II: Gestione dei Processi
- Processi
- CPU Scheduling
- Threads
Parte III: Sincronizzazione tra Processi/Thread
- Strumenti per la Sincronizzazione
- Esempi di Sincronizzazione
- Deadlock
Parte IV: Gestione della Memoria
- Memoria Principale (RAM)
- Memoria Virtuale
Parte V: Gestione dei Sistemi di I/O
- Dispositivi di Memoria di Massa
- Sistemi di I/O
Materiale Didattico
Lezione # | Data | Argomento | Materiale |
---|---|---|---|
Lezioni 1-2 | 03/10/2023-05/10/2023 | Introduzione e Richiami di Concetti Base | [slides: PDF] |
Lezione 3 | 10/10/2023 | Relazione tra Sistema Operativo e Macchina Fisica | [slides: PDF] |
Lezione 4 | 12/10/2023 | Spazio di Indirizzamento Logico e PCB | [slides: PDF] |
Lezione 5 | 17/10/2023 | Concetti Base della Gestione dei Processi | [slides: PDF] [code] |
Lezione 6 | 19/10/2023 | Scheduling della CPU (Parte I) | [slides: PDF] |
Lezioni 7-8 | 24/10/2023-26/10/2023 | Scheduling della CPU (Parte II) | [slides: PDF] |
Lezione 9 | 02/11/2023 | Threads | [slides: PDF] |
Lezione 10 | 07/11/2023 | Implementazione dei Thread | [slides: PDF] [code] |
Lezione 11 | 09/11/2023 | Sincronizzazione tra Processi/Thread | [slides: PDF] |
Lezioni 12-13 | 14/11/2023-16/11/2023 | Implementazione Meccanismi di Sincronizzazione | [slides: PDF] [code] |
Lezioni 14-15 | 21/11/2023-23/11/2023 | Deadlock | [slides: PDF] |
Lezione 16 | 28/11/2023 | Gestione della Memoria: Binding e Rilocazione | [slides: PDF] |
Lezione 17 | 30/11/2023 | Gestione della Memoria: Allocazione Contigua | [slides: PDF] |
Lezione 18 | 05/12/2023 | Gestione della Memoria: Paginazione | [slides: PDF] |
Lezione 19 | 07/12/2023 | Gestione della Memoria: Paginazione Avanzata | [slides: PDF] |
Lezione 20 | 12/12/2023 | Memoria Virtuale (Parte I) | [slides: PDF] |
Lezione 21 | 14/12/2023 | Memoria Virtuale (Parte II) | [slides: PDF] |
Lezione 22 | 19/12/2023 | Dispositivi di Memoria di Massa | [slides: PDF] |
Lezione 23 | 21/12/2023 | Scheduling del Disco | [slides: PDF] |
<!-- | Lezione 21 | 14/12/2020 | File System: Interfaccia e Implementazione |
Lezioni 22 - 23 - 24 | 16/12/2020 - 21/12/2020 - 23/12/2020 | Esercitazioni | |
--> |
Anni Precedenti
In questa sezione è possibile accedere alle informazioni del corso relativamente agli anni accademici precedenti rispetto a quello corrente.
NOTA: La directory che include il materiale didattico è unica e il suo contenuto può subire modifiche o aggiornamenti di anno in anno; pertanto, è possibile che vi siano discrepanze tra ciò che è presente su questo sito e ciò che invece è stato mostrato in un determinato anno, diverso da quello corrente.
- 2022-23
- 2020-21
- 2019-20