FUSE for Windows

After Google Code have released MacFUSE, an open-source Mac port of the FUSE mechanism. FUSE is now available for Linux, FreeBSD and Mac OS X. The next step is to get FUSE ported to Windows, which would make FUSE truly cross platform, and give developers the capabilities to write a file system once, and deploy it on all major platforms.

I have submitted a application to Sourgeforge.net to host the project. The port will be based on the Shell Namespace Extension facility in Windows.

18 Responses to “FUSE for Windows”

  • I strongly reccomend you do not implement windows fuse as a shell namespace extension – if you do your applications will be crippled.

    The correct (though much harder) way to do this is as an Installable File System (IFS), or possibly using the newer User Mode Filesystem (UMFS) toolkit which provides a simpler COM interface to IFS.

    This will give true low-level access to the OS and so all programs will work seamlessly with your FUSE filesystem.

    PS> I will be very interested in an IFS or UMFS implementation, and in the meantime I will probably have a hack at the latter for my own project (plan9 drivers under Windows).


  • Ville det ikke vaere at foretraekke at skrive FUSE til windows som en network redirector? Jeg syntes det namespace halloej er en noget grim loesning.

  • i will suggest you to go through the code of
    an open source ext2 file system driver for winnt/win2k/winxp
    it may help you in the implmentation.

    bye :-)
    Ashish Ranjan

  • Did you get accepted for this project? I’m very interested/curious to see how this turns out…Good Luck! :)

  • I don’t know anything yet. I am waiting for April 11th. Thanks for the luck.

  • I’m curious too! Greetings from Torino (Italy) — Volker

  • Ouch. Should not have been used the umlaut… Sorry.

  • You might want to look at Callback File System ( http://www.eldos.com/cbfs/ ). It’s currently in beta stage.

  • Derick, Volker:
    Unfortunately I wasn’t selected for GSoC. I applied for both Google with FUSE for Windows as an alternate application, and for PHP with an NTLM Authentication PECL extension. I havn’t gotten any feedback from Google, but PHP said my application was good, but they would focus on core functionality this year. Anyway that just means that we are working on another timeline. But serious development will start in 2 months time when I have graduated.

    I have brought a new machine, which is currently only running a terminal server (to replace VMware on my laptop), but it is mostly intended as development platform for FUSE for Windows as well as AD for testing my NTLM Authentication extension.

    Have you checked the license for Callback File System? CBFS is incompatible with The Open Source Definition[1]. It doesn’t allow me distribute the source code of a project using CBFS (not even if I pay them $60,000) Therefore it doesn’t satisfy the need for a FUSE for Windows.

    [1] http://www.opensource.org/docs/definition.php

  • Dear Asbjorn,

    sorry for the bad news.

    Anyway, to avoid the windows kernel-hell, you can also implement a local CIFS/SMB server as Richard Heinrich from palissimo did: http://www.palissimo.de/ (look for: WinFUSE).

    All the best — Volker

  • I have though about it for a few milliseconds, what I want to do is to implement it at as low a level as possible for performance. I don’t want to run though a reverse engineered protocol. I a FUSE device to appear as a disk device to Windows, so its not only possible to map it as a network drive, but to map the partition to a drive letter and/or a folder. I will rather go though the windows kernel hell, than get a half done solution, and maybe I will end up learning something from it.

  • I totally agree with you. Let me know when you start riding your hell-driver thing, all the best for your exams — Volker

  • Man, this would be SOOOO sweet to get implemented.

    You’ve got the vision, now we all just hope you have the drive.

    Good luck on the exams, and let us know how it goes…

  • 4) All deliverables will be considered “work made for hire”
    under U.S. Copyright law. Buyer will receive exclusive and
    complete copyrights to all work purchased, except for
    GPL/LGPL license issued to public. The software shall not
    be based on any GPL / LGPL or any other licensed code.

    I don’t wanna wait for another closed source implementation.

    BTW: I have my last exam June 25th. I shoud properly continue writing my danish essay, 3.5 hours left.

  • Hi,

    I’ve understood the terms differently, see (5)

    5) Buyer respects opensource software movement. Buyer encourages to publish produced program with all source codes under GPL/LGPL license on sourceforge.net under name fuse-win32 and maintain indepentently this FUSE-compatible API for the benefits of opensource community.

    The restriction in (4) is the fact that the library itself should not be dependent on (L)GPL’ed software.

    Good luck with the essay and the rest of your exams!

  • My fault, lets see I we hear anything from that front anytime soon. If the winning bidder reads this you are more welcome to contact me. Personally I will use the next month on getting my exams done, and some unfinished projects related to my current school. Thanks for the info, I havn’t noticed.

  • So, what is the current status of the project ?

Comments are currently closed.