我打算使用 FUSE 编写一个文件系统原型(prototype)。除了 FUSE 之外,是否还有任何(附加的)实现良好的库可以提供一些常见的文件系统优化功能,如目录缓存、日志记录、查找表、原子操作等。最好用 C 编写。
顺便说一下,我打算在 OSX 和 Linux 上实现它。这是我将使用 FUSE 而不是 native 文件系统的主要问题之一,即使性能也很重要。
谢谢。
最佳答案
在 Windows 上,Dokan library已经有一段时间了。我一直想玩它,但一直没有机会。它是一个将所有事件转发回用户模式进程的文件系统驱动程序,以及一个便于编写用户模式端的 DLL。它是开源的,并获得了 LGPL 和 MIT 许可的混合许可。
有一个 FUSE for Windows 的仿真(或者可能是一个端口)曾经称为 WinFUSE,但我到它的链接现在都失效了。它可能是可以找到的...
编辑: 有一个广泛的List of Filesystems在维基百科。它似乎没有列出 FUSE 之外的 Linux 上的许多选项。其他乍一看相似的,通常是在 FUSE 之上实现的。
异常(exception)似乎是 LUFS(Linux 用户空间文件系统),但它的工作似乎在 2003 年被放弃,转而支持 FUSE。
关于c++ - 任何为 FUSE 提供常用结构和算法的库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3638739/