Il Sistema Operativo

Gestione del File System

Nel secondo paragrafo abbiamo introdotto come un SO si preoccupa di gestire la Memoria. Ci che non abbiamo specificato come il SO "vede" la memoria. Infatti tra il mappare la memoria in modo da facilitare lo scheduling e il vedere la memoria per memorizzarci dei dati c' una differenza sostanziale: nella seconda viene stabilito un modo attraverso il quale il SO recupera i dati dalla memoria fisica. La mappa di memorizzazione dei files viene coordinata dal gestore dei files, detto FileSystem. Sappiamo che la memoria fisica una memoria ad accesso non random ma sequenziale. 

Recuperare in generale un file all'interno della memoria significa fondamentalmente estrarlo dalla locazione di memoria fisica. Questa operazione non pu essere fatta manualmente in quanto particolarmente onerosa, dal momento che un file, non necessariamente memorizzato in una sola locazione ma pu ricoprirne diverse, anche non contigue! Ancora una volta il SO viene in sostegno alla gestione e al recupero dei file.


Il Filesystem generalmente conosciuto anche come mappa dei file, indica come il SO vede posizionati i file all'interno della memoria e si presenta generalmente con una struttura ad albero binario rovesciato. La ricerca dei files avviene mediante lo scorrimento dei rami dell'albero.

L'albero ha un nodo radice detto "root", di partenza, e percorrendolo si possono incontrare altri nodi (che rappresentano generalmente archivi) oppure files (foglie). Ogni "percorso" o "path" verso un file dell'albero rappresentato da un elemento "radice/cartella1/cartella2/.../file.txt". Naturalmente una volta arrivati al file l'estensione del file deve essere riconosciuta dal SO. 


Un determinato file per il SO suddiviso generalmente in frammenti detti record logici di dimensione prefissata. Quando viene memorizzato un file pu essere distribuito in pi record fisici, porzioni di memoria. La tecnica di allocazione della memoria, molto utilizzata anche nei dispositivi USB, risponde alla domanda: come permettere al SO di recuperare un file composto da pi record logici?. Per questo esistono differenti tecniche che tengono conto di una serie di caratteristiche ed aspetti. Una di queste la FAT32. 

Il termine FAT32, sta per File Allocation Table, ed un sistema di allocazione basato sull'utilizzo di una tabella, memorizzata in maniera protetta all'interno del Kernel (nucleo del sistema), in cui sono conservate le corrispondenze tra il link logico e il record logico. I record logici di 32 bit sono collegati l'uno con l'altro da singoli link logici. Tale sistema prevede che se un link logico, viene corrotto, il SO consultando la tabella pu ricostruire il link logico mancante e recuperare il file.