电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

操作系统课程设计进程调度模拟设计--先来先服务,优先VIP免费

操作系统课程设计进程调度模拟设计--先来先服务,优先_第1页
1/26
操作系统课程设计进程调度模拟设计--先来先服务,优先_第2页
2/26
操作系统课程设计进程调度模拟设计--先来先服务,优先_第3页
3/26
学号:课程设计课程名字系统软件开发实训A题目进程调度模拟设计——先来先服务、优先级法学院计算机科学与技术学院专业计算机科学与技术专业班级姓名指导教师李玉强2014年01月13日课程设计任务书学生姓名:专业班级:指导教师:李玉强工作单位:计算机科学与技术学院题目:进程调度模拟设计——先来先服务、优先级法初始条件:1.预备内容:阅读操作系统的处理机管理章节内容,对进程调度的功能以及进程调度算法有深入的理解。2.实践准备:掌握一种计算机高级语言的使用。要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1.模拟进程调度,能够处理以下的情形:⑴能够选择不同的调度算法(要求中给出的调度算法);⑵能够输入进程的基本信息,如进程名、优先级、到达时间和运行时间等;⑶根据选择的调度算法显示进程调度队列;⑷根据选择的调度算法计算平均周转时间和平均带权周转时间。2.设计报告内容应说明:⑴课程设计目的与功能;⑵需求分析,数据结构或模块说明(功能与框图);⑶源程序的主要部分;⑷测试用例,运行结果与运行情况分析;⑸自我评价与总结。时间安排:设计安排3周:查阅、分析资料1天系统软件的分析与建模4天系统软件的设计5天系统软件的实现3天撰写文档1天课程设计验收答辩1天设计验收安排:设计周的第三周的指定时间到实验室进行上机验收。设计报告书收取时间:课程设计验收答辩完结时。(注意事项:严禁抄袭,一旦发现,抄与被抄的一律按0分记)指导教师签名:2013年12月10日系主任(或责任教师)签名:2013年12月10日开始选择调度算法先来先服务法输入进程队列信息优先级法结束?Y/N结束YN切换算法课程设计报告书1.需求分析1.1设计目的(1)阅读操作系统的处理机管理章节内容,对进程调度的功能以及进程调度算法有深入的理解。(2)掌握一种计算机高级语言的使用。要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1.2程序流程图1.3设计要求(1)能够选择不同的调度算法(要求中给出的调度算法);(2)能够输入进程的基本信息,如进程名、优先级、到达时间和运行时间等;(3)根据选择的调度算法显示进程调度队列;(4)根据选择的调度算法计算平均周转时间和平均带权周转时间。2.功能设计2.1数据结构1.进程的结构定义:structprocess{charname[10];//进程名intno;//进程序号doublearrivetime;//进程达到时间doubleneedtime;//进程运行时间doublestarttime;//进程开始时间doubleendtime;//进程结束时间intstate;//进程状态,0表示未执行,1表示已执行intpriority;//进程优先级process*next;process*head=Null;intcount;};2.使用链表存储进程并按照到达时间排序、结束voidinsert(process*current){if(head!=Null){if(head->next==Null)//如果只有一个节点{if(current->arrivetimearrivetime)//如果比链头到达时间早,则插入链头{current->next=head;head=current;}else{current->next=Null;head->next=current;}}else//如果至少两个节点{process*p1=head;if(head->arrivetime>current->arrivetime){current->next=head;head=current;}else{intflag=1;while(p1->next!=Null)//当head后面不为空时一直做{//如果在两个节点间if(p1->arrivetimearrivetime&&p1->next->arrivetime>current->arrivetime){current->next=p1->next;p1->next=current;flag=0;break;}elsep1=p1->next;}//如果到达时间最大,则插到链尾if(flag=1){p1->next=current;current->next=Null;}}}}elsehead=current;}2.2先来先服务算法设计1.FCFS算法说明将用户作业和就绪进程按提交顺序或变为就绪状态的先后排成队列,并按照先来先服务的方式进行调度处理,是一种最普遍和最简单的方法。在该算法中,每个作业或进程按照它们在队列中等待时间长短来决定它们是否优先享受服务。在没有特殊理由要优先调度某类作业或进程时,从处理的角度来看,FCFS方式是一种最合适的方法,因为无论是追加还是取出一个队列元素在操作上都是最简单的。2.创建进程voidcreateFCFS(){process*q1=newprocess;cout<<"请输入进程总数目";cin>>...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

操作系统课程设计进程调度模拟设计--先来先服务,优先

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部