CODICE | 104746 |
---|---|
ANNO ACCADEMICO | 2021/2022 |
CFU | 6 cfu al 2° anno di 8719 INGEGNERIA INFORMATICA (L-8) GENOVA |
SETTORE SCIENTIFICO DISCIPLINARE | ING-INF/05 |
LINGUA | Italiano |
SEDE | GENOVA (INGEGNERIA INFORMATICA ) |
PERIODO | 2° Semestre |
MATERIALE DIDATTICO | AULAWEB |
Struttura dei sistemi operativi, le funzioni dei moduli in cui sono organizzati, gli algoritmi e le strutture software che utilizzano.
Il corso fornisce lo studente gli strumenti tecnici e metodologici per comprendere e descrivere caratteristiche, funzioni e interazioni delle principali componenti dei sistemi operativi moderni.
Programmazione e familiarità con il linguaggio C; architettura e funzionamento dei calcolatori
Le lezioni frontali saranno accompagnate da esercitazioni pratiche al calcolatore.
Introduzione alla struttura dei sistemi operativi. Concetti base, struttura monolitica e a microkernel.
La gestione dei processi e dei thread. Creazione e gestione processi. I thread e loro implementazione.
La comunicazione fra processi (signal, pipe, socket, shared memory, ...). Mutua esclusione e sincronizzazione. L’algoritmo di Dekker, l’algoritmo di Peterson. Supporto hardware alla mutua esclusione. Il problema del Produttore e del Consumatore. I semafori. I monitor. Message Passing. Il problema dei Lettori e dei Consumatori.
Deadlock e Starvation. Approcci alla gestione dei deadlock: Detection, Prevention e Avoidance. I grafi di allocazione delle risorse. Il problema dei Dining Philosophers.
La gestione della memoria. Memoria fisica e memoria virtuale. Gestione paginata e sue problematiche di implementazione. Gestione segmentata.
Scheduling uniprocessore. Scheduling a lungo, medio e breve termine. Algoritmi di scheduling: FCFC, Round Robin, SPN, SRT, HRRN, Feedback.
La gestione dell’input-output. Interazione CPU-dispositivi-memoria. Architettura DMA. Schedulazione dei dischi.
Il file system. Struttura e attributi di file e directory. Metodi di implementazione e ottimizzazione dei file system.
Controllo degli Accessi. Modelli, politiche e meccanismi per il controllo degli accessi. Controllo degli Accessi in Linux (ACL in Unix, setuid)
Operating Systems: Internals and Design Principles. 8th edition di W. Stallings, Pearson
Ricevimento: - su appuntamento da concordare preventivamente col docente inviando e-mail all'indirizzo alessandro.armando@unige.it
ALESSANDRO ARMANDO (Presidente)
PIERPAOLO BAGLIETTO
ALESSIO MERLO
MASSIMO MARESCA (Presidente Supplente)
Le lezioni frontali saranno accompagnate da esercitazioni pratiche al calcolatore.
L'orario di tutti gli insegnamenti è consultabile su EasyAcademy.
L'esame consisterà in una prova scritta.
Data | Ora | Luogo | Tipologia | Note |
---|---|---|---|---|
12/01/2022 | 11:00 | GENOVA | Scritto | |
09/02/2022 | 11:00 | GENOVA | Scritto | |
13/06/2022 | 11:00 | GENOVA | Scritto | |
13/07/2022 | 11:00 | GENOVA | Scritto | |
12/09/2022 | 11:00 | GENOVA | Scritto |