Since version 4.7 censhare is using our VFS. VFS stands for "virtual file system" and provides a possibility to access assets (with and without storage items) as if they'll be stored on a local HDD. This article gives a rough overview about the technology behind that.2694780.jpg





Each modern OS is divided into two fundamental layers. The "user space" and the "kernel space". Within the user space the normal applications, like InDesign, Safari, the Finder as well as the censhare Client are running.

Among other things, the kernel space provides access to mass storage devices, the network, etc. There are several so called kernel extensions, like HFS, NTFS or WebDAV which do the "hard work" of representing the bits and bytes of a mass storage as real usable data (files and folders). With other words, the kernel space provides for userspace applications an abstract interface to access data, wherever they are and however they are stored. Mounted volumes on your computer are using exactly this abstract interface to display your files and folders within e.g. Finder.

The censhare VFS uses this technology, too. It is divided into a kernel extension and a userspace API.

2694779.jpg

The KEXT is loaded into the kernel and is available all the time your computer is running. It is the heart of the virtual filesystem and implements several functions which are triggered by the kernel and/or applications from userspace. These are functions like "mount", "unmount", "give me the content of directory w", "does file x exist", "open file y", "read n bytes of file z starting at position m", and so on. For example Finder uses these functions to crawl through the mounted filesystem and to present its content to the user.

The userspace API provides at the one hand several methods to control the virtual filesystem and to check its health (mount & unmount it, configure it, is it mounted, ...). At the other hand it mirrors the most significant requests to the KEXT into the application, which uses the API - the censhare Client.

With other words the censhare Client defines the content of the filesystem and how it is accessed. That's the reason why the mounted device doesn't shows any kind of information if you try to access it with the Finder but if you know the complete path, you could access the content of any asset you're authorized to.