master
Ben Pig Chu 6 years ago
parent 504401355f
commit 227c514092

@ -6,4 +6,29 @@
## 3 同步互斥 ## 3 同步互斥
@陈秋昊 @陈秋昊
## 4 文件系统 ## 4 文件系统
@朱书聪
由于文件系统的主体不在主仓库而是在 [wangrunji0408/SimpleFileSystem-Rust](https://github.com/wangrunji0408/SimpleFileSystem-Rust) 中,对文件系统的修改在 [benpigchu/SimpleFileSystem-Rust](https://github.com/benpigchu/SimpleFileSystem-Rust) 进行(`ucore-fs-enhance` 分支)。要在主仓库中预览目前进行的修改,可以在 `kernel/Cargo.toml` 中加入以下内容:
```toml
[patch."https://github.com/wangrunji0408/SimpleFileSystem-Rust"]
simple-filesystem = { git = "https://github.com/benpigchu/SimpleFileSystem-Rust", branch="ucore-fs-enhance" }
```
以下是目前的进度与在真正进入教学 Lab 划分与制作前的计划
- [x] 修复原有实现的错误
- [x] 正确维护和解释磁盘上的 `inode` 结构的 `size`
- [x] 正确维护磁盘上的 `inode` 结构的 `nlinks`
- [-] 补充实现之前未实现的功能
- [x] `unlink`
- [x] `link`
- [ ] `mount`
- [ ] 符号链接相关内容
- [-] 调整接口的定义
- [x] 用 `get_entry` 取代 `list`
- [x] 用单层查找的 `find` 取代多层查找的 `lookup`
- [ ] 返回错误类型而非直接 `panic!`
- [ ] 将 `vfs` `device` 等与具体文件系统无关的内容从 `SimpleFileSystem-Rust` 仓库移动到主仓库的新包中(`crate/vfs`
- [ ] 让用户程序能够操作文件系统
- [ ] 使文件系统线程安全
- [ ] 实现文件描述符
- [ ] 实现相关系统调用
Loading…
Cancel
Save