A virtual filesystem standard

Havoc Pennington hp at redhat.com
Fri Sep 5 07:12:32 EEST 2003


On Fri, Sep 05, 2003 at 05:17:11AM +0200, Vincent Wagelaar wrote:
> 
> Is there any work being done on a standard VFS implementation that is desktop 
> neutral? It would be great if all applications could be made VFS-aware.
> 

Not that I know of. Some people at Nove Hrady had a cool idea for how
to approach this, which was to define a way to write an out-of-process 
VFS backend. In other words, you would define a protocol and way to
launch an executable to use that executable as a VFS backend. 
There would be a conventional place to install a VFS backend binary 
and some kind of metadata file describing the features the backend 
provided, name of the backend, etc.

The reason this is a cool approach is that then multiple parties can
drop in backends and the backends can link to any kind of library.
The backends are fully encapsulated.

You would also have a migration path for gnome-vfs and kioslave since
they could simply have a dlopen() in-process backend that knew how to
talk to the out-of-process executable backends and could freely choose
between the shared backends and their own native backends.

We could then offer implementations of some of the basic backends such
as http in a freedesktop.org package.

The other suggestion I think is important for working on the VFS is to
have a queryInterface()-style approach, where a backend is only
required to support a very limited set of operations (such as "get
entire file contents"), but can be queried for optional features such
as "supports write", "supports move", "supports symlinks", etc. and
those features would then be used only if available.

So those are two ideas for how to approach the problem - we just need
someone to read the gnome-vfs and kioslave and nautilus/konqueror code
and start coding on a shared solution.

Havoc






More information about the xdg mailing list