教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 专业资料 >

《操作系统课程设计报告》

来源:网络收集 时间:2025-09-15
导读: 操作系统课程设计 文件系统模拟 班 级: 学 号: 姓 名: 指导老师: 提交时间: 实验地点: 课程设计目的 ........................................................................................ 2 课程设计要求 ....................................

操作系统课程设计

文件系统模拟

班 级: 学 号: 姓 名: 指导老师: 提交时间: 实验地点:

课程设计目的 ........................................................................................ 2 课程设计要求 ........................................................................................ 2 课程设计内容 ........................................................................................ 2 文件系统实现 ........................................................................................ 2

数据结构设计 .................................................................................................... 2 程序流程图设计................................................................................................ 3 主要算法设计 .................................................................................................... 9 模拟实现文件系统.......................................................................................... 10 程序调试与运行结果 ...................................................................................... 11

课程设计总结 .......................................................................................11 参考文献 ...............................................................................................11

一、课程设计目的

通过模拟文件系统的实现,深入理解操作系统中文件系统的理论知识。

二、课程设计要求

通过课程设计,要求学生主要掌握如下内容: 1.设计出文件系统中常用的数据结构;

2.理解文件系统的工作流程,给出程序流程图; 3.设计出文件系统中关键的算法;

4.模拟实现二级目录文件系统,并给出一组运行结果。

三、课程设计内容

根据实验指导书补充

四、文件系统实现

1、数据结构设计

通过分析设计题目,具体设计出主要的三个数据结构。 UFD:

通过结构体,将文件名,文件属性,记录长度和文件的地址结合在一体。 UOF:

同样是通过结构体,将文件名,文件属性,记录长度,当前状态,读指针,写指针以及最后一块的指针结合在一起。

MFD:

通过一个类来实现其功能。类中包括用户名,UFD及UOF中的文件个数,以及与用户相对应的UFD和UOF。另外还包括两个初始化函数。

NL 栏栏 S 栏

2、程序流程图设计⑴、整体程序流程: 开始

菜单选择: 初始化已有的用 户或新建用户 新建用户 选择已有用户 输入用户名后 开始初始化 初始化文件 表

初始化结束后 菜单选择进入正式操作部分

列出目前所有用户 并等待输入

用户名

MFD 中有该用户 有 列出指令列表 并由用户选择

显示: 无此用户

建立

打开

关闭

删除

文件 列表

切换 用户

结束

显示 错误

3

⑵、用菜单的形式来模拟用户程序中调用的文件操作,这些命令的说明如下: The order is: 1=create 2=open 3=close 4=read 5=write 6=delete 7=changeUSER 8=list 9=end

Please input your order: ① 建立文件(create)

模拟文件系统进行“建立文件”的处理,流程图后附。 ② 打开文件

约定操作类型与文件属性不符合活正处在“建立”状态的文件不允许打开。 ③ 关闭文件

对某个文件不需要再读或写的时候,用户应关闭该文件。 ④ 读文件

文件打开后可顺序读文件中的记录,读长度表示本次操作需读的记录个数。 ⑤ 写文件

执行写文件操作时要区分两种情况,第一种是在执行create后要求写,第二种是执行open后要求写。对第二种情况可认为用户要对一个已建立好的文件进行修改。 一个文件可以分多次写,既可按记录顺序写也可随机写一个记录,采用顺序写时可省略记录号。 ⑥ 删除文件

把请求撤消的文件从拥护文件目录表中出名,收回该文件站用的存储区域。 ⑦ 切换用户

可在多个用户间切换,彼此进行独立的操作。 ⑧ 文件列表

将目前所有用户的文件列出,并列出相关的属性及所有者。 ⑨ 结束

退出程序,返回原有操作系统。

创建文件 流程图:

打开文件 流程图:

开始

查找用户的 UFD

UFD 中有该文件

否 显示: 文件不存 在,不能打开

查找用户的 UOF

UOF 中有该文件

返回

该文件为 “建立” 状态

文件属性与操 作类型相符

否 显示: 否 显示:正在建 立,不能打开 显示: 文件已打开 登记 UOF:文件名, 记录长度,文件属性 状态:=“打开” 读 指针 :=UFD 中 文 件地址 写 指针 :=UFD 中 文 件地址操作不合法, 不能打开

返回

返回

显示:成功打开文件

返回

6

写文件 流程图: 开始

查用户的 UOF

UOF 中有该文件

显示:文件尚 该文件为 建立状态?

否(打开状态)

未建立或打 开,不能写

是 否 把记录信息写 到 “写指针” 指 出的物理块中 否顺序修改 文件属性为 “只读”?

返回

是 找一个空闲块 填入文件链接 字, 修改 “写指 针”取出“写指针”指 出的块号 找出存放 指定记录 的

块号 显示:操作不 合法,不能写

修改“写指针”

返回

把修改信息写 入找到的物理 块中

显示:写文件成功

返回7

读文件 流程图: 开始

查用户的 UDF

文件已经打开 从“读指针”得 到当前起始地址 显示:文件未打 开,不能读

按读产度把信息 读出传送给用户

返回

修改“读指针”

显示:读文件成功

返回 开始 关闭文件 流程图: 查用户的 UOF

文件为 “建立” 状态?

置文件结束标志文件为 “建立” 状态?

消除该文件在 UOF 中的登记栏 显示:文件已关闭 显示:关闭文件成功

返回 8

3、主要算法设计

新建用户:

由于MFD为类,所以只需输入用户名,并赋值给类中对应的属性mfd[i].UserName即可,其他属性在定义整个对象数组时已由默认构造函数定义。

程序运行实例:

0 zhao 1 qian 2 sun 3 li 4 zhou 6 begin operation 7 end Input number : (菜单1)

用户命令菜单:

将纯指令的操作加入了简单的菜单处理,在功能没有简化的基础上使操作更为简便。 The order is:

Please input your order: (菜单2)

4、模拟实现文件系统

菜单1部分程序段:

if(j>i+2){cout<<"Error!!\n"<<endl;goto bg;} else if(j<i){

cons:cout<<"Now using "<<mfd[j].UserName<<"'s file!!\n"; //初始化过程 }

else if(j==i){cout<<"Please input the new username:"; cin>>u …… 此处隐藏:3018字,全部文档内容请下载后查看。喜欢就下载吧 ……

《操作系统课程设计报告》.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/51190.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)