2023年实验报告一进程调度算法.docx
《2023年实验报告一进程调度算法.docx》由会员分享,可在线阅读,更多相关《2023年实验报告一进程调度算法.docx(12页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、江西师范大学计算机信息工程学院学生实验报告专业12级物联网班 姓名 严超 学号日期2 0 23/0 5 /8课程名称操作系统教程实验室名称W43 1 3实验名称进程调度算法指导教师张练兴成绩1、实验目的用代码实现模拟操作系统的进程调度,以加深对进程的概念及进程调度算法 的理解2、实验原理和内容(1)先来先服务(FCFS)调度算法:从“就绪队列”中选择一个最先进入队列的 进程,为它分派解决器,使之开始运营。(2)优先数调度算法:根据进程的情况或规定赋予进程一个优先级,进程运营过 程中优先级不再改变。每次调度时,就绪队列中优先级最高的进程被率先调度, 同级的采用先来先服务(FCF S ) o3、实
2、验环节进程调度算法:(1)编写进程控制块数据结构(2)统一按照FCFS调度算法创建队列(3)在FCFS调度算法中,将就绪队列队首进程调入执行,假如在队列中存在到 达时间小于等于当前时间的结点,将该结点的状态设为就绪状态。假如当前进程 执行完了,就将其状态改为完毕状态,并将其插入到队尾。(4)在优先级调度算法中,将就绪队列队首进程调入执行,假如在队列中存在到 达时间小于等于当前时间的结点,将该结点的状态设为就绪状态,并对队列中的 结点按优先级数的大小进行排序(队首除外)。假如当前进程执行完了,就将其状 态改为完毕状态,并将其插入到队尾。(5)输出运营后的结果,如周转时间和带权周转时间。4、程序及
3、运营结果(或实验数据记录及分析)进程调度算法:本次实验让我更加明白进程调度的概念,更加了解进程调度的工作原理。 在前期,我是直接将结果显示出来,后来,我又在原有的基础上加了显示每一时 刻队列的信息。在编写此代码过程中碰到很多问题,例如指针问题,指针指来指 去,总是指错地址。n o de* p,* q * f 1 ag;flag =p=h e a d;c 1 oc k =p-arr i ve_ti m e ;all_time=st a rt_time= h e a d-ar r ive_time;w h i i e( p )。(。 a 1 l_timc+= p s e r v c_t i me;
4、gp=p- n ext;p=hcad;while (done)do n e= 0 ;pri n tf( nn t|- 第 2d 时亥!-I , clock);。 w h il e (p) if( p - a rrive_timcst a te=-w|p-s t ate= r) 。 p-state=r; d one= 1; 0 op=p-n e xt;I。 Sor t BySu p er(head);wh i 1 e (fl a g- n ext)flag=fl a gn e xt;gpr i nt( h cad);o p r i nt f (t|-第 2 d 时刻-1 n n ock);i f
5、 (clock=all_t i m e ) break;clock+;f i nish_time= s tart_time+he a d-serve_time;if(fin i s h_time=clock)00 。 h ead-s t a te=f;。 fl a g-n e x t= h e ad;oah e ad=he a d- n ext;qfla g =flag-nex t ;。 fl a g-n e x t= N U L L;。s tart_ t ime=f i n is h _time;8 。 p=head;p=he a d;finish, t iine=p-arrive_tini
6、e; P ri n tf(nn 11-优先数调度算法-);op rintf(nt|进程名 倒达时间|服务时间I开始时间|完毕时间|周转时间|带权周转I ”); whi 1 e( p )(if(p-ar r i v e_t i me a rrive_tim e ;fin i sh_tim e =sta r t_ t im e +p-serv e _time;around _tiine=finish_time-parr i v e_tim e ;r i g h t_round_time= ( f loat) ro u nd_tim e /p s er v e_time;p rin t f( nt
7、I %8d|%8d|% 8 d|%8d|%8d|%8d I %8.2ff, p -ID, gp-arriv e _time,p-serve_ t i me,st a rt_tim e ,fin i sh_time, round_t i m e ,r i gh t _roun d _t i me); p= p -n e xt; )op r int f ( n t|-优先数调度算法-I );oprintf ( n ); )int main() char choice;0node *head; 0do p r i ntf(n t t |-MUN E- I n);pri n t f ( t t |-l
8、.FCFS 调度算法-|nM); P ri n - 2 .优先数调度算法-|n );。 prindTttt 你的选择是:bb);。 while(scan f ( %c c hoic e ) !=EOF&choic e ! = r&choice!=2);h ea d = c re a tc(); aswitch (choice)g c ase I:pri n t( h ead);。 FCFS (head); b reak:&case 2 :print (head);。叩 r iorit y ( h ead); b reak;运营结果截图:一法 法算 算度1先来先服务调度算法运营结果1.FCFS调
9、 X曲镯 你的选择7E: 31 0于于 左尖 者不必结数翳 务到服 前m ira 程务 进优到服 入入入入 ZHTTtn于于:n者不必结数目 T先达务 人优到服 输ttt 程先达务 进优到服 入入入入 A j 本月佳目在DE住HE于于 生尖 r不如结数翳 T先达务 人优到服 输ttt 程先达务 进优到服 人入 在R本月注目江信请输入进程名(输入T结束):T请输入进程名(输入T结束):T状态WV/W.砾赢调送输福露丽I1 :1:1:2:2:2:3!3:3!结点信息情况进程名123第一个节点 “为当前正在 执行的进程第一个节点 “为当前正在 执行的进程寸间;服务时间;状态进程名;优先级数1:1:2
10、:2:2:进程名;优先级数 2:23!3:3:3:1: 1: 1: 1:状态;:.状态为俵示f! f该进程已结束第7唯结点信息;进程名 城先级数国达百间;服务时间;状态;:1:1!1:1:!2:2:2:2!f!SFCFS调度算法!进程名;到达时间;服务时间;开始高M;荒成时间;周转时间;带权周转;1 :1!1:1 :2!1 !1.00!2:2:2:2:4:2:1.00:!3 :3!3:4:7!4:1.33:;FCFS调度算法优先级调度算法运营结果1.FCFS调度舁法一 二二-2:优警调度算法 你的选择是:1 44 13 22 20 00 0 0 0于于干于I于于I干干里更务4先尖者不必3先尖者
11、不必者不必1先尖 I者不必结数T先达务到服 输m 1 程先达务 进优到服 入入入入 请请请请结数翳 T先达务 入优到服 输m 翳 程先达务 进优到服 入 请请请请入优到服 刖m 程务 进优到服 入 请请请请结数解 T先达务 人优到服 输m 程先达务 进优到服 入入入入 4747101 请请请请状态WWWW时间;4:2:2:1 ;.砾丽圈墟简蠹爵3:1:4:25:3:6 :4:结点信息、情况况J 主即在 自5间1 23:4:鼠小18613 2 4名 程进处于就队列 的进程进程名;优先级教1 i3二间4 51 一焉 B泮 日息间1 靠点达n4!b:4!1!r!2:5:3:2:r iLL_3:4:2
12、:2:r i4 0-11-0S当前正隹执 行的进程进程名;到达时间;服务时间;开始时间;完成时间;周转时间;带权周转1: 1:4:1;5!4;1.004:4:1 ;5 ;6 :2 ;2.002!3!2:6:8 ;5:2.503:2:2 !8 !10:8:4.00意键继续.优先数调度算法具体代码:# i nc 1 u d e #in c lude#defin e MAX 100 0t ypede f str u ct pr o g r e s s 。i nt ID;进程名ch a r s t at e ;。进程状态int super; o / /优先数int a rriv e _time;/ /
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2023 实验 报告 进程 调度 算法
限制150内