操作系统课程设计报告(共25页).doc





《操作系统课程设计报告(共25页).doc》由会员分享,可在线阅读,更多相关《操作系统课程设计报告(共25页).doc(25页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上一、概述 课程设计目的、意义:课程设计目的使学生熟悉文件管理系统的设计方法;加深对所学各种文件操作的了解及其操作方法的特点。通过模拟文件系统的实现,深入理解操作系统中文件系统的理论知识, 加深对教材中的重要算法的理解。同时通过编程实现这些算法,更好地掌握操作系统的原理及实现方法,提高综合运用各专业课知识的能力。主要任务: 模拟文件系统设计是设计和实现一个简单的文件系统。内容包括:1.建立文件存储介质的管理机制2.建立目录(采用一级目录结构)3.文件系统功能(显示目录、创建、删除、打开、关闭、读、写)4.文件操作接口(显示目录、创建、删除、打开、关闭、读、写)二、系统设
2、计 课程设计的系统设计:本系统模拟一个文件管理系统,要完成对文件的基本操作,文件的基本操作有文件、文件夹的打开、新建、删除和读取写入文件,创建更改目录,列出目录内容等信息。系统建立了文件目录树,存储文件系统中的所有文件。对于用户名下的文件,用文件目录树的分枝来存贮。采用命令行操作界面很直观,也方便用户进行操作,用户只要按照操作界面所显示的命令来操作就行了。整体设计框架:系统初始化界面是由创建用户存储空间,管理文件,退出系统三个模块组成。用户创建由创建用户存储空间,进入目录,删除用户存储空间,显示所有用户存储空间,等模块组成。然后各个模块再由一些小模块组成。其中创建文件,打开关闭文件,读写文件等
3、文件操作模块包括在进入目录模块里面。三、系统实现 课程设计主要内容的实现程序代码:#include #include #include typedef struct file char name10; struct file *next;File;typedef struct contentchar name10;File *file;int f_num;struct content *next;Content;typedef struct user char name10; char psw10; Content *con; struct user *next;User;char cur_u
4、ser20;User *user;int user_num=0;void write(char name) FILE *p; char ch; p=fopen(name,w); ch=getchar(); while(1) fputc(ch,p); ch=getchar(); if(ch=#) break; fclose(p);void read(char name)FILE *p;int i=0;p=fopen(name,r);while(!feof(p)i+;printf(%c,fgetc(p);if(i=0) printf(文件是空的!n);fclose(p);int display_f
5、iles(Content *con)int i=0;File *file;file=con-file;file=file-next;while(file!=NULL)i+;printf(文件 %d: %sn,i,file-name);file=file-next;printf( 文件总数:%dn,i);return i;int is_exist_file(File *f,char name)int exist=0;File *file=f-next;while(file!=NULL)if(strcmp(file-name,name)=0)exist=1;break;file=file-next
6、;return exist;void add_file(Content *con)int exist;char f_name10;char tail=.txt;FILE *q;File *file=con-file;File *new_f;if(con-f_num=10)printf(已存在10个文件!n);return;doexist=0;printf(输入新文件名:);scanf(%s,f_name);strcat(f_name,tail);if(is_exist_file(con-file,f_name) exist=1;if(exist=1) printf(文件已存在!n);while
7、(exist=1);q=fopen(f_name,w);fclose(q);while(file-next!=NULL) file=file-next;new_f=(File *)malloc(sizeof(File);strcpy(new_f-name,f_name);new_f-next=NULL;file-next=new_f;con-f_num+;printf(添加文件 %s 成功!n,f_name);void read_file(Content *con)char name10;char tail=.txt;int find=0;File *file=con-file-next;pr
8、intf(输入需要读取的文件名:);scanf(%s,name);strcat(name,tail); while(file!=NULL)if(strcmp(name,file-name)=0)find=1;break;file=file-next;if(find=0)printf(读取错误或文件不存在!-Read Filen);return;printf(文件已打开.n); read(name);printf(n文件 %s 读取成功!n,name);void write_file(Content *con)char name10;char tail=.txt;int find=0;File
9、*file=con-file-next;printf(输入需要编辑的文件名:);scanf(%s,name);strcat(name,tail); while(file!=NULL)if(strcmp(name,file-name)=0)find=1;break;file=file-next;if(find=0)printf(写入错误或文件不存在!-Write Filen);return;printf(文件被打开.n);printf(结尾输入#完成输入n); write(name);printf(n文件 %s 写入成功!n,name);void delete_file(Content *con
10、)int exist;char name10;File *file,*f; char tail=.txt;if(display_files(con)=0) printf(无内容!n);elsedoexist=1;printf(输入需要删除的文件名:);scanf(%s,name);strcat(name,tail);if(!is_exist_file(con-file,name) exist=0;if(exist=0) printf(文件不存在!n);while(exist=0);printf(文件正在删除.);file=con-file;f=file-next;while(f!=NULL)i
11、f(strcmp(f-name,name)=0) break;file=f;f=f-next;file-next=f-next;printf(文件删除成功!n);void move_file(User *u,Content *con)int exist;char name10;char c_name10;char tail=.txt;File *file,*f,*temp_f;Content *c;doexist=1;printf(输入需要移动文件名:);scanf(%s,name);strcat(name,tail);if(!is_exist_file(con-file,name) exis
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 操作系统 课程设计 报告 25

限制150内