F2FS potrà usare ZSTD per la compressione
Di sicuro la varietà di filesystem disponibili è ormai una caratteristica di Linux, e tale abbondanza è dovuta all’architettura del Kernel: piuttosto che integrare ogni filesystem internamente, è disponibile un’interfaccia standard (VFS – Virtual FileSystem) che l’implementazione del filesystem deve rispettare. In questa maniera lo sviluppo di filesystem alternativo diventa (relativamente) facile, mentre il Kernel dovrà preoccuparsi di una sola interfaccia, idealmente senza richiede modifiche.
Samsung qualche tempo fa si è dedicata alla creazione di un nuovo filesystem specificatamente studiato per la memoria usata dai cellulari, sfruttando la presenza Kernel Linux in Android per l’implementazione, prendendo spunto per il nome da quello delle memorie stesse: Flash-Friendly File-System, abbreviato in F2FS.
Ora il principale sviluppatore è Huawei.
L’obbiettivo è usare logiche di allocazione dei dati che permettano prestazioni superiori rispetto ai filesystem generici.
Un primo metodo particolare è poter impostare parametri tecnici specifici per ogni device al mount, come opzioni. Normalmente, le opzioni regolano come il Kernel comunica attraverso VFS, non come si deve comportare il filesystem nelle sue logiche interne.
Inoltre, le memorie Flash non sono riscrivibili all’infinito (per quanto il numero permesso di riscritture dovrebbe garantire decenni di uso), quindi una delle caratteristiche peculiari diventa la riduzione al minimo delle operazioni di scrittura.
E forse in quest’ottica, già per il Kernel 5.6 era stata aggiunta la compressione trasparente dei dati. Questa opzione, presente in altri filesystem Linux (come btrfs), ma anche nell’NTFS di Windows fin dagli esordi, consiste nel comprimere i dati dei file prima di scriverli sul disco: nella maggior parte delle situazioni, si usa meno spazio – il che indica anche un minor numero di operazioni di scrittura.
Per la compressione sono stati impiegati LZO ed LZ4: algoritmi leggeri, adatti alla limitata potenza di calcolo della maggior parte di dispositivi mobili, che al costo di rapporti di compressione modesti garantisce velocità nell’esecuzione. Dettaglio questo non trascurabile, per non introdurre lentezze nelle operazioni su disco.
Negli ultimi tempi un algoritmo sta diventando monopolista: zstd. Questo algoritmo riesce a coniugare alta velocità di decompressione (ma anche compressione) con risparmi di spazio notevoli. Ed è anche già usato per lo stesso scopo in btrfs, nonché previsto per ZFS.
Anche F2FS implementerà questa alternativa. Sono gli amici di Phoronix a raccontarci che, per il Kernel 5.7, sembra sia pronta la patch. Il default sarà LZ4 (più veloce di LZO ma con prestazioni di compressioni simili), ma zstd sarà disponibile.
L’uso ottimale di F2FS prevede la conoscenza di dettagli tecnici piuttosto particolari, ma le caratteristiche intrinseche potrebbero renderlo molto attraente per tutte quelle situazioni in cui la memoria principale sia del tipo flash. Sì, il caso tipico è (il solito) Raspberry.
L’uso della compressione (come per zswap) risulterà molto utile sia per prestazioni che – soprattutto – per longevità del sistema, e la possibilità di avere zstd è davvero interessante.
Non ci resta che aspettare il Kernel 5.7 su Raspbian… o tenterete prima?
Fonte: https://www.miamammausalinux.org/2020/03/f2fs-potra-usare-zstd-per-la-compressione/
Se vuoi sostenerci, puoi farlo acquistando qualsiasi cosa dai diversi link di affiliazione che abbiamo nel nostro sito o partendo da qui oppure alcune di queste distribuzioni GNU/Linux che sono disponibili sul nostro negozio online, quelle mancanti possono essere comunque richieste, e su cui trovi anche PC, NAS e il ns ServerOne. Se ti senti generoso, puoi anche donarmi solo 1€ o più se vuoi con PayPal e aiutarmi a continuare a pubblicare più contenuti come questo. Grazie!
Hai dubbi o problemi? Ti aiutiamo noi!
Se vuoi rimanere sempre aggiornato, iscriviti al nostro canale Telegram.Se vuoi ricevere supporto per qualsiasi dubbio o problema, iscriviti alla nostra community Facebook o gruppo Telegram.
Cosa ne pensi? Fateci sapere i vostri pensieri nei commenti qui sotto.
Ti piace quello che leggi? Per favore condividilo con gli altri.