/*! \mainpage FUSE API documentation Filesystem in Userspace (FUSE) is a loadable kernel module 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. (c) Wikipedia @tableofcontents \section section1 How FUSE works @image html 490px-FUSE_structure.svg.png "Structural diagramm of Filesystem in Userspace from http://en.wikipedia.org/wiki/File:FUSE_structure.svg" \include how-fuse-works \section section2 Kernel \include kernel.txt \section section_examples examples have a look at the examples listed in the example directory, which can be found here: files.html. - @ref hello.c - minimal FUSE example featuring fuse_main usage - @ref hello_ll.c - FUSE: Filesystem in Userspace - @ref null.c - FUSE: Filesystem in Userspace - @ref cusexmp.c - CUSE example: Character device in Userspace - @ref fioc.c - FUSE fioc: FUSE ioctl example - @ref fioclient.c - FUSE fioclient: FUSE ioctl example client - @ref fsel.c - FUSE fsel: FUSE select example - @ref fselclient.c - FUSE fselclient: FUSE select example client - @ref fusexmp.c - FUSE: Filesystem in Userspace - @ref fusexmp_fh.c - FUSE: Filesystem in Userspace \section section_links links http://sourceforge.net/apps/mediawiki/fuse/index.php?title=Main_Page - the fuse wiki http://en.wikipedia.org/wiki/Filesystem_in_Userspace - FUSE on wikipedia \section section_todo todo general: - fuse_lowlevel.h, describe: - a channel (or communication channel) is created by fuse_mount(..) - a fuse session is associated with a channel and a signal handler and runs until the assigned signal handler shuts the session down, see fuse_session_loop(se) and hello_ll.c - http://www.cs.nmsu.edu/~pfeiffer/fuse-tutorial/ - http://cinwell.wordpress.com/ - http://sourceforge.net/apps/mediawiki/fuse/index.php?title=FuseProtocolSketch - http://muratbuffalo.blogspot.de/2011/05/refuse-to-crash-with-re-fuse.html examples: - demonstrate the effect of single vs multithreaded -> fuse_loop fuse_loop_mt - add comments and source form all existing examples - also add examples form here: http://sourceforge.net/apps/mediawiki/fuse/index.php?title=Main_Page#How_should_threads_be_startedx3f - add this new example: http://fuse.996288.n3.nabble.com/Create-multiple-filesystems-in-same-process-td9292.html \section section_thanks thanks - Mark Glines, for his coments on fuse_loop() and fuse_loop_mt(). - Wikipedia - copied the FUSE introduction from the Filesystem in userspace article. */