c - 我可以使用文件描述符来创建自定义文件系统吗?
问题描述
在我注册的一门课程中,我的任务是创建一个具有一些自定义功能的文件系统。我只是使用 dd 创建了一个零图像,并通过为其创建超级块、inode、stat 文件等来创建我的文件系统。它可以读取/写入文件,导入和导出文件和目录,具有适当的目录层次结构。
现在我想用一个实际的物理分区来完成这项工作。我看了很多地方,发现文件描述符可以作为普通文件读取。但我想知道它是否依赖于分区中现有的文件系统。我可以绕过所有内容并简单地获得一个按块读取/写入接口,并且能够查找字节或块吗?那会有什么开销?
另外,我想把它变成一个 linux 模块,以便我的文件系统可以与文件管理器一起使用。为了实现它,我需要实现什么标准 API 接口?
请引导我走向正确的方向。
解决方案
你有很多选择;集成到内核中相对困难,而与用户空间文件系统框架(github 上的 libfuse)集成是一个很好的中间步骤。最后,您将拥有一个可用的文件系统。
推荐阅读
- python - 比较 2 个列表
- javascript - 从数组 _ JavaScript 中的元素组合创建新数组
- java - 我如何根据公共标识符(java)实例化不同的子类
- node.js - 应用程序负载均衡器 https 请求在端口 4000 上运行的 EC2 nodejs
- javascript - Firebase 实时数据库无法与我的 Discord 机器人一起使用
- c# - c#自定义xml序列化,xml标签中不包含嵌套类列表的名称
- database - Mongodb 数据库没有持久存储集合和文档
- javascript - onclick="location.href='manaliPackages.html'" 不工作
- android - 不知道如何在服务类上从 layoutt 上的 seekbar 获得浮动。安卓工作室
- javascript - 刷新后保持程序状态