- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一 引言
1.1实验的性质、目的和任务
1.1.1性质
操作系统是计算机专业的核心系统,此课程设计用于模拟操作系统的实现。操作系统对计算机系统资源实施管理,是所有其他软件与计算机硬件的唯一接口,所有用户在使用计算机时都要得到操作系统提供的服务。要掌握操作系统的基本概念、基本原理、设计方法和实现技术,具有初步分析实际操作系统的能力 ,为其今后在相关领域开展工作打下坚实的基础。
1.1.2任务
模拟采用多道程序设计方法的单用户操作系统,该操作系统包括四部分内容:文件管理和用户接口、存储管理、设备管理、进程管理。
1.1.3目的
通过模拟操作系统原理的实现,加深对操作系统工作原理和操作系统实现方法的理解;通过模拟操作系统原理的实现练习编程,进一步了解操作系统的实现方法;练习合作完成系统的团队精神和提高程序设计能力。
1.2实验要求和实验意义
实现对操作系统的模拟,具体是在采用文件分配表的基础上实现单用户的磁盘文件管理部分和用户接口;加深对操作系统的工作原理和实现方式的理解,提高动手实践的能力。
1.3论文结构安排
本论文主要内容: 引言、 系统分析与设计、系统实现、结束语、参考文献。
二 系统分析与设计
2.1系统要求
模拟采用多道程序设计方法的单用户操作系统,该操作系统包括四部分内容:文件管理和用户接口、存储管理、设备管理、进程管理。
2.2主要模块
2.2.1文件模块
文件模块的定义
文件是在逻辑上具有完整意义的信息组合,它有一个名字做标识符。一个文件必须要有一个文件名,用户利用文件名来访问文件。文件名通常由一串字符构成,名字的长度因系统而异。文件系统具有5大功能:完成文件存储空间的管理,实现文件名到物理地址的映射,实现文件和目录的操作管理,提供文件共享能力和安全可靠措施,文件系统向用户提供了有关文件和目录操作的接口。
文件的逻辑结构
文件的逻辑结构采用流式结构,流式文件指文件内的数据不再组成记录,只是一串的信息组合,字符是构成文件的基本单位,这种文件常常按长度来读取所需信息。
文件的内容均采用文本文件,系统中有两种文件:一种是存放任意字符的文件;一种是可执行文件:可执行文件的内容就是系统内进程的程序体。
文件的物理结构
实验中采用显示链接的物理文件结构,把磁盘中每一块的指针部分提出来,组织在一起,形成文件分配表(FAT表)。一个磁盘仅设置一张文件分配表,磁盘有多少块,文件分配表就有多少项,若文件的一个磁盘块号为i,则这个文件的下一个磁盘的块号应该记录在文件分配表的第i项。
磁盘模拟
用一个文件C模拟磁盘,磁盘的每个盘块64字节,模拟磁盘共有128块。第0,1块存放文件分配表,第2块存放根目录,其余存放子目录和文件。
目录结构
目录结构采用树形目录结构。
目录项内容(8个字节)
目录名,文件名:2个字节;
扩展名:2个字节(目录没有扩展名)。
目录,文件属性:1字节;
起始盘块号:1个字节;
文件长度:2个字节;
根目录
根目录位置固定,为磁盘第2块;大小固定,共8项,占用模拟磁盘第2块。
子目录
位置不固定,大小不固定。
2.2.2用户接口
创建文件:create 文件名
建立新文件,如果原来存在同名文件要提示是否覆盖。
拷贝文件:copy 源文件名 目标文件名
当用户需要拷贝一些文件时,首先要先找到该文件,可同名拷贝,也可更名拷贝。
删除文件 : delete 文件名
显示文件: type 文件名 仅显示文件内容。
编辑文件: edit 文件名 此命令完成对文件的编辑,只读文件不可以修改。
改变文件属性 : change 文件名 属性
将文件在只读和非只读、隐藏和非隐藏之间转换。
磁盘格式化: format 盘符
建立目录: makdir 目录 建立目录,若同名目录存在则建立失败。
改变目录路径: chadir目录 改变当前目录。
删除空目录: rdir 目录 当前目录、非空目录、根目录不能删除。
删除目录: deldir 目录
既可删除空目录又可删除非空目录,对于非空目录,首先要删除其下文件和目录然后才能删除其本身。
2.2.3屏幕显示
屏幕显示要求包括:
用户命令接口,用于系统运行时用户输入命令;
磁盘目录显示,要求显示磁盘的树型目录结构;
磁盘使用情况,显示磁盘每一个磁盘块的空间是否空闲。
系统实现
3.1文件模块
3.1.1创建FAT表
这一部分主要实现FAT表的定义和初始化,代码如下:
public class FAT
{
public byte[] fblock = new byte[128]; //FA
文档评论(0)