具体要求如下:
建立相应的数据结构;
磁盘上建立一个文件,文件长度设为10MB,用该文件来模拟一个磁盘,磁盘的物理块大小为512字节。
建立进程的数据结构;
时间的流逝可以用下面几种方法模拟:(a)按键盘,每按一次可认为过一个时间单位;(b) 响应WM_TIMER;
将一批进程对磁盘的请求的情况存磁盘文件,以后可以读出并重放;
使用两种方式产生进程对磁盘的请求:(a) 自动产生 (b) 手工输入
显示每次磁盘的请求和空间释放后的相关数据结构的状态;
显示每次磁盘的请求和空间释放后状态;
支持的管理方法:空闲表法、空闲链表法、位示图法、UNIX成组链接法。
用的比较low的控制台
核心的东西时在实现一个os时其内部怎样管理空闲磁盘块
由于存储器的原理,我们无法准确的知道哪以部分装的这么,从外部看只是0和1
但因为我们建立了数据结构在一小块区域代表了整个磁盘来管理磁盘的空闲空间,
使用空闲空间只需要通过地址映射寻到相应地址即可,
另一方面注意os的实际的操作,验收时很多同学没有通过只因为只是模拟了空闲空间,而忽略了对磁盘实际的操作
此项目为在java写好的情况下被通知不允许用java,一天之内仓促拼凑,可提供大致思路,如有纰漏敬请指正
2019-12-21 19:32:18
66KB
os
1