2013-03-24 127 views
7

试图让我自己的文件系统使用保险丝(文件系统在用户空间,Linux)我真的好奇在哪里得到详细的最新文档的操作使用?FUSE - 详细文档

大部分时间我都在搜索其他文件系统的实现并查看它们做了什么,但有些操作似乎并没有像poll/ioctl或bmap那样被广泛使用。 和熔断器api的文件没有多大帮助,例如,操作的参数和返回值没有记录,因此我必须猜测如何使用em,所以问题是我在哪里可以获得有关如何实现这些奇特操作的更好信息?

THX

+0

FUSE是开源的,你不必猜测你可以去找出究竟是怎么发生的。 – 2013-03-24 23:09:50

+1

我不得不同意Steve-o。我下载了最新的FUSE源码版本(2.9.2,去年年底发布)。 fuse.h文件描述了poll,ioctl和bmap。如果您对特定功能有疑问,请发表描述混淆点的新问题。另外,你确定你需要使用这些功能吗?并非所有的FUSE文件系统都需要使用所有的功能,例如,我创作了一些只提供只读文件系统的FUSE模块,因此他们能够忽略写入功能。 – 2013-03-25 03:27:24

+2

所以,回到讨论的问题 - 答案似乎是“熔断器本身的源代码” – 2013-03-25 08:48:10

回答

8

是的,你是对的,很多地方你可以阅读评论说有上FUSE文档很少。也许这是因为文件太少了。或者,实现仅适用于那些理解用户空间文件系统权衡的人。因此,也许你可以参考下面的文档,教程,幻灯片,甚至示例代码的详细资料:(?Sun的原始文件)

FUSE设计文件:

http://www.youblisher.com/p/31627-fuse/

http://wr.informatik.uni-hamburg.de/_media/research/labs/2008/2008-03-michael_kuhn-container_library_and_fuse_container_file_system-report.pdf

http://www.oug.org/files/presentations/losug-fuse.pdf

http://sar.informatik.hu-berlin.de/teaching/2013-w/2013w_osp2/lab/Lab-4-FUSE/lab-FUSE_.pdf

http://www.cs.hmc.edu/~geoff/classes/hmc.cs135.201001/homework/fuse/fuse_doc.html(教程)

http://www.cs.cmu.edu/~./fp/courses/15213-s07/lectures/15-filesys/index.html

http://www.cs.nmsu.edu/~pfeiffer/fuse-tutorial/

示例代码:

http://fuse.sourceforge.net/helloworld.html

也许这就是更多的研究导向:

http://www.msrsas.org/docs/sastech_journals/archives/May2011/2.pdf

https://code.google.com/p/s3fs/wiki/FuseOverAmazon

但一般是有很多问题/问题(可能通过一些复杂的算法来解决),在用户空间实现文件系统,这就是为什么莱纳斯曾评价它为“玩具”:

https://ceph.com/dev-notes/linus-vs-fuse/

15Apr2015更新:

我刚刚发现这个(和许多其他幻灯片 - 只要看看这个网页的右侧):

http://www.slideshare.net/adorepump/fuse-developing-fillesystems-in-userspace

+1

只是为了完善官方文档:https://libfuse.github.io/doxygen/index.html 并融合项目网站:https://github.com/libfuse/libfuse – 2016-11-09 21:28:04