Sistemi operativi
1. Esercitazione: Gestione File e Cartelle
Cos'è un sistema operativo?
Bootstrap di un computer
Obiettivi
Il corso si propone di fornire i concetti fondamentali dei sistemi operativi, descrivendone gli obiettivi, le funzioni svolte e i principali componenti che lo compongono.
Lo scopo del corso è quello di fornire allo studente le conoscenze fondamentali che sono alla base dello sviluppo di un sistema operativo.
Contenuti
- Concetti introduttivi (Definizione delle principali funzioni di un sistema operativo, della sua struttura e delle componenti che lo caratterizzano).
- Gestione dei processi e delle unità di elaborazione (multiprogrammazione, concetto di processo e algoritmi di scheduling; interazioni tra processi; condizioni di “deadlock”)
- Gestione della memoria (organizzazione della memoria virtuale, rilocazione degli indirizzi, protezione e condivisione delle informazioni; tecniche di allocazione della memoria)
- Gestione dei dispositivi periferici (organizzazione del sottosistema di I/O nei due livelli “device independent” e “device dependent”, struttura di un “device driver”)
- Gestione dei file (organizzazione fisica e logica di un file, struttura del file system, metodi di accesso e protezione, gestione delle “directories”)
- Casi di studio (esempi relativi a due sistemi di grande diffusione: Unix-Linux e Windows)
Testo di riferimento
P. Ancilotti, M. Boari, A. Ciampolini, G. Lipari, Sistemi Operativi, McGraw-Hill, 2004
Approfondimenti
- Concetti introduttivi - Prima parte
- Concetti introduttivi - Seconda parte
- Concetti introduttivi - Terza parte
- Concetti introduttivi - Quarta parte
- Proprietà dei processi - Prima parte
- Proprietà dei processi - Seconda parte
- Proprietà dei processi - Terza parte
- Proprietà dei processi - Quarta parte
- Proprietà dei processi - Quinta parte
- Proprietà dei processi - Sesta parte
- Processi nel S.O. Unix
- Interazione tra processi in Unix - Prima parte
- Interazione fra processi in Unix - Seconda parte
- Threads nel S.O. Linux
- Sincronizzazione in JAVA
- Gestione della memoria - Introduzione
- Gestione della memoria - Parametri caratterizzanti
- Gestione della memoria - Tecnica delle partizioni
- Gestione della memoria - Segmentazione
- Gestione della memoria - Paginazione prima parte
- Gestione della memoria - Paginazione seconda parte
- Gestione della memoria - Conclusioni
- Gestione della memoria - Casi di studio
- Gestione dei dispositivi di ingresso e uscita - Introduzione
- Gestione dei dispositivi di ingresso e uscita - Device drive
- Gestione dei dispositivi di ingresso e uscita - Conclusioni
- File System - Introduzione
- File System - Organizzazione
- File System - Unix - Prima parte
- File System - Unix - Seconda parte