Re: Filesystem question
Quoth sdmj kjh: I need to develop a (network-)distributed file system, for Linux. How do I go about doing that? Yerk, you're climbing a high mountain. I know I need to write: 1. kernel code (preferably as a module) to register as a VFS provider (is wording accurate?) 2. user-space daemons (much like NFS) to handle all that which doesn't have to take place inside the kernel. You need to decide whether you're NAS or SAN (i.e. file or block access). You need to decide locking semantics. You need to decide caching semantics. Once you do that, you can start pushing code. Also - you could do it entirely in userspace... I also know that there's a raw-device-over-network (see NBD) approach and a file-system-over-network (see samba) approach. Which do you believe is better suited for a general purpose distributed file system? General purpose in what sense? There are too many general purposes. M -- ---OFCNL This is MY list. This list belongs to ME! I will flame anyone I want. Official Flamer/Cabal NON-Leader [EMAIL PROTECTED] = To unsubscribe, send mail to [EMAIL PROTECTED] with the word unsubscribe in the message body, e.g., run the command echo unsubscribe | mail [EMAIL PROTECTED]
Re: Filesystem question
I was hoping for some pointers about writing filesystems under Linux (preferably under 2.6). General purpose, as in all-round good performance. small/big files, heterogenous network, etc. I want both: dd if=/mnt/myFS/mybigfile of=/myext2/b bs=10M count=200 and cd /mnt/myFS/src/linux make bzImage and find /mnt/myFS -name * -print /dev/null to not suffer too much from being run on a distributed filesystem. Official Flamer/Cabal NON-Leader [EMAIL PROTECTED] wrote: Quoth sdmj kjh: I need to develop a (network-)distributed file system, for Linux. How do I go about doing that? Yerk, you're climbing a high mountain. I know I need to write: 1. kernel code (preferably as a module) to register as a VFS provider (is wording accurate?) 2. user-space daemons (much like NFS) to handle all that which doesn't have to take place inside the kernel. You need to decide whether you're NAS or SAN (i.e. file or block access). You need to decide locking semantics. You need to decide caching semantics. Once you do that, you can start pushing code. Also - you could do it entirely in userspace... I also know that there's a raw-device-over-network (see NBD) approach and a file-system-over-network (see samba) approach. Which do you believe is better suited for a general purpose distributed file system? General purpose in what sense? There are too many general purposes. - Do you Yahoo!? Exclusive Video Premiere - Britney Spears = To unsubscribe, send mail to [EMAIL PROTECTED] with the word unsubscribe in the message body, e.g., run the command echo unsubscribe | mail [EMAIL PROTECTED]
Re: Filesystem question
Quoth sdmj kjh: I was hoping for some pointers about writing filesystems under Linux (preferably under 2.6). I suggest you read what filesystem design books you can find. Filesystem design, in general, is not a science - it is an art. If you're working on a distributed filesystem in earnest, read the Paxos paper. It is about a somewhat weird subject - concensus - but is needed for distrib work. There are VERY many books on that. General purpose, as in all-round good performance. small/big files, heterogenous network, etc. I want both: dd if=/mnt/myFS/mybigfile of=/myext2/b bs=10M count=200 and cd /mnt/myFS/src/linux make bzImage and find /mnt/myFS -name * -print /dev/null to not suffer too much from being run on a distributed filesystem. Well, this, already, is a VERY tall order. Lese: Case 1 is a hefty read. Case 2 is a a mixed read/write. Case 3 is a stat. These are so very different that you will have your work cut out for you. -- ---OFCNL This is MY list. This list belongs to ME! I will flame anyone I want. Official Flamer/Cabal NON-Leader [EMAIL PROTECTED] = To unsubscribe, send mail to [EMAIL PROTECTED] with the word unsubscribe in the message body, e.g., run the command echo unsubscribe | mail [EMAIL PROTECTED]