Title: LLFS; a copy-on-write file system for Linux
Language: English
Authors: Levrinc, Rastislav 
Qualification level: Diploma
Keywords: LLFS; Dateisystem; Copy-On-Write; Snapshots; Clones
LLFS; file system; filesystem; copy-on-write; snapshots; clones
Advisor: Ertl, Martin Anton
Issue Date: 2008
Number of Pages: 69
Qualification level: Diploma
Abstract: 
Diese Diplomarbeit beschreibt das Design und Implementation von LLFS, einem Linux-Dateisystem. LLFS kombiniert Clustering mit Copy-On-Write.
Copy-On-Write überschreibt belegte Blöcke nicht zwischen Commits; Durch das Clustering bleibt die LLFS-Geschwindigkeit vergleichbar mit Clustered-Dateisystemen wie Ext2. Copy-On-Write ermöglicht neue Features wie zum Beispiel Snapshots, beschreibbare Snapshots (Clones) und schnelle Crash-Recovery zu einem konsistenten Dateisystem-Zustand. Gleichzeitig hilft das Clustering, die Fragmentierung niedrig und Geschwindigkeit hoch zu halten.
Clustering wird mit Ext2-ähnlichen Gruppen und Free-Blocks-Bitmaps für das Belegen und Freigeben von Blöcken erreicht.
Journaling Dateisysteme wie Ext3 brauchen ein Journal und schreiben Blöcke doppelt. Mit Hilfe von Copy-on-Write vermeidet LLFS diese Kosten. Aufgrund der Free-Blocks-Bitmaps braucht LLFS keinen Cleaner wie Log-Strukturierte Dateisysteme. Trotzdem bietet LLFS die kombinierte Funktionalität von Journaling und Log-Strukturierten Dateisystemen.
Ich habe LLFS aufbauend auf Ext2 implementiert, und ich habe die Performance getestet. Die Benchmarks zeigen, dass LLFS ähnliche und in einigen Fällen bessere Resultate als Linux-Journaling-Dateisysteme erreicht.

This thesis discusses the design and implementation of LLFS, a Linux file system. LLFS combines clustering with copy-on-write. With copy-on-write no allocated blocks are overwritten between commits, and thanks to the clustering the speed of LLFS remains comparable with clustered file systems such as Ext2.
Copy-on-write opens new possibilities for features like snapshots, writable snapshots (clones) and fast crash recovery to the consistent state of the file system, while the clustering helps to keep fragmentation low and speed high.
Clustered reads and writes are achieved with Ext2-like groups and free-blocks bitmaps for allocating and freeing of blocks. Journaling file systems like Ext3 need to keep a journal and write blocks twice; By using copy-on-write, LLFS avoids these overheads. By using free-blocks bitmaps, it does not need a cleaner like log-structured file systems. Yet LLFS offers the combined functionality of journaling and log-structured file systems.
I have implemented LLFS starting from the Ext2 file system and tested the performance. The benchmarks have shown that LLFS achieves similar performance and in some cases better than Linux journaling file systems.
URI: https://resolver.obvsg.at/urn:nbn:at:at-ubtuw:1-28018
http://hdl.handle.net/20.500.12708/10774
Library ID: AC05037518
Organisation: E185 - Institut für Computersprachen 
Publication Type: Thesis
Hochschulschrift
Appears in Collections:Thesis

Files in this item:

File Description SizeFormat
LLFS a copy-on-write file system for Linux.pdf437.04 kBAdobe PDFThumbnail
 View/Open
Show full item record

Page view(s)

18
checked on Feb 25, 2021

Download(s)

60
checked on Feb 25, 2021

Google ScholarTM

Check


Items in reposiTUm are protected by copyright, with all rights reserved, unless otherwise indicated.