这个问题甚至与特定的编程语言无关。如何创建 FUSE 文件系统?
据我了解,我只需要描述一般适用于文件的系统调用。好吧,粗略地说,一个来自 C 的例子:
struct fuse_operations {
int open(const char* filename, int mode);
int close(int fd);
int lgetattr(const char* filename);
...
};
只有我应该[关于]在那里写什么还不清楚。更不用说 FUSE 如何“解释”您的文件系统不仅仅是一个磁盘映像,而是一个存档 (fuse-zip),或者更酷的是,文件位于 RAM 中(tmpfs、ramfs、cramfs、rootfs)。以下是如何使 FUSE 从存档中“解析”文件,甚至更酷,将文件存储在 RAM 中?我应该归因于什么,我应该fuse_operations
如何准确地描述这些系统调用???
保险丝在你存储信息的地方都是一样的。驱动程序只是将系统调用转换为您的程序。
首先要描述的是 call
opendir()
,readdir()
- 然后会显示一个里面有东西的磁盘。编写调用,
open()
您read()
将能够读取虚拟文件。