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

Re: Linux Kernel Internals



> So I'm going to take a shot in the dark... Is there by chance a kernel
> guru lurking on this list?  I'm attempting to write a virtual file
> system and I need some help with it.
> 
> The basic idea is to use a database back end to store a file system in
> order to dynamically generate directories and files.

I've developed some VFS systems, but not down in the kernel with 'driverfs'.
That's the module you're wanting to be best new friends with.

The user-space services are Samba, NFS, Apache (WebDAV), and writing an FTP
proxy that works at the application layer. FTP is the best known implementation
of a virtual file system, but it's not easy to implement an active FTP proxy. It
gets even more difficult with RFC2228. But those are all network/socket-based
accessible filesystems. You want something that you can mount and use locally.

Then there is this notion that the file system itself is the database, not the
other way around. The PICK OS implemented this idea as far back as the 80s.

IIRC, there were some articles in the Linux Journal on writing a VFS kernel
driver. That may be a good starting point. Found 'em. URLs below.

http://www.linuxjournal.com/article.php?sid=6485 (May, 2003)
I can lend you my meatspace version of the magazine if you want it.
BTW, the author's FiST project homepage has moved.
It's now at http://www1.cs.columbia.edu/~ezk/research/fist/
Not at http://www.cs.sunysb.edu/~ezk/research/fist like the article says.

Also, check out http://www.parl.clemson.edu/pvfs/

And Google sez:

http://www-2.cs.cmu.edu/~mihaib/fs/fs.html (dated (1997), but w/references at
the bottom)

http://www.win.tue.nl/~aeb/linux/lk/lk-10.html (the Linux VFS, this is what you
need to write)

http://www.linux.it/kerneldocs/vfs/vfs.html (Another, older LJ article I mentioned)

Then there's Alessandro's book _Linux Device Drivers_, which is online
at http://www.xml.com/ldd/chapter/book/

You might want to look for information on the procfs (/proc) which is a VFS
imlpementation, turning kernel information into "files".

Another good source is information on cryptoFS drivers - they too implement a VFS.

Good luck.

Mike/

---------------------------------------------
http://www.valuenet.net



-
To unsubscribe, send email to majordomo@silug.org with
"unsubscribe silug-discuss" in the body.