littlebot
Published on 2025-04-08 / 0 Visits
0

【源码】基于C++的简单文件系统

项目简介

本项目是同济大学操作系统课程设计的一部分,借助C++实现了一个简单的文件系统。该文件系统支持基本的文件与目录操作,像创建、删除、读取和写入文件,以及列出目录内容等。同时,项目集成了Google Test框架开展单元测试。

项目的主要特性和功能

  1. 文件和目录管理:可创建、删除、列出目录,还能创建和删除文件。
  2. 文件读写:支持文件的读写操作,包括大文件的读写。
  3. 文件系统格式化:能对文件系统进行格式化操作。
  4. 命令行界面:提供简单命令行界面,用户可通过命令行操作文件系统。
  5. 单元测试:集成Google Test框架,用于测试文件系统各功能模块。

安装使用步骤

前置要求

  • 确保安装了CMake(至少版本3.20)和合适的C++编译器(支持C++17标准)。
  • 项目针对GNU C++和Clang编译器进行了优化设置,也支持MSVC编译器,使用其他编译器会提示可能未正确设置优化标志。
  • 磁盘空间不少于1G。
  • 项目测试环境为Linux/macOS,未在Windows环境下测试。

构建项目

  1. 打开命令行或终端。
  2. 进入项目根目录。
  3. 创建并进入构建目录: sh mkdir build cd build
  4. 运行CMake生成构建系统: sh cmake ..
  5. 构建项目: sh make 此步骤会构建主项目FileSystem以及测试项目Tests

运行应用

  • 在构建目录中,运行生成的FileSystem可执行文件启动程序: sh ./FileSystem
  • 首次成功启动后,输入 format 会在当前文件夹自动创建一个image.img文件。
  • 进入命令行界面,输入 help 可查看所有支持命令的使用方法。

运行测试

  • 若要运行所有测试,可使用CTest(CMake的测试驱动程序),在构建目录中运行命令ctest执行所有配置的测试。
  • 也可直接运行Tests可执行文件进行单元测试,这些测试用于验证文件系统不同组件是否按预期工作。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】