Logfs

LogFS  este un sistem de fișiere pentru Linux , optimizat pentru montarea rapidă a unităților flash mari . Dezvoltatorul principal este Jörn Engel [1] .

Descriere

Crearea LogFS a fost dictată de dificultatea JFFS2 atunci când lucrați cu unități Flash mari. LogFS stochează inodul arborelui pe disc, în timp ce JFFS2 nu, ceea ce necesită scanarea întregului disc pe montare și memorarea în cache a întregului arbore în RAM . Pentru discuri mari, scanarea poate dura câteva zeci de secunde, iar un arbore poate ocupa o cantitate semnificativă de RAM. LogFS evită această suprasarcină, dar lucrează mai mult în timp ce sistemul rulează și folosește puțin spațiu pe disc pentru a stoca noduri de arbore.

LogFS stochează inodurile fișierelor arborelui pe disc, ceea ce înseamnă că atunci când scrieți într-un fișier, fiecare nod părinte din arbore trebuie suprascris. Cele mai de jos noduri din arbore (adică datele) sunt scrise mai întâi, fiecare nod scris ascendent până la rădăcina arborelui până când inodul rădăcină este actualizat. Intrarea rădăcină este ultima care asigură atomicitatea actualizării.

Un bloc Flash este o unitate de ștergere și este, în general, mai mare decât un bloc de sistem de fișiere. LogFS gestionează această nepotrivire împachetând mai multe blocuri de sistem de fișiere într-un singur bloc Flash. Când toate blocurile sistemului de fișiere incluse într-un bloc Flash sunt mutate sau șterse, blocul Flash poate fi șters și utilizat pentru date noi.

Starea actuală

Începând cu noiembrie 2008, LogFS era suficient de matur pentru a trece întreaga suită de testare înainte de a fi inclus în ramura principală a nucleului Linux , în versiunea 2.6.34 lansată pe 16 mai 2010 și marcată ca „experimentală”.

Cele mai recente surse LogFS sunt disponibile pe GitHub [2] .

Vezi și

Note

  1. Ian Kleinert, Achim Leitner. Memoria flash și sistemul de fișiere LogFS. Prietenul flash  (engleză)  (link indisponibil) . Revista Linux (1 ianuarie 2008). Arhivat din original pe 3 septembrie 2014.
  2. prasad-joshi/logfs_upstream GitHub . Preluat la 24 septembrie 2013. Arhivat din original la 10 iunie 2018.

Link -uri