- *
FS - File System
Concetto di file. Operazioni tipiche. Sistemi di gestione dei file. Struttura, attributi e tipi dei file. Metodi di accesso. Struttura delle directory. Link. Gestione della memoria secondaria. Gestione dello spazio libero. Gestione dei file in Unix: fsv7,ext2,ext3. Gestione dei file in Windows: FAT32, NTFS.
- *
GM - Gestione della Memoria
Concetti di indirizzamento logico e fisico. Gestione a partizioni fisse, a partizioni variabili. Memoria virtuale a pagine. Page fault. Tabella delle pagine. Paginazione a pi? livelli. Memoria associativa. Tabella delle pagine inversa. Segmentazione. Paginazione e segmentazione.
- *
GSP - Gestione e Sincronizzazione dei Processi
Processi: Struttura e propriet? dei processi. Stati di un processo. Tipi di scheduling. Creazione di un processo. Relazioni dinamiche con il processo creante. Terminazione di un processo. Processi sequenziali, concorrenti, real-time. Commutazione di contesto. Processi cooperanti. Il problema del produttore-consumatore. Il modello a thread. Single threading vs multithreading.
- *
AMM - Amministrazione di sistema
La shell UNIX: ruolo e varianti, procedura di login, organizzazione del file system, manuale online, la shell bash: espansione del pathname, ridirezione del I/O, pipe, job in background, il comando history, editing della linea di comando, completamento di comandi, gli editor vi e (X)Emacs, il comando make. Comandi principali della shell: gestione di file, gestione di processi, monitoraggio della memoria, comandi filtro: ricerca, ordinamento, editing. Shell script: variabili, passaggio dei parametri, strutture di controllo, login script.
-
GP - Gestione delle Periferiche
Principi dell?hw di I/O. I controllori di dispositivi. Polling. I/O programmato. I/O gestito da interrupt. Accesso diretto in memoria (DMA). Sw di I/O. Gestori di interruzione. Driver di dispositivo. Sw di I/O indipendente dal dispositivo. Interfaccia di I/O per le applicazioni. I/O bloccante e non bloccante. Sottosistema di I/O del kernel. I/O buffering. Affidabilit? del file system. Gestione dello spazio libero. Prestazioni del file system. RAID. Dischi magnetici. Tempi di accesso ad un disco rigido. Algoritmi di scheduling del disco: FCFS, SSTF, SCAN, C-SCAN, N-STEP e F-SCAN
-
GCA - Gestione e Controllo degli Accessi
Sicurezza dei sistemi informatici. Minacce alla sicurezza. Agenti sw: Trapdoor. Bomba logica. Cavallo di troia. Virus. Batteri e vermi. Rilevamento di intrusi. Buffer overflow. Cifratura: Data Encryption Standard (DES). RSA. Protezione. Dominio di protezione. Anelli di Multics. Matrice d?accesso. Lista di controllo degli accessi.
-
PS - Programmazione di Sistema
Programmazione di sistema: controllo di processi, file system, comunicazione tra processi, threads e multithreading. Creazione di processi in Unix: Creazione di un processo figlio. La funzione fork. La funzione vfork. Identificativi di processo. La funzione exec.
- *
GSP - Gestione e Sincronizzazione dei Processi
Cooperazione e competizione tra processi. Processi concorrenti. Condizioni di interferenza. Sezione critica. Soluzione per la gestione delle sezioni critiche. Soluzioni software: algoritmo di Dekker, algoritmo di Peterson. Soluzione per pi? processi. Soluzioni hardware: disabilitazione delle interruzioni, l?istruzione test-and-set, l?istruzione xchg.
- *
GSP - Gestione e Sincronizzazione dei Processi
Monitor di Hoare e di Lampon/Redell. Regioni critiche e implementazione tramite semafori. Scambio di messaggi.
- *
GSP - Gestione e Sincronizzazione dei Processi
Meccanismi di sincronizzazione del SO: Ssemafori. Mutua esclusione. Semafori binari. La sincronizzazione in UNIX. Sincronizzazione dei thread. La libreria Pthread
- *
GM - Gestione della Memoria
Strategie di sostituzione delle pagine: Ottima, FIFO, LRU, CLOCK, NFU, Working set. WSClock. Strategia Page Fault Frequency.
- *
SCO - Struttura e Componenti di un sistema operativo
Funzioni e struttura di un sistema operativo. Elementi di base dei sistemi di calcolo. Componenti e struttura del sistema operativo. Meccanismi di interruzione. La nozione di system call. Meccanismi di implementazione delle system call.