From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Avishay Traeger" Subject: Re: Which fs is a good example for learning ? Date: Tue, 6 Jan 2009 08:23:33 +0200 Message-ID: References: <20090105205945.GJ2002@parisc-linux.org> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Cc: "Francis Moreau" , linux-fsdevel@vger.kernel.org To: "Matthew Wilcox" Return-path: Received: from yx-out-2324.google.com ([74.125.44.29]:58704 "EHLO yx-out-2324.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751064AbZAFGXe (ORCPT ); Tue, 6 Jan 2009 01:23:34 -0500 Received: by yx-out-2324.google.com with SMTP id 8so2441592yxm.1 for ; Mon, 05 Jan 2009 22:23:33 -0800 (PST) In-Reply-To: <20090105205945.GJ2002@parisc-linux.org> Content-Disposition: inline Sender: linux-fsdevel-owner@vger.kernel.org List-ID: On Mon, Jan 5, 2009 at 10:59 PM, Matthew Wilcox 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. Avishay