Krzysztof Mazur's Personal Page

Index Software Hardware

Log-Structured Block Device

LSBD (Log-Structured Block Device) is a block device on top of crappy flash block devices like some SSD or Compact Flash disks. The LSBD is designed to provide quite reliable block device with reasonable write performance on top of such devices.

With LSBD you can use normal filesystem like ext3 on such devices with reasonable performance. The performance will be probably worse than in case of specialized flash filesystem, however implementation of block device is simpler, especially when redundancy is wanted.

The LSBD was designed because of very poor and highly non-deterministic random write performance on new Compact Flash disks. The old CF disks provided 20 ms maximal write latency which was acceptable, but single write on some new CF disks may take even more than 500 ms (I saw even more than 1s on some crappy Transcend SSD disk). LSBD addresses this problem by using only linear write.

Source code

Git repository

git://git.podlesie.net/km/linux-2.4.git lsbd

$ git clone git://git.podlesie.net/km/linux-2.4.git
$ cd linux-2.4
$ git checkout lsbd

Patches

LSBD for Linux 2.4.37 (separate patches)
Old patch for Linux 2.4.37

Userspace utilities for creating/mounting/checking LSBD

LSBD utilities


Polski English


Please send comments on these web pages to krzysiek at podlesie period net.

Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014 Krzysztof Mazur
Verbatim copying and redistribution of this entire page are permitted provided this notice is preserved.

Valid HTML 4.01 Valid CSS!