- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
课 程 设 计 报 告
课程名称 计算机操作系统
课题名称 模拟实现单级目录的FAT文件系统
专 业 网络工程
班 级 1201
学 号 201203120134
姓 名 伍涛
指导教师 刘铁武 周铁山 谭小兰
2015年 3 月 24 日
湖南工程学院
课 程 设 计 任 务 书
1.设计内容:
课题一:银行家算法。
银行家算法是操作系统中避免死锁的最具代表性算法。该问题可描述为:系统的总的可用临界资源序列为R={r1,r2,...rn },系统中的m个进程互斥访问资源。进程i执行过程中的最大需求序列为N={n1,n2...nn},当前状态下,诸进程都保持了一定的资源。随着进程的推进,进程i提出了新的资源请求,如将资源分配给它,系统将步入一种新的状态,试测试新状态是否安全。
课题二:模拟实现单级目录的FAT文件系统
基本思路:用二进制文件空间模拟磁盘空间,用文件块操作模拟磁盘块操作。
基本设计要求:1、实现如下文件系统功能(过程或函数):
打开文件系统 FILE *OPENSYS(char *filename);
关闭文件系统 int CLOSESYS(FILE *stream);
显示目录 void LISTDIR(void);
建立文件 int FCREATE(char *filename);
删除文件 int FDELETE(char *filename);
打开文件 int FOPEN(char *filename);
关闭文件 int FCLOSE(int fileid);
文件块读 int FREAD(void *ptr, int n, int fileid);
文件块写 int FWRITE(void *ptr, int n, int fileid);
判断文件结束 int FEOF(int fileid);
获取文件指针 long FGETPOS(int fileid);
设置文件指针 int FSETPOS(int fileid, long offset);
取得文件长度 long FGETLEN(char *filename);
2、提供文件系统创建程序
3、有功能检测模块
4、为简化程序设计,假定目录区域大小固定。
文件系统空间划分:
保留扇区
FAT表区
(或字节映像图区)
根目录区
文件分区
可以使用的C语言文件操纵函数:
FILE *fopen(const char *filename, const char *mode);
int fclose(FILE *stream);
int fseek(FILE *stream, long offset, int whence);
long ftell(FILE *stream);
size_t fread(void *ptr, size_t size, size_t n, FILE *stream);
size_t fwrite(const void *ptr, size_t size, size_t n, FILE *stream);
课题三: 两级目录结构。
目录管理是文件系统的核心功能之一。该问题可描述为:创建一简易的文件系统,其
核心是体现目录管理的功能。即:创建一个两级目录结构,其一为系统主目录,另一为用户目录。主目录对系统的用户进行管理,用户目录对用户文件进行管理。用户申请创建的文件确实存在于存储器中,并能对用户的文件进行各种操作(功能同课题二)。
2.设计要求:
课题一的总体要求是:对终端的随机性输入序列(模拟进程申请资源),能报告新状态是否安全,并决定是否确实将资源分配给该进程。
其它要求为:
(1)系统中的资源种类数及进程数不少于5。
(2)有输入的界面,以提供来自终端的随机性输入序列(模拟进程申请资源)。
(3) 有输出界面,能报告系统的状态。
(4)程序能根据将步入的状态是否安全来处理这次分配是否实施。
课题二和三的总体要求是:并应能实现“按名存取”、有较快的检索速度等目标。
其它要求为:
(1)有交互界面,便于对用户对文件进行操作,对非法输入有错误报告。
(2)能根据用户提供的文件名创建文件。(可用内存模拟)如在外存实现评阅时酌情加分。
(3)能根据用户提供的文件名读取文件。将文件夹内容正确显式。
(4)能根据用户的要求删除相应的文件。
能根据用户提供的文件
文档评论(0)