衡阳师范学院计算机操作系统专业课程设计.doc
《衡阳师范学院计算机操作系统专业课程设计.doc》由会员分享,可在线阅读,更多相关《衡阳师范学院计算机操作系统专业课程设计.doc(18页珍藏版)》请在咨信网上搜索。
1、衡阳师范学院计算机操作系统课程设计题 目: 进程调度设计 班 级: 计算机系0901班 学 号: 作者姓名: 指导老师: 年 12 月 10 日目 录1.需求分析- 1 -1.1设计目标- 1 -1.2设计要求- 1 -2概要设计- 1 -3.关键数据结构- 2 -4. 程序清单- 2 -4.1具体设计- 2 -4.2调试和分析- 8 -4.3运行结果- 8 -5用户手册- 10 -5.1 运行环境- 10 -5.2 实施文件- 10 -5.3 用户使用说明- 10 -6.参考文件- 10 -7心得体会- 10 -8小组组员任务分配- 11 -1.需求分析1.1设计目标 经过优先权和轮转调度算
2、法模拟加深对进程概念和进程调度过程了解,掌握进程状态之间切换,同时掌握进程调度算法实现方法和技巧。1.2设计要求 (1)设计进程控制块PCB表结构,分别适适用于优先数调度算法和循环轮转调度算 法。 (2)建立进程就绪队列。对两种不一样算法编制入链子程序。(3)编制两种进程调度算法:1)优先数调度;2)循环轮转调度2概要设计1.1设计内容 1.用语言来实现对N个进程采取不一样调度算法进程调度。 2.每个用来标识进程进程控制块PCB用结构来描述,包含一下字段: (1)进程优先数ID,其中0为闲逛进程,用户进程表示数为1,2,3等。 (2)进程优先级Priority,闲逛进程(idle)优先级为0,
3、用户进程优先级大yu0,且随机产生,优先数越大,优先级越高。 (3)进程占用CPU时间CPUtime,进程每运行一次,累计值等于4. (4)进程总共需要运行时间Alltime,利用随机函数产生。 (5)进程状态,0:就绪态;1:运行态;2:阻塞态。 (6)队列指针next,用来讲多个进程控制块PCB连接位队列。 3.优先数改变标准 (1)进程在就绪队列中每呆一个时间片,优先数增加1。 (2)进程每运行一个时间片,优先数减3. 4.在调度前系统中拥有进程数PCB_number由键盘输入,经初始化后,全部进程块PCB链接成就绪队列。2.2实现概要(1)本程序用两种算法对五个进程进行调度,每个进程可
4、有三个状态,并假设初始状态为就绪状态(2)为了便于处理,程序中某进程运行时间以时间片为单位计算。各进程优先数或轮转时间数和进程需运行时间片数初始值均由用户给定。(3)在优先算法中,优先数值为50和运行时间差值,即P TIME-process-needtime。进程每实施一次,优先数减3,CPU时间片数加1,进程还需要时间片数减1。在轮转算法中,采取固定时间片(即:每实施一次进程,该进程实施时间片数为已实施了2个单位),这时,CPU时间片数加2,进程还需要时间片数减2 ,并排列到就绪队列尾上。(4)对于碰到优先数一致情况,采取FIFO策略处理。3.关键数据结构1. struct pcb ( )
5、定义pcb2. Void display ( ) 显示结果信息函数3. Int process finish(pcb *q) 进程完成表示4. Void displa_round ( ) 显示循环轮转调度算法运行结果5. Priority_call ( ) 优先数调度算法6. Void cpu_round ( ) 处理器工作状态4. 程序清单4.1具体设计#include#include#include#include#include#include#define P_NUM 5#define P_TIME 50enum state /进程状态ready,execute,block,finis
6、h;struct pcb /定义PCB块char name4;int priority;int cputime;int needtime;int count;int round;state process;pcb * next;pcb * get_process();pcb * get_process()pcb *q;pcb *t;pcb *p;int i=0;coutinput name and timeendl;while(iq-name ;cinq-needtime ;q-cputime=0;q-priority=P_TIME-q-needtime;q-process=ready;q-n
7、ext=NULL;if(i=0)p=q;t=q;elset-next=q;/t=q;i+;return p;void display(pcb *p) /现实结果信息函数coutname cputime needtime priority stateendl;while(p)coutname cputime needtime priorityprocess)caseready:coutreadyendl;break;caseexecute:coutexecuteendl;break;caseblock:coutblockendl;break;casefinish:coutfinishnext;i
8、nt process_finish(pcb *q) /进程完成标示int b1=1;while(b1&q)b1=b1&q-needtime=0;q=q-next;return b1;void cpuexe(pcb *q)pcb *t=q;int tp=0;while(q)if(q-process!=finish)q-process=ready;if(q-needtime=0)q-process=finish;if(tppriority&q-process!=finish)tp=q-priority;t=q;q=q-next;if(t-needtime!=0)t-priority-=3;t-ne
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 衡阳 师范学院 计算机 操作系统 专业课程 设计
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【二***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【二***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。