[haiku-development] Re: Learning about file systems

  • From: "Axel Dörfler" <axeld@xxxxxxxxxxxxxxxx>
  • To: haiku-development@xxxxxxxxxxxxx
  • Date: Thu, 22 Apr 2010 23:14:46 +0200

Emil Ahlbäck <e.ahlback@xxxxxxxxx> wrote:
> My name is Emil and I'm a newcomer to Haiku, although I've been a fan
> for a
> few years. I'm currently learning C++ with prior (yet a poor)
> experience
> with C. While studying I've been dreaming and planning projects in my
> head,

That's always a good thing for motivation :-)

> and recently I've been coming back to file systems for some reason.
> So I've
> been reading "Practical file system design" a bit, and I've absorbed
> some
> information. I'm thinking that BeFS is quite advanced and that another
> file
> system would fit better as "a first file system"...?
> I've read about FAT16/FAT32's design and it seems "simple". Would
> this be a
> great place to start?

The FAT code is pretty messy and not really something one should learn
from (at least not as positive example).
If you want to learn I guess a good start is looking at how the boot
loader file system's are implemented (the Amiga FFS would be the
simplest FS there). As a next step when going to the kernel (which just
has a broader API to implement), the ext2 file system is a very simple
and easy to understand one, and the implementation should be relatively
clean and straight-forward.


Other related posts: