From: "Francis Moreau" <francis.moro@gmail.com>
To: "Avishay Traeger" <avishay@gmail.com>
Cc: "Matthew Wilcox" <matthew@wil.cx>, linux-fsdevel@vger.kernel.org
Subject: Re: Which fs is a good example for learning ?
Date: Tue, 6 Jan 2009 09:49:32 +0100 [thread overview]
Message-ID: <38b2ab8a0901060049r18bb1d8do18a51ed4c3830ddf@mail.gmail.com> (raw)
In-Reply-To: <c41302d20901052214j56a34b38h3a89f94b540be006@mail.gmail.com>
On Tue, Jan 6, 2009 at 7:14 AM, Avishay Traeger <avishay@gmail.com> wrote:
> On Mon, Jan 5, 2009 at 10:59 PM, Matthew Wilcox <matthew@wil.cx> wrote:
>>
>> On Mon, Jan 05, 2009 at 09:40:50PM +0100, Francis Moreau wrote:
>> > I'd like to learn how file systems work on Linux and I don't know
>> > which file system driver I should look at to get a good picture of
>> > how a contemporary file system is designed.
>> >
>> > The choice has to be made according some criterias: the fs shouldn't
>> > be too hard since I'm pretty new in this area. Also not too
>> > old/obsolete since I'd like to learn from current technology.
>>
>> You're giving some contradictory criteria. ext2 is probably the best
>> example to learn the basics, then you can move on to whichever
>> filesystem catches your fancy.
>
> This is all a matter of opinion obviously, but I would personally start with
> ramfs - it's only a couple hundred lines of code, and is very simple since
> everything resides only in memory. This is useful for looking at the API
> and code flow. Then you can go to a disk-based file system like ext2 which
> is a bit more complex but closer to what you're probably looking for.
>
ramfs seems a good example for learning the page cache. But since it's not
a disk based filesystem, it doesn't cover the block dev layer (bio, elevator...)
and more important all data structures used on the disk.
thanks
--
Francis
next prev parent reply other threads:[~2009-01-06 8:49 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-01-05 20:40 Which fs is a good example for learning ? Francis Moreau
2009-01-05 20:59 ` Matthew Wilcox
2009-01-06 6:23 ` Avishay Traeger
2009-01-06 8:46 ` Francis Moreau
2009-01-06 13:36 ` Matthew Wilcox
2009-01-06 14:30 ` Francis Moreau
[not found] ` <c41302d20901052214j56a34b38h3a89f94b540be006@mail.gmail.com>
2009-01-06 8:49 ` Francis Moreau [this message]
2009-01-06 11:44 ` Jamie Lokier
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=38b2ab8a0901060049r18bb1d8do18a51ed4c3830ddf@mail.gmail.com \
--to=francis.moro@gmail.com \
--cc=avishay@gmail.com \
--cc=linux-fsdevel@vger.kernel.org \
--cc=matthew@wil.cx \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).