Skip to content

gtolomei/operating-systems

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sistemi Operativi I - 2024-25 (I Canale)

News | Informazioni Generali | Syllabus | Materiale Didattico | Anni Precedenti

News

  • II Appello Scritto dell'11/2/2025
    La prova d'esame scritta relativa al II appello dell'a.a. 2024-25 si svolgerà martedì 11/2/2025 dalle ore 13:45 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 (967901). Le registrazioni resteranno aperte dal 27/1/2025 al 7/2/2025.
    [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/2025
    La prova d'esame scritta relativa al I appello dell'a.a. 2024-25 si svolgerà giovedì 23/1/2025 dalle ore 13:45 alle ore 14:30 su due turni distinti, ciascuno di 45 minuti. Il primo turno avrà inizio alle ore 15:45, mentre il secondo si svolgerà a partire dalle ore 16:45. Entrambe le prove si terranno 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 (967895). Le registrazioni resteranno aperte dal 6/12/2024 al 19/1/2025.
  • ANNUNCIO IMPORTANTE: Coloro che non hanno compilato i questionari OPIS in classe, sono caldamente pregati di farlo il prima possibile, utilizzando il codice seguente: XAF9XXHN.
  • ANNUNCIO IMPORTANTE: Le lezioni del 26/11/2024 e 27/11/2024 si svolgeranno (finalmente 🥳) nell'Aula 3 di Via De Lollis (ingresso dai laboratori di Via Tiburtina, 205 [mappa]). Per ulteriori informazioni, si prega di far riferimento all'orario pubblicato al seguente link.
  • ANNUNCIO IMPORTANTE: Le lezioni del 19/11/2024 e 20/11/2024 si svolgeranno rispettivamente in Aula G e in Aula A1 "Luigi Capozzi" presso il Polo Didattico della Clinica Odontoiatrica situato in Via Caserta, 6 (mappa). Per ulteriori informazioni, si prega di far riferimento all'orario pubblicato al seguente link.
  • ANNUNCIO IMPORTANTE: Le lezioni del 12/11/2024 e 13/11/2024 si svolgeranno in Aula A1 "Luigi Capozzi" presso il Polo Didattico della Clinica Odontoiatrica situato in Via Caserta, 6 (mappa). Per ulteriori informazioni, si prega di far riferimento all'orario pubblicato al seguente link.
  • ANNUNCIO IMPORTANTE: Le lezioni del 5/11/2024 e 6/11/2024 sono annullate per motivi di salute.
  • ANNUNCIO IMPORTANTE: La lezione del 29/10/2024 si svolgerà in Aula A1 "Luigi Capozzi" presso il Polo Didattico della Clinica Odontoiatrica situato in Via Caserta, 6 (mappa). Per ulteriori informazioni, si prega di far riferimento all'orario pubblicato al seguente link. Inoltre, come già annunciato, la lezione del 30/10/2024 è annullata.
  • ANNUNCIO IMPORTANTE: Le lezioni del 22/10/2024 e 23/10/2024 si svolgeranno rispettivamente in Aula A1 "Luigi Capozzi" presso il Polo Didattico della Clinica Odontoiatrica situato in Via Caserta, 6 (mappa) e in Aula 301 presso l'Edificio D di Viale Regina Elena 295 (mappa). Per ulteriori informazioni, si prega di far riferimento all'orario pubblicato al seguente link.
  • ANNUNCIO IMPORTANTE: Le lezioni del 15/10/2024 e 16/10/2024 si svolgeranno, in via eccezionale, in Aula A1 "Luigi Capozzi" presso il Polo Didattico della Clinica Odontoiatrica situato in Via Caserta, 6 (mappa). Per ulteriori informazioni, si prega di far riferimento all'orario pubblicato al seguente link.
  • ANNUNCIO IMPORTANTE: Le lezioni dell'8/10/2024 e 9/10/2024 si svolgeranno, in via eccezionale, in Aula A1 "Luigi Capozzi" presso il Polo Didattico della Clinica Odontoiatrica situato in Via Caserta, 6 (mappa). Per ulteriori informazioni, si prega di far riferimento all'orario pubblicato al seguente link.
  • ANNUNCIO IMPORTANTE: Le lezioni dell'1/10/2024 e 2/10/2024 si svolgeranno da remoto via Zoom. Per ulteriori dettagli, si prega di consultare il messaggio sul forum della pagina Moodle del corso.
  • ANNUNCIO IMPORTANTE: Le lezioni della prima settimana si svolgeranno, in via eccezionale, rispettivamente in Aula 204 (Edificio "Marco Polo") e in Aula Magna (Edificio Facoltà di Lettere). Per ulteriori informazioni, si prega di far riferimento all'orario pubblicato al seguente link.
  • 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ì 24 settembre 2024, e l'orario completo degli insegnamenti del I semestre a.a. 2024-25 è 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 2024-25, limitatamente al I canale.

Orario delle Lezioni

  • Martedì dalle 15:00 alle 17:00
  • Mercoledì dalle 13:00 alle 16:00

Entrambe le lezioni si svolgeranno nell'Aula 4 di Via De Lollis (ingresso dai laboratori di Via Tiburtina, 205 [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=18501

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 2024-25: 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

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

Parte VI: File System

  • Interfaccia del File System
  • Implementazione del File System
  • Struttura del File System

Parte VII: Advanced Topics(?)

  • Protezione
  • Sicurezza
  • Sistemi distribuiti
  • Sistemi per dispositivi mobili

Materiale Didattico

Lezione # Data Argomento Materiale
Lezione 1 24/09/2024 Introduzione e Richiami di Concetti Base [slides: PDF]
Lezione 2 25/09/2024 Relazione tra Sistema Operativo e Macchina Fisica [slides: PDF]
Lezione 3 01/10/2024 Spazio di Indirizzamento Logico e PCB [slides: PDF]
Lezione 4 02/10/2024 Concetti Base della Gestione dei Processi [slides: PDF] [code]
Lezione 5 08/10/2024 Scheduling della CPU (Parte I) [slides: PDF]
Lezione 6 09/10/2024 Scheduling della CPU (Parte II) [slides: PDF]
Lezione 7 15/10/2024 Threads [slides: PDF]
Lezione 8 16/10/2024 Implementazione dei Thread [slides: PDF] [code]
Lezione 9 22/10/2024 Sincronizzazione tra Processi/Thread [slides: PDF]
Lezione 10 23/10/2024 Implementazione Meccanismi di Sincronizzazione I [slides: PDF]
Lezione 11 29/10/2024 Implementazione Meccanismi di Sincronizzazione II [slides: PDF] [code]
Lezione 12 12/11/2024 Deadlock [slides: PDF]
Lezione 13 13/11/2024 Esercitazione [PDF]
Lezione 14 19/11/2024 Gestione della Memoria: Binding e Rilocazione [slides: PDF]
Lezione 15 20/11/2024 Gestione della Memoria: Allocazione Contigua [slides: PDF]
Lezione 16 26/11/2024 Gestione della Memoria: Paginazione [slides: PDF]
Lezione 17 27/11/2024 Gestione della Memoria: Paginazione Avanzata [slides: PDF]
Lezione 18 03/12/2024 Memoria Virtuale (Parte I) [slides: PDF]
Lezione 19 04/12/2024 Memoria Virtuale (Parte II) [slides: PDF]
Lezione 20 10/12/2024 Dispositivi di Memoria di Massa [slides: PDF]
Lezione 21 11/12/2024 Scheduling del Disco [slides: PDF]
Lezione 22 17/12/2024 Esercitazione [PDF]

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.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published