文档库 最新最全的文档下载
当前位置:文档库 › 理发师问题——《操作系统》课程设计报告 (1)

理发师问题——《操作系统》课程设计报告 (1)

理发师问题——《操作系统》课程设计报告 (1)
理发师问题——《操作系统》课程设计报告 (1)

课程设计报告

课程名称操作系统

课题名称嗜睡的理发师问题

专业信息管理与信息系统

班级

学号

姓名

指导教师

2016 年 6 月18 日

湖南工程学院

课程设计任务书

课程名称操作系统

课题嗜睡的理发师问题

专业班级信管1301

学生姓名

学号

指导老师

审批

任务书下达日期2016 年 6 月 3 日任务完成日期2016 年 6 月17 日

一、设计内容与设计要求

1.课程设计目的:

《操作系统》课程设计是信管专业实践性环节之一,是学习完《操作系统》课程后进行的一次较全面的综合练习。其目的在于加深对操作系统的理论、方法和基础知识的理解,掌握操作系统结构、实现机理和各种典型算法,系统地了解操作系统的设计和实现思路,培养学生的系统设计能力,并了解操作系统的发展动向和趋势。

进一步提高上机动手能力,培养使用计算机解决实际问题的能力,为后继课程的学习和实验,以及毕业设计的完成打下扎实的基础。

2.课题题目

嗜睡的理发师问题

一个理发店由一个有N张沙发的等候室和一个放有一张理发椅的理发室组成。没有顾客要理发时,理发师便去睡觉。当一个顾客走进理发店时,如果所有的沙发都已被占用,他便离开理发店;否则,如果理发师正在为其他顾客理发,则该顾客就找一张空沙发坐下等待;如果理发师因无顾客正在睡觉,则由新到的顾客唤醒理发师为其理发。在理发完成后,顾客必须付费,直到理发师收费后才能离开理发店。试用信号量实现这一同步问题。

3.设计要求:

1.根据自己对应的课题完成以下主要工作:

(1).分析设计要求,给出解决方案,建立必要的数据结构,然后设计总体流程(包

括界面)、详细设计必要的算法,并最终显示结果。基于WINDOWS或LINUX

操作系统都可以,用何种编程语言都有可以。

(2).提交设计报告,包括设计要求、设计思想流程、设计所涉及的主要数据结构、

程序清单、运行结果、设计心得、参考资料等。

(3).严禁抄袭,复制设计内容,查出后相关同学设计成绩以零分处理。

(4).所提交源程序应是能够运行通过的完整程序。

(5).提交不少于5000字的课程设计报告,含系统说明,系统功能图,流程图,程序

设计说明,源程序清单

2. 设计过程中既要虚心接受老师的指导,又要充分发挥主观能动性、独立思考、

努力钻研、勤于实践、勇于创新。

3.在设计过程中,要严格要求自己,树立严密、严谨的科学态度,必须按时、保质、保量完成任务。要求独立完成规定的设计内容,不得弄虚作假,不准抄袭或拷贝他人的程序或其他内容。

4.不得迟到、早退、旷课。缺课节数达两次以上者,成绩按不及格处理。

二、进度安排

第 15 周星期一 14:30—18:30

星期三 14:30—18:30

星期四 14:30—18:30

第 16 周星期二 14:30—18:30

星期三 14:30—18:30

星期四 14:30—18:30

目录

1需求分析.................................................................................................................................................... 1

1.1系统设计题目................................................................................................................................ 1

1.2问题具体描述................................................................................................................................ 1

1.3问题分析........................................................................................................................................ 1

1.4运行环境分析................................................................................................................................ 12总体设计.................................................................................................................................................... 1

2.1简要介绍........................................................................................................................................ 2

2.2概要设计流程图............................................................................................................................ 2

2.3数据结构说明................................................................................................................................ 23详细设计.................................................................................................................................................... 3

3.1详细设计流程图............................................................................................................................ 3

3.2 C++语言定义相关的数据类型..................................................................................................... 3

3.3 各模块功能................................................................................................................................... 44调试与运行结果........................................................................................................................................ 4

4.1 调试............................................................................................................................................... 4

4.2 运行结果....................................................................................................................................... 45心得体会.................................................................................................................................................... 66附录 ........................................................................................................................................................... 6

6.1源代码............................................................................................................................................ 7

6.2参考文献.................................................................................................................................... 117评分表.................................................................................................................................................... 12

1需求分析

1.1系统设计题目

理发店有三个理发师,有三张沙发。顾客来了理发师正忙可以坐在沙发上。理发师理完发可以从沙发上叫醒顾客理发。

1.2问题具体描述

理发店有三个理发师,有三张沙发。顾客来了理发师正忙可以坐在沙发上。理发师理完发可以从沙发上叫醒顾客理发。所以主要由理发师,沙发和顾客组成,当顾客数为零时,理发师休息,当顾客来时,判定理发师是否空闲,如果空闲则理发师理发。当顾客数超过理发师数时,理发师都忙碌,顾客则坐沙发休息,如果未理发的顾客数超过沙发数则顾客离开。

1.3问题分析

理发师问题是一个利用信号量进行PV操作的经典问题。设计程序实现此问题,要使得理发师的活动与顾客的活动得到各自真实得模拟。所执行的程序应体现:理发师在没有顾客的时候去睡觉,有顾客则工作;顾客在理发师工作时坐下等待,无座时离开,直至等到理发师自己理理发。

1.4运行环境分析

操作系统:windows 7\8\2000\2003\xp

运行环境:Microsoft Visual Studio 6.0

内存:1G

CPU:2.0G Hz

系统硬盘:30G

2总体设计

2.1简要介绍

此程序主要完成下面各大功能

(1)友好界面

(2)实现本程序是否开始的功能。

(3)实现理发师的理发功能。

(4)设置控制程序结束的语句,可根据用户需要而结束程序

2.2概要设计流程图

图2.1 概要设计流程图

2.3数据结构说明

本程序用到了数据结构中的队列,理发的顾客由随机函数产生,顾客遵从先到先理发的原则,但队列的长度限制为输入的理发店中的椅子的个数,当理发店的椅子没有空位的时候,到来的顾客主动退出加入队列。理发师对队列中的顾客进行先到先服务的原则理发。

3详细设计

3.1详细设计流程图

图3.1 详细设计流程图3.2 C++语言定义相关的数据类型

int chairs; //普通椅子数

