欢迎来到天天文库
浏览记录
ID:15164919
大小:704.00 KB
页数:35页
时间:2018-08-01
《课程设计任务六 文件操作与管理》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、《操作系统原理》课程设计报告课题名称:姓名:班级:学号:指导老师:苏庆刚二〇一三年十二月二十日目录第1章《操作系统原理》课程设计的目的与要求11.1目的11.2要求1第2章简述课程设计内容、主要功能和实现环境22.1课程设计内容。22.2各函数功能介绍22.3实现环境5第3章任务的分析、设计、实现和讨论63.1任务分析、设计、实现63.2程序流程7第4章《操作系统》课程设计小结13第5章源代码14参考文献18第1章《操作系统原理》课程设计的目的与要求1.1目的随着社会信息量的极大增长,要求计算机处理的信息与日俱增,涉及到社会生活的各个方面。因此,文件管理是操作系统的一个极为重要的
2、组成部分。学生应独立地用高级语言编写和调试一个简单的文件系统,模拟文件管理的工作过程。从而对各种文件操作命令的实质内容和执行过程有比较深入的了解,掌握它们的实施方法,加深理解课堂上讲授过的知识。实现文件系统中的建立文件、关闭文件、写文件的功能。1.2要求(1)设计一个多(n)用户的文件系统,每个用户最多可保存m个文件。(2)限制用户在一次运行中只能打开l个文件。(3)系统应能检查打入命令的正确性,出错要能显示出错原因。(4)对文件访问权限必须设置保护措施,如只能执行,允许读、允许写等。在每次打开文件时,根据本次打开的要求,再次设置保护级别,即可有二级保护。(5)对文件的操作至少应
3、有下述几条命令:creat建立文件。delete删除文件。open打开文件。close关闭文件。read读文件。write写文件。32第2章简述课程设计内容、主要功能和实现环境2.1课程设计内容。编写和调试一个简单的文件系统,模拟文件管理的工作过程。实现各种文件操作命令,打入相应命令后就可建立、删除、读、写、打开和关闭文件,如命令打错,系统会指出并给用户提示。2.2各函数功能介绍*@brief初始化所有用户的信息,将文件中的用户及用户数据读入程序*/voidinitAllUsers()*@brief检测登陆的用户是否在系统中存在**@paramusername要检测的用户名**@
4、return用户名存在返回true,否则返回false*/booluserIsExist(constchar*username)*@brief检测某个用户目录下面该filename的文件是否已经存在**@paramfilename要检测的文件名**@return返回该filename文件在文件链表中的迭代器,即在用户目录下面的索引*/list::iteratorfileIsExist(constchar*filename)//检查要删除的文件是否已被打开/***@brief检测该filename的文件在打开文件链表中是否存在,判断该filename是否打开*
5、*@paramfilename要检测的文件名*32*@return存在则返回该filename文件在打开文件映射中的迭代器,即打开文件的信息*/map::iteratorfileIsOpen(constchar*filename)//当用户输入错误时,是否继续输入/***@brief当用户输入错误时,判读用户是否继续**@return输入y则返回true,其他返回false*/boolisContinue()*@brief检测用户是否是root用户,当使用默认参数时,判断当前登录用户是否是root用户*不使用参数时,表示删除的用户是否是ro
6、ot用户*@paramusername要检测的用户名**@return是root用户则返回true,否则返回false*/boolisRoot(char*username="root")/***@brief检测用户是否能登陆,能登陆就初始化当前用户**@return成功登陆返回true,否则返回false*/boolentry()/***@brief显示当前用户目录下的文件*/voiddisCurrentDir()/***@brief显示当前用户已打开的文件*/voiddisOpenFile()/***@brief释放程序中用户目录申请的资源32**@parammfd_Entry
7、_pointer用户目录的指针*/voidreleaseMFD_Entry(MFD_Entry*mfd_Entry_pointer)/***@brief将用户链表中的用户写入用户存放文件*/voidwriteUser()/***@briefroot进行创建用户的函数*/voidcreateUser()/***@briefroot用户进行删除用户的操作*/voiddeleteUser()/***@brief进行创建文件的操作*/voidcommand_CREATE()/***@br
此文档下载收益归作者所有