Filesystem in Userspace

From Wikipedia, the free encyclopedia - View original article

Filesystem in Userspace
FUSE structure.svg
A flow-chart diagram showing how FUSE works
Developer(s)Miklos Szeredi
Stable release2.9.3 / 1 July 2013; 13 months ago (2013-07-01)
Written inC
Operating systemUnix-like
TypeFile system driver
LicenseGPL for kernel part, LGPL for Libfuse
Websitefuse.sourceforge.net
 
  (Redirected from FUSE (Linux))
Jump to: navigation, search
Filesystem in Userspace
FUSE structure.svg
A flow-chart diagram showing how FUSE works
Developer(s)Miklos Szeredi
Stable release2.9.3 / 1 July 2013; 13 months ago (2013-07-01)
Written inC
Operating systemUnix-like
TypeFile system driver
LicenseGPL for kernel part, LGPL for Libfuse
Websitefuse.sourceforge.net

Filesystem in Userspace (FUSE) is an operating system mechanism for Unix-like computer operating systems that lets non-privileged users create their own file systems without editing kernel code. This is achieved by running file system code in user space while the FUSE module provides only a "bridge" to the actual kernel interfaces.

The original, and commonly used implementation, is implemented as a loadable kernel module. Released under the terms of the GNU General Public License and the GNU Lesser General Public License, FUSE is free software. This implementation of FUSE is available for Linux, FreeBSD, NetBSD (as puffs), OpenSolaris, Minix 3, Android and OS X.[1]

History[edit]

The idea of a filesystem driver living in userspace was originally developed in 1995 with the translator concept of the GNU Hurd operating system.[2] It gained vast public audience with the first official release of Debian GNU/Hurd in May 2003. The FUSE project was started in October 2004 as a fork of A Virtual Filesystem (AVFS), which was first released in 1998.

It was officially merged into the mainstream Linux kernel tree in kernel version 2.6.14.[3]

An ISC-licensed re-implementation by Sylvestre Gallon was released in March 2013[4] and incorporated into OpenBSD in June 2013.[5]

Virtual file system[edit]

FUSE is particularly useful for writing virtual file systems. Unlike traditional file systems that essentially save data to and retrieve data from disk, virtual filesystems do not actually store data themselves. They act as a view or translation of an existing file system or storage device.

In principle, any resource available to a FUSE implementation can be exported as a file system.

Ports[edit]

Example uses[edit]

See also[edit]

References[edit]

  1. ^ "Home - FUSE for OS X". Osxfuse.github.io. Retrieved 2013-10-13. 
  2. ^ "Examining the Legendary HURD Kernel". Informit. Mar 14, 2008. Retrieved 2014-02-15. 
  3. ^ "Linux 2 6 14 - Linux Kernel Newbies". Kernelnewbies.org. Retrieved 2013-10-13. 
  4. ^ "openbsd dev - tech - Fuse (and sshfs) support for OpenBSD". Openbsd.7691.n7.nabble.com. Retrieved 2013-10-13. 
  5. ^ "'CVS: cvs.openbsd.org: src' - MARC". Marc.info. 2013-06-03. Retrieved 2013-10-13. 
  6. ^ "Lustre FreeBSD". Retrieved 2008-03-02. 
  7. ^ "Architecture ZFS for Lustre". Sun Microsystems. Retrieved 2008-03-02. 

External links[edit]