int customers=0; //顾客数

int count=0; //循环中用来计量的

int waiting=0; //等候理发的人数

int finish=0; //已经理完发的人数

int work=0; //理发师是否在工作

int sleeping=0; //理发师是否在打瞌睡

char opendoor; //理发店是否开门接待顾客

char blank; //获取空白字符

3.3 各模块功能

(1)来理发的顾客是随机产生,代码如下:

#define random (rand()*10000)/RAND_MAX //用来产生随机数

(2)停顿时间,代码如下:

Sleep(2000); //为一个顾客理发需要时间

printf("理发完成。\n");

work=0; //理发完成,理发师空闲

finish++; //理发完人数加1

4调试与运行结果

4.1 调试

在开始程序是,先由程序员输入椅子数chairs,然后询问程序员是否开门营业:若程序员输入‘y’,则开门营业;若输入‘n’,则持续询问程序员是否营业。

在刚开门营业之后,先随机产生顾客:若没顾客来,则理发师打瞌睡,再次进行产生顾客;若有顾客来,则直接为顾客理发。

在为顾客理发期间,程序自动产生顾客,最多产生5个顾客。顾客进来后,先看看理发师是否在理发,是则看看是否有空椅子,若有则坐下,无则离开。如果理发师正空闲,则直接为顾客理发。

当理发完成之后,先判断已经为多少人理发了,如果未超过4人,则继续营业。若已超过,则询问程序员是否继续营业。

若继续理发,则先判断是否有人等待,若有则先为等待最久的顾客理发,若没则理发师打瞌睡,程序继续回到随机产生顾客。

4.2 运行结果

(1)进入程序运行界面,输入理发店等待的椅子发数目

图4.1 (2)理发师开门营业

图4.2 (3)理发师理发完成

图4.3 (4)退出程序

图4.4

5心得体会

课程设计对学生而言是其对所学课程内容掌握情况的一次自我验证,从而有着极其重要的意义。通过课程设计能提高学生对所学知识的综合应用能力,能全面检查并掌握所学内容;《计算机操作系统》从课程性质上讲是一门专业基础课,它的目的和任务就是训练学生对计算机操作系统的认识,让学生对计算机操作系统有更进一部的认识,进而增加其对学习和应用相关专业课的兴趣。

通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,将结论用于实践,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中当然遇到了问题,可以说得是困难重重,毕竟这是不可避免的,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。由于能力有限,其中文档的编写是参考书上资料,我想在以后的学习中,要更注重实践这一环节。通过这次课程设计使我们懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到种种问题,同时在设计的过程中发现了自己的不足之处,对一些前面学过的知识理解得不够深刻,掌握得不够牢固,通过这次课程设计之后,我们把前面所学过的知识又重新温故了一遍。

从设计过程看,在整整两个星期的日子里,做到精益求精,学到了很多很多的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。从设计结果看,设计要求完成任务,达到了预期的目的,设计、演示效果较好。最主要是从中学到了知识。

通过这次课程设计,我学到了很多,得到了很多,不仅充分的将在书本中学到的知识运用到解决实际问题上,而且加强了自己的动手能力。我会总结出这次课程设计的所有的成功以及失败的经验和心得,并希望老师能够批评指出存在的错误之处,期待有更多的机会让我实践理论知识。

总的来说,这次课程设计确实学到很多,不仅锻炼了我遇到问题解决问题的勇气和能力,还练就了遇到挫折不达目的不罢休的韧性,这在以后的工作与学习中将会非常重要。

6附录

6.1源代码

#include

#include

#define random (rand()*10000)/RAND_MAX //用来产生随机数void main()

