欢迎来到天天文库
浏览记录
ID:6809417
大小:149.50 KB
页数:19页
时间:2018-01-26
《操作系统课程设计-文件管理系统设计》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、xx计算机科学与技术学院课程设计报告**大学计算机科学与技术学院课程设计报告(2006~2007学年度第2学期)课程名称操作系统课程设计项目名称文件管理系统设计姓名学号专业班级地点教师xx计算机科学与技术学院课程设计报告1.题目内容:文件管理系统设计:设计和调试一个简单的文件系统,通过模拟文件操作命令的执行,来模拟文件管理,对主要文件操作命令的实质和执行过程有比较深入的了解,掌握它们的基本实施方法.2.设计任务及主要技术: 设计任务:1.设计一个支持n个用户的文件系统,每个用户可拥有多个文件.2.采用二级或二级以上的多
2、级文件目录管理.主要技术:1.对文件应设置存取控制保护方式,如“允许读”、“允许写”等.2.系统的外部特征应接近于真实系统,可设置下述文件操作命令:建立文件、修改属性、删除文件、读文件、写文件、复制文件、查询目录.3.通过键盘使用该文件系统,系统应显示操作命令的执行结果.3.设计方案及论证结果设计方案:本系统一共建立了Administrator和Guest两个用户,每个用户拥有一个结构体数组为structFliefa[8]和structFliefg[8]每个用户最多可一建立8个文件,每个文件对应一个文件模块;文件模块:
3、structFlie{inted;//判断是否正存放文件charf_name[8];//文件名charf_c[8];//存放文件内容intatt;//文件属性0为只读1为只写};文件模块示意图:edf_name[8]attf_c[8]函数设计和功能分析:系统调用原型功能主要参数说明voidcheck()密码认证admin为函数出口intinit()初始化操作界面返回i执行相应的操作voidcreatefile()创建文件name[]为文件名->fa[].f_name[]voiddeletefile()删除文件voido
4、penfile()打开文件voidexit()退出系统voidwritefile()书写文件c[]为文件内容->fa[].f_c[]voidcopyfile()复制文件voidmodifyfile()修改属性a为文件属性->fa[].attvoidcatalogue()目录管理xx计算机科学与技术学院课程设计报告Main()函数的流程图:消注?成功?开始用户登陆NY接收命令解析命令实现命令结束N选择用户退出NYY xx计算机科学与技术学院课程设计报告4.系统的原理框图: AdministratorGuestflie1f
5、lie2……flie1flie2……edf_name[]attf_c[]文件名文件属性文件内容判断存储状态edf_name[]attf_c[]5.设计程序:#include#include/*不容易归类的标准函数库*/#includestructFlie{inted;//判断是否正存放文件charf_name[8];//文件名charf_c[8];//存放文件内容intatt;//文件属性0为只读1为只写//用于指向文件内容模块}fa[8],fg[8];intx
6、;//全局钥匙voidcheck()//密码认证{intcheck,a=1;charpin1[]="admin";//此处设定用户口令charpin[20];xx计算机科学与技术学院课程设计报告while(a){printf("****************************");printf("*文件管理系统用户登录*");printf("****************************");printf("请选择用户:");printf("1.Administrator2.Guest
7、3.退出系统");scanf("%d",&x);getchar();if(x==3){system("cls");break;}printf("密码:");scanf("%s",pin);check=strcmp(pin,pin1);if(check!=0){system("cls");printf("密码错误!请重新输入:");}else{system("cls");a=0;}}}voidcreatefile()/*创建文件操作*/{inthandle=1,a,check,i,j,h;charname[8
8、],pin[8];while(1){printf("****************************");printf("*创建文件*");printf("****************************");printf("请输入所要创建的文件名称:");scanf("%s",name);if(x
此文档下载收益归作者所有