dal 2015 - visita n. 651
Seminario.02
Seminario.02

 

File System (parte 2)


Considerazioni sui File System

Un file system è, nel linguaggio corrente, un meccanismo con il quale i file sono immagazzinati e organizzati su un dispositivo di archiviazione, come un hard disk o un CD-ROM, e costituisce parte integrante di qualsiasi sistema operativo moderno. Più correttamente, un file system è l'insieme dei tipi di dati astratti necessari per la memorizzazione, l'organizzazione gerarchica, la manipolazione, la navigazione, l'accesso e la lettura dei dati.

I file system più comuni si appoggiano a dispositivi di archiviazione che offrono l'accesso ad un array di blocchi di dimensione fissa, generalmente chiamati settori, tipicamente di 512 byte l'uno. Il software che li supporta è responsabile dell'organizzazione di questi settori in file e directory, e tiene traccia dei settori che appartengono ai vari file e dei settori non utilizzati.

I file system tipicamente hanno tabelle che associano i nomi dei file con i file, usualmente collegando il nome del file ad un indice in una tabella di allocazione dei file (file allocation table) di qualche genere, come la FAT di un file system MS-DOS, o un inode in un file system di tipo Unix.
Le strutture delle directory possono essere ad un solo livello, oppure possono permettere una struttura gerarchica in cui delle directory possono contenere sottodirectory.


Il File System Journaled

I requisiti per un filesystem di moderna concezione sono: capacità di supportare grossi volumi fisici (oramai centinaia di gigabyte), integrità dei dati, riduzione della frammentazione interna ed esterna, recovery veloce in caso di crash e manipolazione in modo veloce ed efficiente sia dei file voluminosi sia dei file piccoli.

Un File System Journaled (con libro giornale) ha la capacità di recuperare lo stato consistente dell'hard disk in pochi secondi, la tecnica di recovery, ereditata dai database, si basa sulle transazioni. In caso di 'crash' del sistema, lo stato consistente del disco viene recuperato leggendo il Journal (libro giornale) e riapplicando le modifiche: quindi lo stato precedente.

In un filesystem non journaled lo stato consistente del disco passa attraverso l'analisi dei meta-data (i-node, directory, i-node map...) che richiede la scansione completa (blocco per blocco) del volume logico. Questo avviene in quanto la ricerca dei blocchi liberi avviene mappandoli in una sequenza di bit (detta comunemente 'struttura a bitmap'); più il filesystem cresce in dimensioni, più lo spazio occupato cresce di conseguenza: l'algoritmo di ricerca utilizzato è sequenziale.
ovviamente per filesystem di piccole dimensioni il sistema è comunque decisamente efficiente, e non penalizza le prestazioni del server.


Esempi di File System

L'elenco seguente include solo alcuni dei moltissimi tipi di file system conosciuti, è soprattutto orientato al mondo Linux, ma non può trascurare i prodotti Microsoft.


Altri File System

In questo elenco, per nulla completo, vengono brevemente citati altri tipi di file system usati o riconosciuti da Linux.








File System (parte 2)
I nomi dei dispositivi
Comandi Base (parte 2)
I permessi sui file
Tips & Tricks
Linux ce l'ha!


Le partizioni x86
Equivalenze Win/Lin
Installazione di Debian


Cap02.pdf
Breve Intro a Linux



A letto il mio vero amore è sempre stato il sonno che mi salvava permettendomi di sognare.
Luigi Pirandello

Valid CSS!
pagina generata in 0.001 secondi