From: Valient G. <vg...@po...> - 2005-05-18 18:55:00
|
On Wednesday 18 May 2005 20:19, Joshua J. Berry wrote: > On Wed, May 18, 2005 at 07:43:00PM +0200, Valient Gough wrote: > > If you are interested in the kernel level communication, you can look in > > the kernel/fuse_kernel.h header file which shows the structures the FUSE > > kernel module uses for communicating with user programs (like libfuse). > > Yeah, that's what I've been looking at. I have decided I want an > Inode-based interface for my filesystem (which is in C++), hence my > question. A small warning -- using the kernel interface isn't as easy as using the interface that libfuse provides.. The kernel interface has changed more often then the libfuse interface, and it isn't as well documented. If you are going to write an interface to the FUSE kernel module, consider that you are writing a replacement for libfuse in addition to your filesystem. I have a C++ filesystem (freshmeat.net/projects/encfs) which uses libfuse. Miklos has added a lot of functionality to the libfuse api lately, so I think I wouldn't gain all that much in moving over to an inode based interface... There's been talk about inode based interfaces on this list before, you might check the archives - I know there had been some work on an inode interface layer. regards, Valient |