Con un lungo e dettagliato post pubblicato sul blog ufficiale di Windows 8, Microsoft ha spiegato il funzionamento di ReFS (Resilient File System), il nuovo file system di storage integrato nella versione server del futuro sistema operativo. ReFS è basato sull’attuale NTFS, ma introduce ulteriori caratteristiche che garantiscono l’integrità dei dati e il recupero dei file da un disco danneggiato.
Lo sviluppo di ReFS non è dunque partito da zero, ma è stato riutilizzato una parte del codice di NTFS, in modo tale da conservare anche la compatibilità con gli attuali sistemi operativi. I volumi ReFS residenti sul server possono essere letti dai client Windows 8 e Windows 7. Il nuovo file system comunque verrà utilizzato solo per lo storage e non per le partizioni di boot.
Microsoft ha aggiunto all’interfaccia di NTFS un nuovo motore per le strutture on-disk, come la MFT (Master File Table) che rappresenta file e directory. ReFS ha una struttura organizzata in tabelle, in modo simili al DBMS SQL Server. Le tabelle che rappresentano le directory contengono i riferimenti ai file in ogni riga. I file sono a loro volta individuati attraverso i metadati, ovvero gli attributi, memorizzati all’interno di un’altra tabella. L’utilizzo di tabelle concatenate tra loro permette di aumentare la dimensione di file e directory senza avere un impatto negativo sulle prestazioni, superando dunque uno dei limiti di NTFS.
L’affidabilità dei dati viene garantita da un sistema, noto come allocate-on-write, che scrive i metadati in differenti locazioni, permettendo il recupero dei file in caso di danneggiamento dei dischi, in combinazione con gli Storage Spaces. ReFS assegna un checksum ad ogni file, che viene scritto in una locazione diversa dalla precedente, per evitare le sovrascritture. Quando ReFS rileva un malfunzionamento di un disco, chiede agli Storage Spaces di prelevare tutte le copie dei dati presenti sulle altre unità, individua la copia esatta attraverso il checksum e rigenera la copia danneggiata utilizzando una copia valida.
ReFS inoltre esegue tutte le transazioni, ad esempio la scrittura su disco, mettendo insieme le parti correlate (le pagine delle directory, gli attributi e i nomi dei file, ecc.), eseguendo meno operazioni di I/O, ma di dimensioni maggiori. Ciò consente un notevole miglioramento dal punta di vista prestazionale.
Trattandosi di un nuovo file system, ovvero la parte più critica di un sistema operativo, Microsoft seguirà un approccio conservativo. Solo dopo aver superato migliaia di test, ReFS sarà integrato in Windows Server 8 come storage system. Successivamente il suo utilizzo verrà esteso alla versione client di Windows 8 e, in futuro, potrebbe diventare il file system predefinito per i volumi di boot.