{

int chairs; //普通椅子数

int customers=0; //顾客数

int count=0; //循环中用来计量的

int waiting=0; //等候理发的人数

int finish=0; //已经理完发的人数

int work=0; //理发师是否在工作

int sleeping=0; //理发师是否在打瞌睡

char opendoor; //理发店是否开门接待顾客

char blank; //获取空白字符

printf("请输入理发店内的普通椅子数:\n");

scanf("%d",&chairs);

blank=getchar();

printf("理发店内总共有%d把普通椅子。\n",chairs);

printf("要开门接待顾客吗?y/n\n");

opendoor=getchar();

while(opendoor!='y')

{

printf("对不起,尚未营业!\n");

blank=getchar();

printf("要开门接待顾客吗?y/n\n");

opendoor=getchar();

}

printf("开门迎接客人!\n"); //开门接待顾客

if(random%2) //刚开门时随机产生顾客,分有顾客和没顾客两种情况,若为真,则有顾客

{

printf("刚开门就有顾客到来。\n");

customers++; //顾客数加1

printf("理发师为第%d个顾客理发。\n",customers);

work=1; //进入工作状态

Loop:for(count=0;random%2&&count<=5;count++) /*理发师为一个顾客理发的期间随机产生顾客,分有顾客和没顾客两种情况,若为真则有顾客,且最多为来了五个*/

{

customers++;

printf("第%d个顾客到来了。\n",customers);

sleeping=0; //设定理发师不在打瞌睡状态

if(work==1) //判断是否正为顾客理发,是则新来顾客等待,否则不用等待

{

if(waiting

{

printf("有%d把空椅子,顾客坐下等待。\n",chairs-waiting);

waiting++;

}

else

printf("没有空椅子,顾客离开。\n");

}

else

{

printf("理发师为第%d个顾客理发。\n",customers);

work=1;

}

}

if(work==1)

{

Sleep(2000); //为一个顾客理发需要时间

printf("理发完成。\n");

work=0; //理发完成,理发师空闲

finish++; //理发完人数加1 }

if(finish>4) //完成为4个人理发的任务,询问理发师是否继续工作

{

printf("已经为%d位顾客理发了,还有%d个顾客在等待,是否继续工作?y/n\n",finish,waiting);

blank=getchar();

opendoor=getchar();

if(opendoor=='n')

exit(0);

sleeping=0; //继续工作则改为清醒状态}

if(waiting>0) //看看是否有人在等待理发

{

printf("有%d位顾客等待,理发师继续为等待的顾客理发\n",waiting);

waiting--;

work=1; //有则进入工作状态

goto Loop;

}

else //无则打瞌睡

{

if(sleeping==0)

{

printf("没有顾客来理发,理发师打瞌睡中……\n");

sleeping=1;

}

goto Loop; //继续边打瞌睡边等顾客}

}

else //刚开门时随机产生顾客,若为假,则无顾客,理发师打瞌睡

{

if(sleeping==0)

{

printf("没有顾客来理发,理发师打瞌睡中……\n");

sleeping=1;

}

goto Loop;

}

}

6.2参考文献

[1] 郁红英,李春强.计算机操作系统.北京:清华大学出版社,2008

[2] 孟庆昌.操作系统.北京:电子工业出版社,2009

[3] 汤子瀛,哲凤屏.计算机操作系统.北京:电子工业出版社,2009

[4] 尤晋元,史美林等.windows操作系统原理.北京:机械工业出版社,2001

[5] 孟静.计算机操作系统原理教程.北京:清华大学出版社,2005

[6] 广树建.新编C/C++程序设计教程.广州:华南理工出版社,2008

7评分表

计算机与通信学院课程设计评分表课程名称:操作系统

教师签名:

日期:

课程设计报告模板)

课程设计报告模板()

————————————————————————————————作者: ————————————————————————————————日期: ?

课程设计(论文)任务书 软件学院软件+电商专业09级(2)班 一、课程设计(论文)题目基本模型机设计与实现 二、课程设计(论文)工作自2011年6月 20 日起至2011年 6月 24日止。 三、课程设计(论文) 地点:计算机组成原理实验室(5#301) 四、课程设计(论文)内容要求: 1.课程设计的目的 通过课程设计的综合训练,在掌握部件单元电路实验的基础上,进一步掌握整机 概念。培养学生实际分析问题、解决问题和动手能力,最终目标是想通过课程设计的形式,帮助学生系统掌握该门课程的主要内容,更好地完成教学任务。 2.课程设计的任务及要求 1)基本要求? (1)课程设计前必须根据课程设计题目认真查阅资料; (2)实验前准备好实验程序及调试时所需的输入数据; (3)实验独立认真完成; (4)对实验结果认真记录,并进行总结和讨论。 2)课程设计论文编写要求 (1)按照书稿的规格撰写打印课设论文 (2)论文包括目录、绪论、正文、小结、参考文献、附录等 (3)正文中要有问题描述、实验原理、设计思路、实验步骤、调试过程与遇到问题的解决方法、总结和讨论等 (4)课设论文装订按学校的统一要求完成 3)课设考核 从以下几方面来考查:

(1)出勤情况和课设态度; (2)设计思路; (3)代码实现; (4)动手调试能力; (5)论文的层次性、条理性、格式的规范性。 4)参考文献 [1]王爱英.计算机组成与结构[M]. 北京:清华大学出版社, 2007. [2] 王爱英. 计算机组成与结构习题详解与实验指导[M]. 北京:清华大学出版社, 2007. 5)课程设计进度安排 内容天数地点 构思及收集资料1图书馆 实验与调试 3 实验室 撰写论文 1 图书馆 6)任务及具体要求 设计实现一个简单的模型机,该模型机包含若干条简单的计算机指令,其中至少包括输入、输出指令,存储器读写指令,寄存器访问指令,运算指令,程序控制指令。学生须根据要求自行设计出这些机器指令对应的微指令代码,并将其存放于控制存储器,并利用机器指令设计一段简单机器指令程序。将实验设备通过串口连接计算机,通过联机软件将机器指令程序和编写的微指令程序存入主存中,并运行此段程序,通过联机软件显示和观察该段程序的运行,验证编写的指令和微指令的执行情况是否符 合设计要求,并对程序运行结果的正、误分析其原因。 学生签名: 亲笔签名 2011年6月20 日 课程设计(论文)评审意见 (1)设计思路:优( )、良()、中( )、一般()、差( ); (2)代码实现:优()、良()、中()、一般()、差();

操作系统课程设计

课程设计报告 2015~2016学年第一学期 操作系统综合实践课程设计 实习类别课程设计 学生姓名李旋 专业软件工程 学号130521105 指导教师崔广才、祝勇 学院计算机科学技术学院 二〇一六年一月

- 1 -

- 2 -

一、概述 一个目录文件是由目录项组成的。每个目录项包含16B,一个辅存磁盘块(512B)包含32个目录项。在目录项中,第1、2字节为相应文件的外存i节点号,是该文件的内部标识;后14B为文件名,是该文件的外部标识。所以,文件目录项记录了文件内、外部标识的对照关系。根据文件名可以找到辅存i节点号,由此便得到该文件的所有者、存取权、文件数据的地址健在等信息。UNIX 的存储介质以512B为单位划分为块,从0开始直到最大容量并顺序加以编号就成了一个文件卷,也叫文件系统。UNIX中的文件系统磁盘存储区分配图如下: 本次课程设计是要实现一个简单的模拟Linux文件系统。我们在内存中开辟一个虚拟磁盘空间(20MB)作为文件存储器,并将该虚拟文件系统保存到磁盘上(以一个文件的形式),以便下次可以再将它恢复到内存的虚拟磁盘空间中。文件存储空间的管理可采用位示图方法。 二、设计的基本概念和原理 2.1 设计任务 多用户、多级目录结构文件系统的设计与实现。可以实现下列几条命令login 用户登录 logout 退出当前用户 dir 列文件目录 creat 创建文件 delete 删除文件 open 打开文件 close 关闭文件 - 3 -

read 读文件 write 写文件 mkdir 创建目录 ch 改变文件目录 rd 删除目录树 format 格式化文件系统 Exit 退出文件系统 2.2设计要求 1) 多用户:usr1,usr2,usr3,……,usr8 (1-8个用户) 2) 多级目录:可有多级子目录; 3) 具有login (用户登录)4) 系统初始化(建文件卷、提供登录模块) 5) 文件的创建:create (用命令行来实现)6) 文件的打开:open 7) 文件的读:read8) 文件的写:write 9) 文件关闭:close10) 删除文件:delete 11) 创建目录(建立子目录):mkdir12) 改变当前目录:cd 13) 列出文件目录:dir14) 退出:logout 新增加的功能: 15) 删除目录树:rd 16) 格式化文件系统:format 2.3算法的总体思想 - 4 -

操作系统课程设计报告书

题目1 连续动态内存管理模拟实现 1.1 题目的主要研究内容及预期达到的目标 (1)针对操作系统中内存管理相关理论进行设计,编写程序并进行测试,该程序管理一块虚拟内存。重点分析三种连续动态内存分配算法,即首次适应算法、循环首次适应算法和最佳适应算法。 (2)实现内存分配和回收功能。 1.2 题目研究的工作基础或实验条件 (1)硬件环境:PC机 (2)软件环境:Windows XP,Visual C++ 6.0 1.3 设计思想 首次适应算法的实现:从空闲分区表的第一个表目起查找该表,把最先能够满足要求的空闲区分配给作业,这种方法的目的在于减少查找时间。为适应这种算法,空闲分区表中的空闲分区要按地址由低到高进行排序。该算法优先使用低址部分空闲区,在低址空间造成许多小的空闲区,在高址空间保留大的空闲区。 循环首次适应算法的实现:在分配内存空间时,不再每次从表头开始查找,而是从上次找到空闲区的下一个空闲开始查找,直到找到第一个能满足要求的的空闲区为止,并从中划出一块与请求大小相等的内存空间分配给作业。该算法能使内存中的空闲区分布得较均匀。 最佳适应算法的实现:从全部空闲区中找到能满足作业要求的、且最小的空闲分区,这种方法能使碎片尽量小。为适应此算法,空闲分区表中的空闲分区要按从小到大进行排序,从表头开始查找第一个满足要求的自由分配。 1.4 流程图 内存分配流程图,如图1-1所示。

图1-1 内存分配流程图内存回收流程图,如1-2所示。

图1-2 内存回收流程图 1.5 主要程序代码 (1)分配内存 void allocate(char z,float l) { int i,k; float ad; k=-1; for(i=0;i= l && free_table[i].flag == 1) if(k==-1 || free_table[i].length

课程设计报告【模板】

模拟电子技术课程设计报告设计题目:直流稳压电源设计 专业电子信息科学与技术 班级电信092 学号 200916022230 学生姓名夏惜 指导教师王瑞 设计时间2010-2011学年上学期 教师评分 2010年月日

昆明理工大学津桥学院模拟电子技术课程设计 目录 1.概述 (2) 1.1直流稳压电源设计目的 (2) 1.2课程设计的组成部分 (2) 2.直流稳压电源设计的内容 (4) 2.1变压电路设计 (4) 2.2整流电路设计 (4) 2.3滤波电路设计 (8) 2.4稳压电路设计 (9) 2.5总电路设计 (10) 3.总结 (12) 3.1所遇到的问题,你是怎样解决这些问题的12 3.3体会收获及建议 (12) 3.4参考资料(书、论文、网络资料) (13) 4.教师评语 (13) 5.成绩 (13)

昆明理工大学津桥学院模拟电子技术课程设计 1.概述 电源是各种电子、电器设备工作的动力,是自动化不可或缺的组成部分,直流稳压电源是应用极为广泛的一种电源。直流稳压电源是常用的电子设备,它能保证在电网电压波动或负载发生变化时,输出稳定的电压。一个低纹波、高精度的稳压源在仪器仪表、工业控制及测量领域中有着重要的实际应用价值。 直流稳压电源通常由变压器、整流电路、滤波电路、稳压控制电路所组成,具有体积小,重量轻,性能稳定可等优点,电压从零起连续可调,可串联或关联使用,直流输出纹波小,稳定度高,稳压稳流自动转换、限流式过短路保护和自动恢复功能,是大专院校、工业企业、科研单位及电子维修人员理想的直流稳压电源。适用于电子仪器设备、电器维修、实验室、电解电镀、测试、测量设备、工厂电器设备配套使用。几乎所有的电子设备都需要有稳压的电压供给,才能使其处于良好的工作状态。家用电器中的电视机、音响、电脑尤其是这样。电网电压时高时低,电子设备本身耗供电造成不稳定因家。解决这个不稳定因素的办法是在电子设备的前端进行稳压。 直流稳压电源广泛应用于国防、科研、大专院校、实验室、工矿企业、电解、电镀、充电设备等的直流供电。 1.1直流稳压电源设计目的 (1)、学习直流稳压电源的设计方法; (2)、研究直流稳压电源的设计方案; (3)、掌握直流稳压电源的稳压系数和内阻测试方法。 1.2课程设计的组成部分 1.2.1 设计原理

操作系统课程设计报告

操作系统课程设计报告

东莞理工学院 操作系统课程设计报告 学院:计算机学院 专业班级: 13软件工程1班 提交时间: 2015/9/14 指导教师评阅意见: . 项目名称:进程与线程管理功能 一、设计目的 用语言来模拟进程和线程管理系统,加深对进程和线程的理解,掌握对进程和线程各种状态和管理的算法原理。

二、环境条件 系统: WindowsXP、VMWare、Ubuntu Linux 语言:C/C++ 开发工具:gcc/g++、Visual C++ 6.0 三、设计内容 1. 项目背景 计算机的硬件资源有限,为了提高内存的利用率和系统的吞吐量,就要根据某种算法来管理进程和线程的状态从而达到目的。 进程与线程管理功能完成基于优先级的抢占式线程调度功能,完成进程虚拟内存管理功能。 进程与线程管理功能 基本要求:完成基于优先级的抢占式线程调度功能,完成进程虚拟内存管理功能。 提高要求:(增加1项就予以加分) (1) 实现多种线程调度算法; (2)通过“公共信箱”进行通信的机制,规定每一封信的大小为128字节,实现两个用户进程之间通过这个“公共信箱”进行通信。 (3) 实现多用户进程并发的虚拟内存管理功能。

(4) 实现用户进程间通信功能,并用生产者/消费者问题测试进程间通信功能的正确性。 (5) 实现改进型Clock页面置换算法。 (6) 实现Cache功能,采用FIFO替换算法。 2. 扩展内容 实现多种线程调度算法:时间片轮转调度算法 四、人员分工 优先级调度算法:钟德新,莫友芝 时间片轮转调度算法:张德华,袁马龙 设计报告由小组队员共同完成。小组成员设计的代码分工如下:钟德新编写的代码:void Prinft(){ PCB *p; system("cls");//清屏 p=run; //运行队列 if(p!=NULL) { p->next=NULL; } cout<<"当前正在运行的进程:"<procname<<"\t\t"<pri<<"\t"<needOftime<<"\t\t"<runtime<<"\t\t"<state<next; } cout<

课程设计报告模版

课程设计报告模版

《城市排水处理》 课程设计报告 系别:城市建设系 专业班级:给水排水0601班 学生姓名: 指导教师:段泽琪 (课程设计时间: 6月15日—— 6月19日) 华中科技大学武昌分校

目录 1.课程设计目的 (1) 2.课程设计题目描述和要求 (1) 3.课程设计报告内容 (3) 3.1污水处理工艺方案比较 (3) 3.2主要污水处理构筑物选型 (6) 3.3污水处理构筑物的主要设计参数 (7) 3.4污水处理辅助构筑物设计 (8) 3.5污水处理厂平面布置设计 (8) 3.6 污水处理厂高程布置设计 (9) 3.7 设计计算………………………………………………………………………

10 4.总结……………………………………………………………………………页码 参考文献…………………………………………………………………………页码 (要求:目录题头用三号黑体字居中书写,隔行书写目录内容。目录中各级题序及标题用小四号黑体)

1. 课程设计目的 (1) 经过污水处理厂课程设计,巩固学习成果,加深对《水污染控制》课程内容的学习与理解,使学生学习使用规范、手册与文献资料,进一步掌握设计原则、方法等步骤,达到巩固、消化课程的主要内容; (2) 锻炼独立工作能力,对污水处理厂的主体构筑物、辅助设施、计量设备及污水厂总体规划、管道系统做到一般的技术设计深度,培养和提高计算能力、设计和绘图水平; (3) 在教师指导下,基本能独立完成一个中、小型污水处理厂工艺设计,锻炼和提高学生分析及解决工程问题的能力。 2.课程设计题目描述和要求 2.1 设计题目描述 (1) 设计题目 某城市污水处理厂工艺初步设计。 (2) 设计内容 根据任务书所给定的资料,综合运用所学的基础、专业基础和专业知识,设计一个中小型污水处理厂。 ①确定污水处理方法和工艺流程; ②选择各种处理构筑物形式,并进行工艺设计计算(计算书中要附计算草图); ③估算各辅助构筑物的平面尺寸; ④进行污水厂平面布置和高程布置。

操作系统课程设计报告

上海电力学院 计算机操作系统原理 课程设计报告 题目名称:编写程序模拟虚拟存储器管理 姓名:杜志豪.学号: 班级: 2012053班 . 同组姓名:孙嘉轶 课程设计时间:—— 评语: 成绩: 目录 一、设计内容及要求 (4) 1. 1 设计题目 (4) 1.2 使用算法分析: (4)

1. FIFO算法(先进先出淘汰算法) (4) 1. LRU算法(最久未使用淘汰算法) (5) 1. OPT算法(最佳淘汰算法) (5) 分工情况 (5) 二、详细设计 (6) 原理概述 (6) 主要数据结构(主要代码) (6) 算法流程图 (9) 主流程图 (9) Optimal算法流程图 (10) FIFO算法流程图 (10) LRU算法流程图 (11) .1源程序文件名 (11) . 2执行文件名 (11) 三、实验结果与分析 (11) Optimal页面置换算法结果与分析 (11) FIFO页面置换算法结果与分析 (16) LRU页面置换算法结果与分析 (20) 四、设计创新点 (24) 五、设计与总结 (27)

六、代码附录 (27) 课程设计题目 一、设计内容及要求 编写程序模拟虚拟存储器管理。假设以M页的进程分配了N

块内存(N

课程设计报告(模板)

《地震勘探课程设计》 报告 院系 班级 学生 学号 指导教师 完成日期2014年3月12日 长江大学工程技术学院

目录 一、课程设计目的 (3) 二、课程设计的容 (3) 三、课程设计原理 (3) 四、工区数据 (4) 五、课程设计步骤 (5) 1、建立工区 (5) 2、资料加载 (8) 3、层位标定和层位追踪 (10) 4、断层解释 (13) 5、构造图绘制 (14) 六、心得体会 (15)

一、课程设计目的 地震勘探解释课程设计是我们勘查技术与工程专业和资源勘查工程专业教学中的一个重要的实践性训练环节,通过上机实际操作,训练我们对地震资料进行常规构造解释的实际能力,最终使我们达到:学会利用地震解释软件来进行地震数据的加载,地震层位的标定,地震层位的追踪对比,在地震资料上分析和解释各种断层,以及地震构造图的编制方法。同时,还要学会综合地震地质资料对构造解释结果进行分析,进而对含油气有利地带进行评价和预测,最终编制成果报告。 二、课程设计的容 本次课程设计是理论联系实际的具体表现,是培养学生分析问题、解决问题能力的一个必不可少的环节,主要分为两部分:一、通过对地震资料解释软件Discovery的使用,追踪解释层位数据;二、通过surfer软件学习成图。使学生对地震常用的解释软件有一个初步的认识,能为毕业后从事地震勘探工作奠定良好的基础。地震解释课程设计是勘查技术与工程专业教学中的一个重要的实践性训练环节。通过实验主要训练学生对地震资料进行常规构造解释的实际能力,具体要使学生达到: 1.了解人机联作的基本知识; 2.初步学会地震解释软件的操作流程(工区建立、资料加载、合成记录制作、层位标定、层位追踪、断层解释、断点组合); 3. 进一步巩固和掌握地震资料解释的基本功; 4.初步学会地震成果的地质分析; 5.初步学会编写地震资料解释文字报告;

课程设计报告参考模板

课程设计报告参考模板 河海大学计算机及信息工程学院 课程设计报告 题目专业、学号授课班号学生姓名指导教师完成时间 课程设计任务书 Ⅰ、课程设计题目: Ⅱ、课程设计工作内容 一、课程设计目标1、培养综合运用知识和独立开展实践创新的能力; 2、…… 二、研究方法及手段应用 1、将任务分成若干模块,查阅相关论文资料,分模块调试和完成任务; 2、…… 三、课程设计预期效果 1、完成实验环境搭建; 2、…… 学生姓名:专业年级: 目录空一行。空一个中文字符行。“目录”,分页,居中,加黑宋体二号。前言………………………………………………………………………………………………1 第一章系统设计………………………………………………………………

…………………2 第一节课题目标及总体方案…………………………………………………………………..2 ……………… 目录正文,宋体小四号,倍行距。第二节…………………………….. ………………… 第二章实验结果及讨论 (5) ……………… 第三章结论 (10) ……………… 心得体会 (42) 河海大学本科课程设计报告 1、移动台 MS 二级标题“1、”,左对齐,加黑宋体小三号。移动台是公用GSM移动通信网中用户使用的设备,……………… NMCDPPSPCSSEMC OSSOMCMBTSSBTSBSCHLR/ MSC/VLRAUC BSSEIR NSSPSTNISDNPDN 图 GSM系统

组成 2、基站子系统 BSS 图编号及图名“图”,位于图下,居中。基站子系统BSS是GSM系统实现无线通信的关键组成部分。它通过无线接口直接与移动台通信,进行无线发送、无线接收及无线资源管理。另一方面,它通过与网络子系统NSS的移动业务交换中心,………………。 ⑴、基站收发信台 BTS 三级标题“⑴、”,左对齐,加黑宋体四号。基站收发信台BTS属于基站子系统BSS的无线部分,………………。①收发信台组成四级标题“①”,左对齐,加黑宋体小四号。 BTS包含有若干个收发信息单元TRX,而一个TRX有八个时隙,………………。●收发信息单元 五级标题“●”,左对齐,加黑宋体小四号。收发信息单元是………………。●其它辅助单元 辅助单元包括………………。②收发信台作用 收发信台的主要作用有………………。 ⑵、基站控制器 BSC 基站控制器BSC是基站子系统BSS的控制部分,………………。 3、网络交换子系统 NSS - 4 - 河海大学本科课程设计报告

操作系统课程设计报告

东莞理工学院 操作系统课程设计报告学院:计算机学院 专业班级:13软件工程1班 提交时间:2015/9/14 指导教师评阅意见: . 项目名称:进程与线程管理功能 一、设计目的 用语言来模拟进程和线程管理系统,加深对进程和线程的理解,掌握对进程和线程各种状态和管理的算法原理。 二、环境条件 系统:WindowsXP、VMWare、Ubuntu Linux 语言:C/C++ 开发工具:gcc/g++、Visual C++ 6.0 三、设计内容 1. 项目背景

计算机的硬件资源有限,为了提高内存的利用率和系统的吞吐量,就要根据某种算法来管理进程和线程的状态从而达到目的。 进程与线程管理功能完成基于优先级的抢占式线程调度功能,完成进程虚拟内存管理功能。 进程与线程管理功能 基本要求:完成基于优先级的抢占式线程调度功能,完成进程虚拟内存管理功能。 提高要求:(增加1项就予以加分) (1) 实现多种线程调度算法; (2)通过“公共信箱”进行通信的机制,规定每一封信的大小为128字节,实现两个用户进程之间通过这个“公共信箱”进行通信。 (3) 实现多用户进程并发的虚拟内存管理功能。 (4) 实现用户进程间通信功能,并用生产者/消费者问题测试进程间通信功能的正确性。 (5) 实现改进型Clock页面置换算法。 (6) 实现Cache功能,采用FIFO替换算法。 2. 扩展内容 实现多种线程调度算法:时间片轮转调度算法 四、人员分工 优先级调度算法:钟德新,莫友芝 时间片轮转调度算法:张德华,袁马龙 设计报告由小组队员共同完成。小组成员设计的代码分工如下: 钟德新编写的代码:void Prinft(){ PCB *p; system("cls");//清屏 p=run; //运行队列 if(p!=NULL) { p->next=NULL; } cout<<"当前正在运行的进程:"<procname<<"\t\t"<pri<<"\t"<needOftime<<"\t\t"<runtime<<"\t\t"<state<next; } cout<procname<<"\t\t"<pri<<"\t"<needOftime<<"\t\t"<runtime<<"\t\t"<state<next; } cout<

课程设计报告模板

《软件工程》课程设计报告 课程设计题目: 电子科技大学中山学院计算机学院班级: 组长: 其他成员: 指导教师: 实验地点: 完成起止日期:1-16

目录 一、系统可行性研究报告....................................... 错误!未定义书签。 1.引言................................................... 错误!未定义书签。 2 现行系统调查............................................ 错误!未定义书签。 3 新系统概述.............................................. 错误!未定义书签。 4 可行性综合评述.......................................... 错误!未定义书签。 5.方案选择............................................... 错误!未定义书签。 6.项目进度计划(Software Project Schedule).............. 错误!未定义书签。 二、需求规格说明书............................................ 错误!未定义书签。 1、用例模型(用例图)..................................... 错误!未定义书签。 2、用例文档描述........................................... 错误!未定义书签。 3、用例实现(时序图+类图)................................ 错误!未定义书签。 三、设计规格说明书............................................ 错误!未定义书签。 四、测试设计.................................................. 错误!未定义书签。 1、测试范围............................................... 错误!未定义书签。 2、测试覆盖设计........................................... 错误!未定义书签。 3、测试用例............................................... 错误!未定义书签。 五、工作总结.................................................. 错误!未定义书签。 1、本人在项目实现中的分工................................. 错误!未定义书签。 2、个人遇到的困难与获得的主要成果......................... 错误!未定义书签。 3、课程设计完成结果分析与个人小结......................... 错误!未定义书签。 六、附录...................................................... 错误!未定义书签。 1、软件配置............................................... 错误!未定义书签。 2、个人完成的程序模块..................................... 错误!未定义书签。 3、文档清单............................................... 错误!未定义书签。

软件测试课程设计报告(模板)

课程设计 课程名称软件测试技术题目名称图书系统软件测试专业班级软件工程 学生姓名 学号 指导教师褚伟 二○一六年五月二十四日

目录 1.测试需求分析 (3) 1.1系统概述 (4) 1.2测试需求 (4) 2. 测试概要 (5) 3.测试计划 (5) 3.1测试方案的选择 (5) 3.2测试方案: (7) 3.3测试项目 (7) 3.4测试准备 (7) 3.5 测试覆盖率要求 (7) 4.测试项目说明 (8) 4.1测试项目名称及测试内容 (8) 4.2测试用例 (9) 5.对软件功能的结论 (24) 5.1功能1(系统登录) (24) 5.2功能2(图书管理测试) (24) 5.3功能3(图书查询测试) (24) 5.4功能4(系统管理测试) (24) 5.5功能5(借书测试) (24) 5.6功能6(还书测试) (25) 6.测试评价与结论 (25) 6.1能力 (25) 6.2缺陷和限制 (25) 6.3建议 (25) 7.总结 (26) 8.参考资料 (27)

摘要(中英文)

1.测试需求分析 1.1系统概述 本图书管理系统是一款功能非常强大的图书管理软件,本系统在继承了以往系统版本优点的基础上做了进一步优化;在功能上,本系统不仅包含图书管理的常用功能(如书籍管理、期刊管理、物品管理、读者管理、借、还、预借、续借和统计分析等等功能),而且还增加了条码的生成和打印功能(不仅为使用者省去了购买价格昂贵的条码专用打印机的费用,而且条码产生更方便,与系统结合更紧密)。 考虑到很多单位和学校有现成的身份IC卡(校园卡、会员卡等),为了有效的利用这些已有资源,让使用者使用更方便,我们特在系统中加入了会员卡管理功能,这样,图书管理员不仅可以通过读者编号进行借阅操作,也可以通过已有的身份卡(配合刷卡机或者条码扫描抢使用)来完成操作;在系统的办卡管理中有新办卡、换卡和注销卡等功能,彻底解决丢卡后的安全隐患问题(向制卡公司定制卡时,一般会要求每张卡的ID号都不同,所以一旦换卡了,原来的会员卡就作废了,即使丢失卡被别人捡到也不能进行正常的借阅操作)。 本系统具有操作简单,易学易用的特点。在开发过程中,我们总结了多年使用电脑管理图书馆业务的经验,注意到工作人员在使用电脑时容易发生的人为错误,因而使系统具有较强的容错和排错功能,而且本系统自带了一些常用的资料库(如中图分类库,出版社库等,系统会自动根据图书的标准ISBN码检索出当前图书的出版社名称和出版地点等,从而实现图书的自动录入的功能),使得用户在录入图书资料时更轻松;系统也自带了通用数据导入功能,可以非常简单地把用户以前的已有资料或者通过采集器采集到的数据资料导入到本系统中,避免了大量的重复劳动。经过长时间的不断测试和完善,系统的安全性和稳定性得到保证。 本系统完全可以配合条码扫描枪使用,操作会更流畅,更简单。 技术简介:本系统采用Adaptive Server Anywhere数据库、C/S结构,完全支持多用户操作;可运行于 Windows9x/WindowsNT/2000/Xp/2003平台,有良好的兼容性、先进性与扩充性;可在线升级。 系统特点:操作简单、界面清晰、功能强大、运行稳定快速、系统资源占用少。 1.2测试需求 本次测试针对开发的图书馆管理系统进行,包括功能测试,界面测试,图书

操作系统课程设计报告

东莞理工学院 操作系统课程设计报告 学院:计算机学院 专业班级:13软件工程1班 提交时间:2015/9/14 指导教师评阅意见: . 项目名称:进程与线程管理功能 一、设计目的 用语言来模拟进程和线程管理系统,加深对进程和线程的理解,掌握对进程和线程各种状态和管理的算法原理。 二、环境条件

系统:WindowsXP、VMWare、Ubuntu Linux 语言:C/C++ 开发工具:gcc/g++、Visual C++ 6.0 三、设计内容 1. 项目背景 计算机的硬件资源有限,为了提高内存的利用率和系统的吞吐量,就要根据某种算法来管理进程和线程的状态从而达到目的。 进程与线程管理功能完成基于优先级的抢占式线程调度功能,完成进程虚拟内存管理功能。 进程与线程管理功能 基本要求:完成基于优先级的抢占式线程调度功能,完成进程虚拟内存管理功能。 提高要求:(增加1项就予以加分) (1) 实现多种线程调度算法; (2)通过“公共信箱”进行通信的机制,规定每一封信的大小为128字节,实现两个用户进程之间通过这个“公共信箱”进行通信。 (3) 实现多用户进程并发的虚拟内存管理功能。 (4) 实现用户进程间通信功能,并用生产者/消费者问题测试进程间通信功能的正确性。 (5) 实现改进型Clock页面置换算法。 (6) 实现Cache功能,采用FIFO替换算法。

2. 扩展内容 实现多种线程调度算法:时间片轮转调度算法 四、人员分工 优先级调度算法:钟德新,莫友芝 时间片轮转调度算法:张德华,袁马龙 设计报告由小组队员共同完成。小组成员设计的代码分工如下:钟德新编写的代码:void Prinft(){ PCB *p; system("cls");//清屏 p=run; //运行队列 if(p!=NULL) { p->next=NULL; } cout<<"当前正在运行的进程:"<procname<<"\t\t"<pri<<"\t"<needOftime<<"\t\t"<runtime<<"\t\t"<state<next; } cout<procname<<"\t\t"<pri<<"\t"<needOftime<<"\t\t"<runtime<<"\t\t"<state<next; } cout<procname<<"\t\t"<pri<<"\t"<needOftime<<"\t\t"<runtime<<"\t\t"<state<

操作系统(一个小型操作系统的设计与实现)课程设计

南通大学计算机科学与技术学院操作系统课程设计报告 专业: 学生姓名: 学号: 时间:

操作系统模拟算法课程设计报告 设计要求 将本学期三次的实验集成实现: A.处理机管理; B.存储器管理; C.虚拟存储器的缺页调度。 设计流程图 主流程图 开始的图形界面 处理机管理存储器管理缺页调度 先来先服务时 间 片 轮 转 首 次 适 应 法 最 佳 适 应 法 先 进 先 出 L R U 算 法

A.处理机调度 1)先来先服务FCFS N Y 先来先服务算法流程 开始 初始化进程控制块,让进程控制块按进程到达先后顺序让进程排队 调度数组中首个进程,并让数组中的下一位移到首位 计算并打印进程的完成时刻、周转时间、带权周转时间 其中:周转时间 = 完成时间 - 到达时间 带权周转时间=周转时间/服务时间 更改计时器的当前时间,即下一刻进程的开始时间 当前时间=前一进程的完成时间+其服务时间 数组为空 结束

2)时间片轮转法 开始 输入进程总数 指针所指的进程是 否结束 输入各进程信息 输出为就绪状态的进程的信息 更改正在运行的进程的已运行时间 跳过已结束的程序 结束 N 指向下一个进程 Y 如果存在下一个进程的话 Y N 输出此时为就绪状态的进程的信息 时间片轮转算法流程图

B.存储器管理(可变式分区管理) 1)首次适应法 分配流程图 申请xkb内存 由链头找到第一个空闲区 分区大小≥xkb? 大于 分区大小=分区大小-xkb,修改下一个空闲区的后向指针内容为(后向指针)+xkb;修改上一个空闲区的前向指针为(前向指针)+xkb 将该空闲区从链中摘除:修改下一个空闲区的后向地址=该空闲区后向地址,修改上一个空闲区的前向指针为该空闲区的前向指针 等于 小于延链查找下 一个空闲区 到链尾 了? 作业等待 返回是 否 登记已分配表 返回分配给进程的内存首地址 开始

操作系统课程设计报告

操作系统课程设计实验报告 实验名称:进程控制 姓名/学号: 一、实验目的 学习、理解和掌握Linux与windows的进行控制系统调用的功能,熟悉主要的几个系统调用命令的格式和如何利用系统调用命令进行编程。通过学习,理解如何创建一个进程、改变进程执行的程序、进程和线程终止以及父子进程的同步等,从而提高对进程和线程控制系统调用的编程能力。 二、实验内容 设计并实现Unix的“time”命令。“mytime”命令通过命令行参数接受要运行的程序,创建一个独立的进程来运行该程序,并记录程序运行的时间。 三、实验环境 CPU: Inter ×2 2.10GHz RAM: 3.00GB Windows 7 旗舰版 Linux Ubuntu 10.04 编译: VS2010 四、程序设计与实现 4.1进程控制系统的调用 4.1.1 windows进程控制调用程序中使用的数据结构及主要符号说明 SYSTEMTIME starttime,endtime; //进程开始时间和结束时间 PROCESS_INFORMATION pi //该结构返回有关新进程及 //其主线程的信息 STARTUPINFO si //该结构用于指定新进程的主窗口特性4.1.2 linux进程控制调用程序中使用的数据结构及主要符号说明 struct timeval starttime,endtime //进程开始时间和结束时间 pid_t pid //进程标志符

4.2 程序流程图 图1 windows进程控制调用图2 linux进程控制调用程序运行流程图程序运行流程图 五、实验结果和分析 5.1 windows实验结果和分析

毕业课程设计报告数字秒表的设计

(此文档为word格式,下载后您可任意编辑修改!) 目录 1 引言 (1) 1.1 课程设计的目的 (1) 1.2 课程设计的内容 (1) 2 EDA、VHDL简介 (1) 2.1 EDA技术 (1) 2.2 硬件描述语言——VHDL (2) 3设计过程 (4) 3.1 设计规划 (4) 3.2 各模块的原理及其程序 (4) 3.2.1控制模块 (5) 3.2.2时基分频模块 (5) 3.2.3计时模块 (6) 3.2.4显示模块 (7) 4系统仿真 (9) 结束语 (13) 致谢 (14) 参考文献 (15) 附录 (16)

1 引言 在科技高度发展的今天,集成电路和计算机应用得到了高速发展。尤其是计算机应用的发展。它在人们日常生活已逐渐崭露头角。大多数电子产品多是由计算机电路组成,如:手机、mp3等。而且将来的不久他们的身影将会更频繁的出现在我们身边。各种家用电器多会实现微电脑技术。电脑各部分在工作时多是一时间为基准的。本文就是基于计算机电路的时钟脉冲信号、状态控制等原理设计出的数字秒表。秒表在很多领域充当一个重要的角色。在各种比赛中对秒表的精确度要求很高,尤其是一些科学实验。他们对时间精确度达到了几纳秒级别。 1.1 课程设计的目的 本次设计的目的就是在掌握EDA实验开发系统的初步使用基础上,了解EDA技术,对计算机系统中时钟控制系统进一步了解,掌握状态机工作原理,同时了解计算机时钟脉冲是怎么产生和工作的。在掌握所学的计算机组成与结构课程理论知识时。通过对数字秒表的设计,进行理论与实际的结合,提高与计算机有关设计能力,提高分析、解决计算机技术实际问题的能力。通过课程设计深入理解计算机结构与控制实现的技术,达到课程设计的目标。 1.2 课程设计的内容 利用VHDL语言设计基于计算机电路中时钟脉冲原理的数字秒表。该数字秒表能对0秒~59分59.99秒范围进行计时,显示最长时间是59分59秒。计时精度达到10ms。设计了复位开关和启停开关。复位开关可以在任何情况下使用,使用以后计时器清零,并做好下一次计时的准备。 2 EDA、VHDL简介 2.1 EDA技术 EDA是指以计算机为工作平台,融合了应用电子技术、计算机技术、智能化技术的最新成果而开发出的电子CAD通用软件包,它根据硬件描述语言HDL完成的设计文件,自动完成逻辑编译、化简、分割、综合、优化、布局布线及仿真,直至完成对于特定目

计算机操作系统课程设计

计算机操作系统课程设计 班级:计091-1 姓名: 学号: 使用语言:C++ 指导老师: 学院:

一、系统要求 1、实验目的 通过一个简单多用户文件系统的设计,加深理解文件系统的内部功能及内部实现。 2、实验内容 为linux系统设计一个简单的二级文件系统。要求做到以下几点: (1)可以实现下列几条命令(至少4条); login 用户登陆 dir 列文件目录 create 创建文件 delete 删除文件 open 打开文件 close 关闭文件 read 读文件 write 写文件 (2)列目录时要列出文件名、物理地址、保护码和文件长度; (3)源文件可以进行读写保护。

二、系统分析 1、设计思想 本文件为二级文件系统,即要实现对文件的增删改查,同时又具备登陆系统、注册用户的功能,各个用户之间的文件系统互不干扰。 本文件系统采用两级目录,其中第一级对应于用户账号,第二级对应于用户帐号下的文件。另外,为了简便文件系统未考虑文件共享,文件系统安全以及管道文件与设备文件等特殊内容。 系统采用结构体来存储用户、文件目录、文件数据内容: 0 48*5 48*5+44*50 48*5+44*50+264*200 每个分区都是由结构体组成,每个个去的结构体的个数由格式化系统是决定。

整个系统的编码构成主要分为: Allstruct.h 定义了每个分区的结构体; Mysys.h 声明了对系统操作的各种方法;Myuserfile.h 声明了对文件操作的各种方法; Mymain.cpp 整个系统的主函数,操作入口; Mysys.cpp 包含了mysys.h,实现了操作系统的各种方法;Myuserfile.cpp 包含了myuserfile.h,实现了操作文件的各种方法; 2、主要数据结构 Allstruct.h文件的内容: struct s_user //用户区结构体 { long isuse; //是否使用 char name[20]; //用户名 char psd[20]; //密码 long address; //目录地址 };

相关文档