操作系统实验:加密文件系统myext2的设计与实现

需积分: 0 1 下载量 40 浏览量 更新于2024-07-01 收藏 952KB PDF 举报
"3170103456-应承峻-实验41" 这个实验报告详细描述了操作系统课程中的一项实践任务,即设计并实现一个名为myext2的加密文件系统。该实验的目标是让学生深入理解操作系统文件系统的基本原理,特别是Linux中的虚拟文件系统(VFS)管理和ext2文件系统的实现技术。实验要求学生能够设计和实现一个在功能上类似于ext2的文件系统,但在磁盘数据块层面加入加密机制。 首先,实验内容包括: 1. **设计与实现myext2文件系统**:学生需要创建一个与ext2类似但具备数据加密功能的新文件系统。这涉及对文件系统结构的理解,如超级块、i节点、数据块等,并在此基础上实现加密功能。 2. **修改文件系统的magic number**:每个文件系统都有一个独特的标识符,即magic number,修改它是为了确保新创建的myext2文件系统能被正确识别。 3. **开发文件系统创建工具**:为了方便用户创建和管理myext2文件系统,需要编写相应的工具程序,这可能涉及到命令行界面或者图形化界面。 4. **加密文件系统操作**:实现read_crypt和write_crypt函数,以支持加密数据的读取和写入,这需要理解数据加解密算法,并将其集成到文件系统的读写流程中。 实验所需的硬件设备包括一台配备Intel Core i7-8750H处理器、16GB DDR4内存、240GB固态硬盘和Nvidia GeForce GTX 1060显卡的笔记本电脑,以及运行Ubuntu 19.04操作系统的环境。实验步骤包括分析和理解Linux内核源码中与ext2文件系统相关的部分,如fs/ext2/acl.c和acl.h等文件,然后在此基础上进行扩展和修改,以实现加密功能。 通过这个实验,学生不仅能够掌握文件系统的基本概念,还能深入了解Linux内核的工作机制,特别是文件系统层面上的细节。同时,通过实际编码实现加密文件系统,可以提升学生的编程技能和解决实际问题的能力。