# 杭电操作系统实验五《文件管理系统》
## 声明:我不生产代码,我只是代码的搬运工--源码来自于[github某大佬](https://github.com/yjc567/HDU_OS_Assignment_2017_SimpleFileSystem) 膜拜!
## 该代码是在大佬代码基础上的改进,主要包含以下方面:
### 1.修改代码的bug
**原代码在生成文件后便将文件加入打开文件表,再次打开会再次将该文件加入**
在my_open()函数中加入检测,如果文件已打开,则关闭新打开的文件并返回最先打开文件的fd值
**原代码在写入文件fat_write()函数扩充磁盘块时,FAT表的id值为最后生成磁盘块的块号,因此在实现文件占多个磁盘块时产生bug**
在fat_write()扩充磁盘块的while()函数后加入一行代码 tid = id 即可
### 2.增加新特性
#### I.显示FAT表的内容
新增showfat()函数,通过两个for循环即可实现
#### II.实现随机读写
通过修改useropen中的count指针即可
#### III.改变扇区大小
通过将常量BLOCKSIZE和BLOCKNUM,改为全局变量,让用户输入即可
同时新增函数changesize(),让用户可已随时修改磁盘块大小,但是修改会格式化虚拟磁盘空间
### 3.其他说明
写入文件实现在任意位置新增\覆盖内容,但老师说新增只是在最后,而且我修改后写入函数的存在小bug,但是验收通过啦,就不再改动啦了
### 4.总结
直接搬运轮子真的爽,但是把别人的东西看懂并修改实现自己的需求也不容易,以后一定认真学习,争取自己写轮子而不是用别人的(狗头
杭电操作系统实验五《简单文件管理系统》.zip
版权申诉
33 浏览量
2024-04-20
17:26:22
上传
评论
收藏 45KB ZIP 举报
小码蚁.
- 粉丝: 2670
- 资源: 4521
最新资源
- 305建筑结构水电欧式6套(14.5x20.2)\施工图\C型施工图\结构楼梯与目录.dwg
- 305建筑结构水电欧式6套(14.5x20.2)\施工图\C型施工图\结构C型结构平面.dwg
- 305建筑结构水电欧式6套(14.5x20.2)\施工图\C型施工图\建筑1-13C型大样031026.dwg
- 305建筑结构水电欧式6套(14.5x20.2)\施工图\C型施工图\建筑1-12门窗详图031026.dwg
- Twitter (X).apk
- Autovisor-rebuild-3.13.1.zip
- 基于STM32 HAL的焊接站
- 基于stm32的植物生长自动小气候支持系统
- 精粤 h610i 主板 BIOS 启动画面 logo 修改自定义
- 克里金插值法JS源码实现,Javascript源码
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