Creating a virtual file system

Jorgen Grahn jgrahn-nntq at algonet.se
Sun Aug 7 06:34:28 EDT 2005


On 5 Aug 2005 16:47:08 -0700, Atila Olah <jolafix at gmail.com> wrote:
> I'm working on a project to implement a simple cross-platform file
> sharing protocol (using Python) that is similar to HTTP, and I have to

Like WebDAV, then?

> My question is: How do I implement a virtual partition that acts like a
> real file-system and is compleatly transparent to other programs?
> Should I make a virtual file allocation table for a FAT32 partition or
> simulate an NTFS? Or even further: How do I create a junction (or a
> hard link) to it in "My network places" or in "Entire Network"?

You're asking in the wrong group completely. What you are trying to do is to
extend the Windows kernel. This is almost certainly a difficult and
dangerous task, and it will require C or C++ programming against Windows
APIs that may or may not be available to mere mortals.

On the other hand, if you can get such a thing to work, it would be very fun
and useful.

It's easier on Linux, but probably not /easy/. Google for "user space file
system" and "webdav file system".

Also note that this has nothing to do with FAT32 or NTFS. Those describe two
different physical layouts of bits on a disk, and there's a driver for each
that expose them to the kernel as a set of read/write/list directory calls.
Your file system driver will have to expose the same calls, but implement
them in a completely different way that has nothing to do with bits on a
disk. 

/Jorgen

-- 
  // Jorgen Grahn <jgrahn@       Ph'nglui mglw'nafh Cthulhu
\X/                algonet.se>   R'lyeh wgah'nagl fhtagn!



More information about the Python-list mailing list