FUSE是sourceforge上的一个开源项目。包含一个内核的服务模块一个用于用户空间开发的lib。它完成和内核fuse模块通信的功能,并为开发者提供友好的接口。
首先,从kernel模块说起,本文以2.7.4 版本为例
kernel/inode.c
1144: module_init(fuse_init);
1145: module_exit(fuse_exit)
这两行注册了模块fuse.ko的初始化和退出时的钩子函数。退出没什么好说的,来看看初始化fuse_init