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

【源码】基于Go语言的文件系统模拟系统

项目简介

本项目是基于Go语言开发的文件系统模拟系统,采用类似xv6的实现方式,实现了常见的文件系统操作接口,但未实现同步操作和日志系统。用户可通过命令行或Web界面与该模拟文件系统交互,完成文件和目录的创建、删除、查看等操作。

项目的主要特性和功能

  1. 丰富的操作接口:实现lsmkdirtouchpwdcdrmrmdir等常用文件系统命令,便于文件和目录管理。
  2. 多方式交互:提供命令行接口和Web界面两种交互方式,满足不同用户使用习惯。
  3. 多级目录支持:支持创建多级目录,总文件数量暂限制为200个。
  4. 文件读写管理:支持文件的创建、读取和修改,文件最大容量为268k,大于12k的文件采用间接索引。
  5. 数据持久化:关闭并重新打开服务器后,文件系统中的数据仍然存在。
  6. API接口:提供一系列API接口,方便与前端进行交互以实现文件和目录的操作。

安装使用步骤

环境准备

确保已安装Go语言开发环境。

生成文件系统镜像

切换到TongjiFileLab目录下,运行mkfs来生成文件系统的镜像: bash cd TongjiFileLab/ ./mkfs

启动服务器

运行服务器进程: bash export GIN_MODE=release ./main # 在 0.0.0.0:8080 运行

使用方式

Web界面

通过浏览器访问0.0.0.0:8080,在页面上进行文件和目录的创建、删除、查看等操作。

命令行接口

在命令行中,可使用cmd包的main作为命令行接口,输入help可获得操作提示,使用lsmkdirmkfilecdrmdir等命令进行文件系统操作。

下载地址

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