我正在尝试做一个自定义fs,基本上读取和写入几个"虚拟文件"。从其他文件,这里的问题不是我想要的fs,是在Fuse和fs(文件系统)的开始。
实际上,我正在阅读Fuse文档,文档记录非常好,至少对于知道FS如何工作的人来说,最后一点是我找不到的,我想学习FS的基础知识,以了解如何在Fuse中构建自己的FS,从高API到低API。
每个FS都可以按照它想要的方式工作,但是需要存在一些公共部分,至少,足够的公共可以存在像FUSE这样的东西。
我们可以读到这里:https://github.com/libfuse/libfuse/blob/master/example/passthrough.c
高级API工作得很好,但效率不高,为了提高FS,我需要低级API。
好的,那么,我需要多少新手呢?从一开始就理想地……,用于FUSE FS。,例如新手问题?
为什么我们需要"一个文件?,我知道演绎,"接近";文件是将文件与磁盘同步并"关闭";"opened"文件
什么是"inode"在这里吗?
文件描述符?
什么意思?为什么我们需要"锁定"?一个文件?如果我们锁定了一个在其他应用程序中已经打开的文件,会发生什么?我们不能一直盯着某样东西…,何时需要锁定文件,何时解锁?
我想我们可以打开一个文件多次(运行"open")函数),有限制吗?
注意,这一切,只是几个问题的展示类型的问题,回答一个一个不解决主要问题(如果你回答会帮助我,但不要失去重点),我甚至不知道起点在这里,或者我不知道,这一切都属于FS一般吗?,还是只有FUSE?我正在阅读API,但即使有了描述,我也不明白其中几个是什么意思。
我已经检查了:使用Fuse-Low Level API
尽管如此,这不仅仅是融合知识,我知道我不知道很多,所以请帮助我在这方面找到起点。
Thx .
如果您不知道文件描述或inode是什么,我建议您从unix的入门课程开始,例如。这个计算机科学的复习课程就是一个很好的例子,请参阅关于POSIX文件系统的部分(如果您自己搜索,可以找到符合您需求的其他资源)。然后你可以用一些保险丝特定的材料,例如。编写FUSE文件系统:教程或使用FUSE开发您自己的文件系统。