项目简介
本项目是同济大学操作系统课程设计的一部分,运用C#语言实现了二级文件系统模拟。该系统把小文件以文件系统的形式存储在一个大文件里,支持多客户端同时访问,借助TCP协议进行通信。项目涵盖服务器和客户端两部分,服务器负责文件系统核心功能,客户端负责与用户交互。
项目的主要特性和功能
- 多客户端支持:可同时开启多个客户端程序,客户端会自动连接服务器。
- 文件系统操作:支持创建文件、删除文件、创建目录、删除目录、读写文件、切换目录等常见操作。
- 命令行交互:客户端命令模仿Linux命令,支持绝对路径和相对路径操作。
- 进程通信:通过TCP协议实现服务器与客户端通信,支持消息序列化和反序列化。
- 磁盘管理:使用内存映射文件技术管理磁盘文件,支持扇区和Inode管理。
- 用户管理:支持用户信息的读取、更新和设置,保障不同用户操作的独立性。
安装使用步骤
假设用户已经下载了本项目的源码文件。
1. 启动服务器:进入项目目录,启动服务器程序。
bash
cd OperatingSystemHW/OperatingSystemHW
dotnet run
2. 启动客户端:在另一个终端窗口中,启动客户端程序。
bash
cd OperatingSystemHW/Client
dotnet run
3. 客户端操作:客户端启动后自动连接服务器,用户可通过命令行进行文件系统操作。例如:
bash
cd / # 将当前工作目录更改为根目录
touch a.txt # 在当前工作目录中创建名为a.txt的文件
ls # 显示当前目录下的文件和文件夹列表
4. 多客户端操作:若需开启多个客户端,可手动执行客户端可执行程序。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】