Wedson Almeida Filho di Microsoft ha proposto per discussione nella mailing list degli sviluppatori del kernel Linux la seconda versione delle patch con un insieme di wrapper sopra il sottosistema VFS, destinati allo sviluppo di file system in Rust che operano in modalità di sola lettura. Insieme ai wrapper, sono stati pubblicati due driver basati su di essi con implementazioni dei file system ext2 e tarfs, funzionanti in modalità di sola lettura. A differenza della precedente implementazione del file system Ext2 in Rust — ext2-rs, la nuova versione opera a livello di kernel (modulo rust_ext2), anziché nello spazio utente. Il driver rust_ext2 contiene circa 700 righe di codice in Rust e può essere utilizzato come punto di partenza per lo sviluppo di implementazioni di file system più complesse, come Ext4.
Il file system tarfs consente il montaggio di archivi in formato Tar come file system. Il driver utilizza un indice associato ai file tar per navigare tra i file all'interno dell'archivio senza dover scorrere tutto il contenuto.
Si sviluppa separatamente un altro file system in Rust, che utilizza il layer di astrazione proposto, chiamato PuzzleFS. PuzzleFS è progettato per ospitare container isolati e offre funzionalità come la memorizzazione efficiente dei dati duplicati, il montaggio diretto, la ricostruzione ripetuta delle immagini, una costruzione e un montaggio delle immagini molto rapidi, la possibilità di utilizzare una fase intermedia per la trasformazione (canonicalization) delle immagini, la non obbligatorietà di percorsi completi attraverso l'albero del file system quando si utilizza una struttura multilivello e l'applicazione di modifiche in stile casync.
Fonte: opennet.ru
