Fisicamente i vari files risiedono su vari tipi di supporti fisici, con cui il
calcolatore interagisce per leggerli o scriverli.
Come sappiamo, a livello basso, c'è un controller che provvede a leggere
e scrivere i singoli bit, o più frequentemente dei blocchi di bit, sul
supporto fisico.
Un filesystem è quella struttura - essenzialmente un database - che
organizza i files in modo adatto ad interfacciarsi con il supporto fisico
e il suo controller.
Per aumentare l'uso efficiente dello spazio disponibile, i files
vengono di solito spezzettati in tanti blocchetti di dati.
Per salvare un file, vengono reperiti dei posti liberi in cui riporre i
blocchetti in cui il file viene spezzettato, e poi viene
preso nota di tutti i dati riguardanti il file, in modo da poterlo successivamente
ricostruire.
Per cancellare un file, basta segnare come liberi i blocchetti di spazio che occupava.
Linux è in grado di usare diversi tipi di Filesystems, come minix, ext, ext2, ext3, ext4, reiserfs
msdos, umsdos, vfat, proc, nfs, iso9660, hpfs, e molti altri.
Il filesystem storicamente usato da Linux era ext2, cioè il "Linux second extended file system".
Le nuove installazioni usano generalmente delle sue estensioni, l' ext3 e l' ext4, che hanno in più
il journaling ed altre opzioni.
Laboratorio di Comunicazione mediante Calcolatore - Sergio Steffè - AA 2019/2020 - PISA