模拟实现文件系统,操作系统课程设计
- 格式:doc
- 大小:126.00 KB
- 文档页数:13
. ..
z
某某大学
课程设计报告
课程名称: 操作系统课程设计
设计题目: 模拟实现文件系统
系 别: 计算机系
专 业: 计算机科学与技术
组 别:
学生姓名: 学 号:
起止日期:
指导教师:
. ..
z 目 录
目 录 ................................................................................................................................................ 0
第一章 需求分析 ......................................................................................................................... 1
1.1 课程设计题目 ................................................................................................................... 1
1.2 课程任务及要求 ............................................................................................................... 1
1.3课程设计思想: ................................................................................................................ 1
1.4软硬件运行环境及开发工具: ........................................................................................ 2
第二章 概要设计 ............................................................................................................................. 3
2.1流程图 ................................................................................................................................ 3
2.2用到的原理 ........................................................................................................................ 3
第三章 详细设计 ............................................................................................................................. 4
第四章 调试与操作说明 ................................................................................................................. 9
4.1用户登陆界面 .................................................................................................................... 9
4.2创建文件界面 .................................................................................................................... 9
4.3删除文件界面 .................................................................................................................. 10
4.4退出界面 .......................................................................................................................... 10
第五章 课程设计总结与体会 ....................................................................................................... 10
第六章 致谢 ................................................................................................................................... 11
第七章 参考文献 ...........................................................................................................................
11
. ..
z 第一章 需求分析
1.1 课程设计题目
课程设计题目:模拟实现文件系统
1.2 课程任务及要求
要求:实现文件的建立、打开、删除、关闭、复制、读、写、查询等功能
给出实现方案(包括数据结构和模块说明等)
画出程序的基本结构框图和流程图
分析说明每一部分程序的设计思路
实现源代码
按期提交完整的程序代码和可执行程序
根据要求完成课程设计报告
总结
1.3课程设计思想:
模拟实现文件系统问题是一个经典的关于文件的处理问题,包括:实现文件的建立、打开、删除、关闭、复制、读、写、查询等功能。设计思想如下:
1.在内存中开辟一个虚拟磁盘空间作为文件存储器,在其上实现一个多用户多目录的文件系统。
2.文件物理结构可采用显式链接或其他方法。
3.磁盘空闲空间的管理可选择位示图或其他方法。如果采用位示图来管理文件存储空间,并采用显式链接分配方式,则可以将位示图合并到FAT中。
4.文件目录结构采用多用户多级目录结构,每个目录项包含文件名、物理地址、长度等信息,还可以通过目录项实现对文件的读和写的保护。目录组织方式可以不使用索引结点的方式,但使用索引结点,则难度系数为1.2。
5.设计一个较实用的用户界面,方便用户使用。要求提供以下相关文件操作:
(1)具有login (用户登录)
. ..
z (2)系统初始化(建文件卷、提供登录模块)
(3)文件的创建: create
(4)文件的打开:open
(5)文件的读:read
(6)文件的写:write
(7)文件关闭:close
(8)删除文件:delete
(9)列出文件目录:dir
(10)退出:logout
1.4软硬件运行环境及开发工具:
a)程序设计语言:C++
b)计算机及操作系统:PC机,WindowsXP
c)开发平台:Microsoft Visual C++ 6.0
d)运行平台:PC机,WindowsXP
. ..
z 第二章 概要设计
2.1流程图
模拟实现文件系统的主要流程图如下:
2.2用到的原理
1.本系统初始化了十个用户,每个用户初始化五个文件,最多可拥有十个文件,所以每个用户在此基础上可为自己再创建五个文件,也可以在删除文件后再创建。
2.系统使用create,open,read,write,close,delete,dir和exit来
. ..
z 创建文件,打开文件,读文件,写文件,关闭文件,删除文件和显示文件。
3.程序采用二级文件目录(即设置主目录[MFD])和用户文件目录(UED)。另外,为打开文件设置了运行文件目录(AFD)。
4.为了便于实现,对文件的读写作了简化,在执行读写命令时,只需改读写指针,并不进行实际的读写操作
第三章 详细设计
本次课程设计采用的是c++语言编写,部分主要程序代码如下:
#include "stdio.h"
#include
#include
#include
#define getpch(type) (type*)malloc(sizeof(type))
#define NULL 0
#define UserNumber 10
#define UserFNumber 10
#define UserOFNumber 5
struct fname{
char fname[1];
int flag;
}
fnameA[26]={'a',0,'b',0,'c',0,'d',0,'e',0,'f',0,'g',0,'h',0,'i',0,'j',0,'k',0,'l',0,
'm',0,'n',0,'o',0,'p',0,'q',0,'r',0,'s',0,'t',0,'u',0,'v',0,'w',0,'x',0,'y',0,'z',0};
struct afd {
char opname[10];/* 打开文件名 */
int flag;