第六章:文件系统# 引言 本章导读 实践体验 本章代码树 本章代码导读 文件系统接口 本节导读 文件和目录 常规文件 目录 文件系统 简化的文件与目录抽象 打开、关闭与读写文件的系统调用 文件打开 文件关闭 文件的顺序读写 简易文件系统 easy-fs 本节导读 松耦合模块化设计思路 块设备接口层 块缓存层 块缓存 块缓存全局管理器 磁盘布局及磁盘上数据结构 easy-fs 磁盘布局概述 easy-fs 超级块 位图 磁盘上索引节点 数据块与目录项 磁盘块管理器 索引节点 获取根目录的 inode 文件索引 文件列举 文件创建 文件清空 文件读写 在用户态测试 easy-fs 的功能 在Rust应用开发环境中模拟块设备 打开块设备 从块设备上打开文件系统 获取根目录的 Inode 进行各种文件操作 将应用打包为 easy-fs 镜像 在内核中接入 easy-fs 本节导读 文件简介 块设备驱动层 Qemu 模拟器平台 K210 真实硬件平台 内核索引节点层 文件描述符层 文件描述符表 应用访问文件的内核机制实现 文件系统初始化 打开与关闭文件 基于文件来加载并执行应用 读写文件 练习 课后练习 编程题 问答题 实验练习 实践作业 硬链接 实验要求 问答作业 实验练习的提交报告要求 练习参考答案 课后练习 编程题 问答题