SISTEMI OPERATIVI Canale unico
Docente coordinatore e verbalizzante: RICCARDO LAZZERETTI
Obiettivi formativi
"Obiettivi generali:
Il corso ha come obiettivi i concetti, la struttura, e i meccanismi dei sistemi operativi. Verranno trattate caratteristiche fondamentali, presenti fin dai sistemi più tradizionali, ma anche peculiarità dei sistemi moderni che nascono come conseguenza dell’evoluzione ricorrente della tecnologia."
"Obiettivi specifici:
Il corso coprirà le caratteristiche e concetti dei sistemi operativi moderni, con particolare riferimento ai sistemi Unix e Linux. Si inizierà con una descrizione dell’evoluzione dei sistemi operativi nel tempo, per continuare con concetti fondamentali come i processi, lo stallo, e relativi meccanismi di prevenzione, la concorrenza tra processi, la gestione della memoria, processore e I/O, i file system e la sicurezza."
"Conoscenze e comprensione:
Capire in modo profondo come i sistemi operativi danno supporto all’esecuzione dei programmi degli utenti e gestiscono le periferiche hardware di un calcolatore. Metodi e tecniche fondamentali per la rappresentazione dei processi in memoria e la gestione efficiente di multiprogrammazione - molteplici processi caricati/eseguiti contemporaneamente - in un sistema con risorse limitate."
"Applicare conoscenza e comprensione:
Progettare programmi a livello utente e di sistema in modo efficiente e sicuro."
"Capacità di giudizio:
Essere in grado di predire l’uso delle risorse richieste da un programma, di scoprire una possibile situazione di stallo in un sistema multiprogrammato, garantire la mutua esclusione tra processi e l’accesso protetto a zone di memoria o risorse sensibili."
"Capacità di comunicazione:
Saper comunicare in modo chiaro e preciso le caratteristiche dei sistemi operativi e i loro meccanismi di supporto software/hardware."
"Capacità di apprendimento:
Saper sfruttare la conoscenza acquisita nella progettazione di sistemi e di programmi utente nel modulo successivo del corso. Essere in grado di usare questa conoscenza nell’apprendimento di proprietà di sistemi più complessi come quelli distribuiti e cloud."
Risultati di apprendimento attesi
Conoscenze dei moderni sistemi operativi e reti dei calcolatori. Capacità di sviluppare semplici applicazioni concorrenti e distribuite
Prerequisiti
SISTEMI DI CALCOLO, FONDAMENTI DI COMUNICAZIONI E INTERNET
Programma dell’insegnamento
- Introduzione al corso
- Concorrenza
- Scheduling
- Basi di Reti di Calcolatori
- Socket
- Deadlock
- Basi di Sistemi Distribuiti
- Comunicazione InterProcesso
- Sicurezza in Sistemi di Calcolo
Testi di riferimento
Il materiale didattico è disponibile nella pagina del corso.
Lo studente interessato ad approfondire la materia può consultare i seguenti libri di testo (si consiglia l'edizione più recente):
[1] W. Stallings: "Operating Systems: Internals and Design Principles" (ninth edition), Pearson
[2] G. Coulouris, J. Dollimore, T. Kindberg, G. Blair: "Distributed Systems: Concepts and Design" (fifth edition), Pearson
[3] W. Stallings: "Cryptography and Network Security: Principles and Practice" (seventh edition), Pearson
Modalità di svolgimento
Lezioni frontali in aula
Esercitazioni guidate in laboratorio
Frequenza
La frequenza è fortemente consigliata.
Modalità di esame
Test di programmazione e domande di teoria da svolgere al computer.
L'esame si svolge in presenza
Eventuali esami telematici comporteranno anche una prova orale
Una prova orale può essere richiesta dal docente ad integrazione della prova scritta se lo ritiene necessario
Esempi di domande
- Mi descriva il funzionamento di una socket.
- Spieghi cosa comporta un certo errore in un algoritmo in termini di ME, ND e NS
- sviluppi le parti di codice mancante
Obiettivi per lo sviluppo sostenibile - Agenda ONU 2030
- Anno accademico2026/2027
- Corso di studio a cui afferisce l’insegnamentoIngegneria Elettronica - Electronics Engineering
- Codice insegnamento10621561
- CurriculumIngegneria Elettronica (percorso valido anche ai fini del conseguimento del doppio titolo italo-statunitense o italo-francese)
- Anno e semestre2º anno - 2º semestre
- TipologiaAttività formative affini ed integrative
- AmbitoAttività formative affini o integrative
- SSDINF/01
- Presenza obbligatoriaNo
- LinguaITA
- CFU6 CFU
- Durata complessiva60 ore
- Distribuzione delle ore36 classroom hours, 24 training hours