A New Open Source Virtual File System – Running on Windows in User Mode!

By James Cain

We have developed our own File Server by using a SMB2/3 implementation running on Windows in User mode; it’s easier than writing a Kernel-Mode File System driver! This has now been open sourced using an Apache 2 license. We are hoping to build a community to build FUSE for Windows.

This presentation will demonstrate the power of running Virtual File Systems in user mode, with plenty of live examples of doing things that you just can’t do in a normal filesystem - like embedding a database (remember WinFS anyone?).

This talk then progresses to discuss the power of allowing programable recipes in filepath names. To explain, one example Filesystem driver enables the generation of media files to order - Just in Time rather than Just in Case. We will demonstrate adding the power of a Python interpreter to our VFS, and discover the power of allowing simple composable functions as folder names. We are programming the filepath.

The presenter will include multiple live demonstrations of the techniques he has invented using these technologies during the talk. Learning Objectives:

  • Learn how elegant, simple and well documented the SMB2/3 protocol really is.

  • Learn how hard it is to develop an SMB2/3 server. (Hint: we provide solutions to the hard bits).

  • Learn how much of Windows can be re-used to develop an SMB2/3 server.

  • Get some ideas of what you can do with a user mode file system for your own projects - and some of them really are very naughty :-)