1、山东理工大学计算机学院课 程 设 计(操作系统)班 级姓 名学 号指导教师二一一 年 六 月二十四日课程设计任务书及成绩评定课题名称基于多级文件目录的文件管理系统设计、题目的目的和要求: (1)实现建立文件、打开文件、复制文件、查询目录;(2)建立相应的数据结构; 、设计进度及完成情况日 期内 容6.13-6.15选取参考书,查阅有关文献资料,完成课程设计说明书内容1部分。 完成课程设计说明书内容2-4部分6.166.20创建相关数据结构,录入源程序6.216.22调试程序并记录调试中的问题,完成课程设计说明书第5部分。6.23系统测试,演示设计成果,考核成绩。6.24整理课程设计说明书,上午
2、11时,由学习委员交课程设计说明书、主要参考文献及资料1 汤子赢等.计算机操作系统(第二版).西安电子科技大学出版社,2006.82 冯耀霖等.操作系统,西安电子科技大学出版社.19923 张尧学等.计算机操作系统教程(第2版).清华大学出版社,2001.44 谭耀铭.操作系统.中国人民大学出版社,2003.45 Abraham Silberschatz,Peter Galvin & Greg Gagne,Applied Operating System Concepts,Higher Education Press,2002、成绩评定:设计成绩: (教师填写)指导老师: (签字)二一一 年
3、六 月二十四日目 录第一章 概述1第二章 系统分析2第三章 系统设计3第四章 程序设计流程图或N-S图4第五章 调试过程中的问题及系统测试情况21第六章 结束语24第一章 概述1.1本课程设计意义 课程设计是实践性教学中的一个重要环节,它以某一课程为基础,可以涉及和课程相关的各个方面,是一门独立于课程之外的特殊课程。课程设计是让同学们对所学的课程更全面的学习和应用,理解和掌握课程的相关知识。计算机操作系统一门重要的专业课,是开发操作系统和软件系统的理论和应用基础。第二章 系统分析1.对文件应设置存取控制保护方式,如“允许读”、“允许写”等。2.系统的外部特征应接近于真实系统,可设置下述文件操作
4、命令:建立文件、修改属性、删除文件、读文件、写文件、复制文件、查询目录。3.通过键盘使用该文件系统,系统应显示操作命令的执行结果。第三章 系统设计 设计方案: 本系统一共建立了Administrator 和Guest两个用户,每个用户拥有一个结构体数组为struct Flie fa8和 struct Flie fg8每个用户最多可一建立8个文件,每个文件对应一个文件模块; 文件模块: struct Flie int ed; /判断是否正存放文件 char f_name8; /文件名 char f_c8; /存放文件内容 int att ; / 文件属性 0为只读 1为只写 ; 文件模块示意图:
5、edf_name8attf_c8 函数设计和功能分析:系统调用原型功能主要参数说明void check()密码认证admin为函数出口int init()初始化操作界面返回i执行相应的操作void createfile()创建文件name为文件名-fa.f_namevoid deletefile()删除文件void openfile()打开文件void exit()退出系统void writefile()书写文件c为文件内容-fa.f_cvoid copyfile()复制文件void modifyfile()修改属性a为文件属性-fa.attvoid catalogue()目录管理第四章 程序
6、设计流程图或N-S图Main()函数的流程图:消注?成功? 开始用户登陆NY接收命令 解析命令实现命令 结束N选择用户退出NYY设计程序:#include #include /*不容易归类的标准函数库*/#include struct Flieint ed; /判断是否正存放文件char f_name8; /文件名char f_c8; /存放文件内容int att ; / 文件属性 0为只读 1为只写 /用于指向文件内容模块fa8,fg8;int x; /全局钥匙void check() /密码认证int check,a=1;char pin1=admin; /此处设定用户口令char pin
7、20; while(a)printf(* * * * * * * * * * * * * * * * * * * * * * * * * * * *n);printf( * 文件管理系统用户登录 *n);printf(* * * * * * * * * * * * * * * * * * * * * * * * * * * *n);printf(请选择用户:n);printf( 1.Administrator 2.Guest 3.退出系统n);scanf(%d,&x);getchar();if(x=3)system(cls);break;printf(密 码:);scanf (%s,pin);
8、check=strcmp(pin,pin1);if (check!=0)system(cls);printf(n密码错误! 请重新输入:n);elsesystem(cls);a=0;void createfile() /*创建文件操作*/int handle=1,a,check,i,j,h;char name8,pin8;while(1) printf(* * * * * * * * * * * * * * * * * * * * * * * * * * * *n);printf( * 创建文件 *n); printf(* * * * * * * * * * * * * * * * * * *
9、 * * * * * * * * *n);printf(请输入所要创建的文件名称:n);scanf(%s,name);if(x=1)for( i=0;i8;i+)for(j=0;j8;j+) pinj=fai.f_namej;check=strcmp(pin,name); if (check!=0) else printf(n创建错误!文件已经存在!);handle=0;getchar();break; if(handle=1)for(h=0;h8;h+)if(fah.ed=0)strcpy(fah.f_name,name); while(1) printf(n请选择文件属性(0.只读 - 1
10、.只写):); scanf(%d,&a); getchar(); if(a=0|a=1) fah.att=a; printf(n创建文件成功.n);fah.ed=1; break; else printf(错误! 请重新输入:n);break;getchar();break;if(x=2)for( i=0;i8;i+)for(j=0;j8;j+) pinj=fgi.f_namej;check=strcmp(pin,name); if (check!=0) else printf(n创建错误!文件已经存在!);handle=0;break; if(handle=1) for(h=0;h8;h+)if(fah.ed=0)strcpy(fgh.f_name,name); while(1) printf(n请选择文件属性(0.只读 - 1.只写):
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1