Re: File System Project

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



instead of starting a new project, why not answer a few questions:

what are all the key functions traversed when creating a new file?
new directory?   new symlink?

conceptually it should involved functions that:

a.   allocate a new inode.
b.   allocate some blocks of space.
c.   updating the blocks and inodes.
d.   connecting the blocks and inodes metadata with the previous
metadata information.
e.   identifying the type of filesystem where the current directory
(where file is to be created) reside - supernode information.

Looking at fs/ext2/namei.c and looking for ext2_new_inode(), we can
see all the all the top level functions that called ext2_new_inode():
 ext2_create, ext2_symlink, etc, and if you follow through other
functions called, u can get a fairly good overview of its internal.

Check the following out:

http://ftp.metu.edu.tr/pub/samba/samba/cifs-cvs/

Look for the following tutorials on how to create a new filesystem, as
well as a samplefs:

[ ]	ols2006-fs-tutorial-smf.odp	20-Jul-2006 19:21 	1.9M	
[ ]	ols2006-fs-tutorial-smf.pdf	03-Jan-2007 20:20 	688K	
[ ]	ols2007-fs-tutorial-smf.odp	27-Jun-2007 07:52 	1.9M	
[ ]	ols2007-fs-tutorial-smf.pdf	27-Jun-2007 07:52 	1.2M	
[ ]	ols2007-paper-smb2-french.pdf	29-Jun-2007 10:25 	555K	
[ ]	ols2007-smb2.pdf	29-Jun-2007 10:23 	1.8M	
[ ]	samplefs-2006-ols.tar.gz	19-Jul-2006 08:57 	8.3K	

and this four key articles:

http://www.geocities.com/ravikiran_uvs/articles/index.html

etc etc.....

On Sat, Mar 7, 2009 at 3:01 AM, Shyam Burkule <shyam.burkule@xxxxxxxxx> wrote:
> Hello All,
>
> Can you provide me with some project idea in file system that help to
> understand file system stack.
>
> Thanks
>   Shyam
>



-- 
Regards,
Peter Teoh

--
To unsubscribe from this list: send an email with
"unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx
Please read the FAQ at http://kernelnewbies.org/FAQ



[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux