Your account



(?)
Add to your personal schedule

GIO/GVfs Illustrated 2: The Implementation

Catwalk, Tangle Medium

With GNOME 2.22 the old and aging virutal filesystem layer (vfs) for GNOME, namely GnomeVFS, has been replaced with a new one that was written from scratch. The new vfs layer consists of two parts: The first part, GIO, is shipped as a part of glib, and with that it is at the very bottom of the GNOME stack. It is therefore available to all programs on any platform that glib runs on thus providing a common file system abstraction on various system. GIO also provides the implementation for all local non-virtual files. The other part is GVfs which provides and out-of-process implementation for all other file access, not limited to but foremost access to remote filesystems. That this access is provided out-of-process is also part of the new stateful design of GIO/GVfs, which is another big difference to GnomeVFS. This means that once a connection to a remote filesystem has been established, or in GIO terms, the filesystem has been mounted, it is usable by all other GIO clients without the need to establish their own connection.

Despite the talk that Alexander Larsson gave last GUADEC this talk aims to provide a more in-depth insight into the actual design and the implementation of GIO and GVfs. This means it will cover a detailed overview of the client side, i.e. the GIO API, but also cover some implementation bits for the most important parts. I hope to give the talk in a way that it can be interesting for everybody that wants to know how all this actually works from the bottom to the top but also for people that are mainly interested in GNOME/GTK+ application development.

Photo of Christian Kellner

Christian Kellner

none

Christian Kellner is a 25 year old GNOME hacker and philosophy student from Passau, Germany. He started his career as a GNOME Code Monkey by maintaining GnomeVFS in 2004. He is still the maintaining GNOME’s vfs layer but in addition to that also Evolution’s Calendar part. If that still leaves some free time, he is a passionate paraglider pilot and mountain hiker.

Copyright © 2003-2008 The GNOME Project  

Organized by: