Gil*_*il' 22
Unix 文件系统传统上是在内核中实现的。FUSE允许用户程序实现文件系统。
内核文件系统更适合用于程序和数据的主文件系统:
FUSE 文件系统还有其他优势,主要围绕其灵活性:
Mic*_*zek 19
如果您指的是真实的磁盘文件系统或任何文件系统,我并不肯定。我从未见过普通的文件系统使用 FUSE,尽管我认为这是可能的;FUSE 的主要好处是它可以让您向应用程序(或用户)呈现一些看起来像文件系统的东西,但实际上只是在用户尝试执行诸如列出目录中的文件或创建新文件时调用应用程序中的函数文件。Plan9以尝试通过文件系统访问所有内容而闻名,而/proc伪文件系统来自于它们;FUSE 是应用程序轻松遵循该模式的一种方式
例如,这是一个(非常无特色的)FUSE 文件系统的屏幕截图,它可以访问 SE 站点数据:

当然,这些文件都不存在;当ls被问及 FUSE 目录中的文件列表时,我的程序中调用了一个函数,该函数向该站点发出 API 请求以加载有关用户 73(我)的信息;cat尝试读取display_name和website_url调用更多从内存中返回缓存数据的函数,而磁盘上没有任何实际存在的数据
FUSE 本身并不是真正的文件系统,而是允许将文件系统实现为进程而不是内核模块的代码。
FUSE 最有用的好处之一是允许 GPL 代码与非 GPL 代码“混合”。例如,许多操作系统(如 OpenSolaris 和 *BSD)上的Gnu/Linux 和 ZFS http://zfs-fuse.net/或 NTFS-3G http://www.tuxera.com/community/ntfs-3g-download/
与本机(内核)驱动程序相比,主要缺点是性能影响。