[haiku] Re: [GSoC idea] IMAP FS

  • From: Stephan Aßmus <superstippi@xxxxxx>
  • To: haiku@xxxxxxxxxxxxx
  • Date: Mon, 28 Mar 2011 15:33:06 +0200

Hi,

first of all, welcome!

Am 28.03.2011 13:52, schrieb Anshul Singhle:
  I'm Anshul Singhle, a sophomore undergraduate student at Indian
Institute of Technology, Kharagpur. I'm interested in  taking a project
from your organization for GSoC. As described by your Ideas page, the
project would allow users to mount their IMAP accounts as a Filesystem .
I have developed filesystems using FUSE in the past. I very recently
developed a FUSE-based versioning filesystem with COW(Copy-on-Write )
functionality. The Filesystem was basically a wrapper on Git with some
tweaking to allow versioning of individual files instead of directories.
I had a look at userlandFS and default I was thinking of implementing
the IMAP filesystem using userlandFS. Do you think that is wise? I
could not find much documentation on userlandFS so  if someone could
help, that'd be great. I'm currently going through the book on
filesystem design by Dominic Giampaolo . I have an inkling that the
userlandFS implementation would be a preliminary step and eventually i
would have to write a kernel level implementation.

Comments and feedback wou;d be greatly appreciated

The IMAP FS project is a great one, IMHO. Your FUSE experience seems to a be a good match as well. The BFS book is a good read on the topic of queries and file systems in general within BeOS. The API for file system add-ons has changed in Haiku, though, but it is documented at api.haiku-os.org. The API for UserlandFS add-ons is very similar, since it is designed with the idea of writing your file system first in user land, with easier debugging, and then making a real kernel add-on from it with minimal overhead.

The UserlandFS does however support the FUSE API as well, so one could also easily port an existing FUSE implementation. But obviously when one wants to make a real kernel add-on from that, one would have the porting overhead/challenge there.

The UserlandFS server is missing some features which would allow it to integrate better. Features like auto-mounting or partitioning are not easily available as a result. If the IMAP FS implementation shall stay in userland, the UserlandFS may need to be extended, although the missing features may not affect the IMAP FS so much, I don't know.

Best regards,
-Stephan

Other related posts: