欢迎来到天天文库
浏览记录
ID:30448359
大小:18.17 KB
页数:10页
时间:2018-12-30
《轮转法进程调度实验报告》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划轮转法进程调度实验报告 实验一进程调度 一.实验题目: 、编写并调试一个模拟的进程调度程序,采用“最高优先数优先”调度算法对五个进程 进行调度。 2)、编写并调试一个模拟的进程调度程序,采用“轮转法”调度算法对五个进程进行调度。 二:实验目的 用高级语言编写和调试一个进程调度程序,以加深对进程的概念及进程调度算法的理解. 三.实验内容: 最高优先级优先调度算法 1)优先级简介 动态优先数是指在进程创建时先确定一个初始优先数,以后在进程运行中随
2、着进程特 性的改变不断修改优先数,这样,由于开始优先数很低而得不到CPU的进程,就能因为等 待时间的增长而优先数变为最高而得到CPU运行。 例如:在进程获得一次CPU后就将其优先数减少1。或者,进程等待的时间超过某一时目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划 限时增加其优先数的值,等等。 2)详细设计 优先权调度算法: 1、设定系统中有五个进程,每一个进程用一个进程
3、控制块表示,进程队列采 用链表数据结构。 2、进程控制块包含如下信息:进程名、优先数、需要运行时间、已用CPU时间、进 程状态等等。 3、在每次运行设计的处理调度程序之前,由终端输入五个进程的“优先数”和“要 求运行时间”。 4、进程的优先数及需要的运行时间人为地指定.进程的运行时间以时间片为单位进 行计算。 5、采用优先权调度算法,将五个进程按给定的优先数从大到小连成就绪队列。用头 指针指出队列首进程,队列采用链表结构。 6、处理机调度总是选队列首进程运行。采用动态优先数办法,进程每运行一次优先 数减“1”,同时将已运行时间加“1”。目的-通过该培训
4、员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划 7、进程运行一次后,若要求运行时间不等于已运行时间,则再将它加入就绪队列; 否则将其状态置为“结束”,且退出就绪队列。 8、“就绪”状态的进程队列不为空,则重复上面6,7步骤,直到所有进程都成为“结 束”状态。 9、在设计的程序中有输入语句,输入5个进程的“优先数”和“要求运行时间”,也 有显示或打印语句,能显示或打印每次被选中进程的进程名、
5、运行一次后队列的 变化,以及结束进程的进程名。 10、最后,为五个进程任意确定一组“优先数”和“要求运行时间”,运行并调试所设计 的程序,显示或打印出逐次被选中进程的进程名及其进程控制块的动态变化过程。 3)流程图: 图一.最高优先级优先调度算法流程图 4)源程序: #include"" #include #include #definegetpch(type)(type*)malloc(sizeof(type)) #defineNULL0目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行
6、业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划 structpcb{/*定义进程控制块PCB*/ charname[10];//进程名 charstate;//进程状态 intsuper;//进程优先级 intntime;//进程需要运行时间 intrtime;//进程已经运行的时间 structpcb*link; }*ready=NULL,*p; typedefstructpcbPCB; voidinunization()//初始化界面 { printf("t
7、t*********************************************tt");printf("tttt实验一进程调度"); printf("tt*********************************************tt");printf("ttttt计算机学院软件四班"); printf("ttttt蓝小花"); printf("ttttt");目的-通过该培训员工可对保安行业有初
此文档下载收益归作者所有