项目简介
本项目实现了一个仿Linux的二级文件系统,通过模拟磁盘和文件系统结构,提供了基本的文件和目录管理功能。项目主要使用C语言编写,旨在展示文件系统的基本原理和操作。
项目的主要特性和功能
- 磁盘模拟:使用系统的
dd
命令创建一个大小为1G的空文件进行模拟磁盘。 - 超级块管理:创建并管理超级块(SuperBlock),用于系统启动时加载文件系统信息。
- Inode管理:实现Inode结构,用于存储文件的元数据和物理块地址。
- 目录管理:支持创建、删除、列出目录,以及切换当前目录。
- 文件管理:支持创建、删除、读取和编辑文件。
- 用户管理:支持创建新用户和用户登录,管理用户权限。
- 位图管理:使用位图管理磁盘中的空闲块和空闲Inode。
安装使用步骤
假设用户已经下载了本项目的源码文件:
1. 编译项目:使用C语言编译器(如GCC)编译项目。
bash
gcc -o file_system main.cpp test.cpp test2.cpp test3.cpp CommandParse/CommandParse.cpp DiskProcess/DiskProcess.cpp FileProcess/FileProcess.cpp InitMoudle/InitMoudle.cpp UserMoudle/UserMoudle.cpp
2. 运行程序:执行编译生成的可执行文件。
bash
./file_system
3. 初始化磁盘:程序启动时会检查是否存在SystemDisk
文件,如果不存在,会提示初始化磁盘。按照提示操作,使用dd
命令创建一个1G大小的空文件,并命名为SystemDisk
。
bash
dd if=/dev/zero of=SystemDisk bs=1M count=1024
chmod 666 SystemDisk
4. 登录系统:初始化完成后,程序会提示登录。输入默认的root用户密码1234
进行登录。
5. 使用命令:登录成功后,可以使用各种命令进行文件和目录管理,如ls
、mkdir
、create
、open
、del
等。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】