操作系统--处理机调度实验&练习指南

任务1、FCFSSJF调度算法分析 

实验内容与步骤:

1-1启动并进入Windows环境,利用VC++ 6.0编译环境调试任务1.cpp中的代码。

1-2观察代码及程序运行结果,分析FCFS和SJF算法的优缺点。

FCFS算法: 算法容易实现。但效率不高,只顾及作业等候时间,没考虑作业要求服务时间的长短。因此优待了长作业而不利于短作业;有利于CPU繁忙型作业,而不利于I/O繁忙型作业。

SJF算法:算法易于实现。但效率不高,主要弱点是忽视了作业等待时间;会出现饥饿现象。

任务2、观察程序中的考虑不周之处并修改

实验内容与步骤:

2-1继续阅读代码,分析其逻辑,通过不同的输入测试程序运行结果,发现程序中存在的问题。

没有考虑到当前一个任务的结束时间小于下一个任务的提交时间,应该把下一个任务的开始时间设置为这个任务的提交时间,不应该是前一个任务的结束时间的情况:

2-2修改FCFS算法代码,解决发现的问题。

答:修改部分的截图

2-3修改SJF算法代码,解决发现的问题。

任务3、实现HRRN算法(完成任务4后选做)

实验内容与步骤:

3-1类比SJF算法的实现HRRN算法。

任务4、处理机调度算法练习

练习内容:

4-1下表给出作业1、2、3到达时间和运行时间。分别采用短作业优先调度算法和先来先服务调度算法(不抢占),绘制表格计算每个作业的完成时间、周转时间、带权周转时间、平均周转时间、平均带权周转时间。(时间单位:小时,以十进制进行计算。)

作业号

到达时间

运行时间

1

0.0

8.0

2

0.4

4.0

3

1.0

1.0

4-2 假设有四个作业,它们提交、运行时间如下表所示。若采用响应比高者优先调度算法(不抢占),试问平均周转时间和平均带权周转时间为多少? (要求:求解应体现计算过程,时间单位:小时,以十进制进行计算。)

作业号

到达时间

运行时间

1

8.0

2.0

2

8.3

0.5

3

8.5

0.1

4

9.0

0.4

答:

实验总结

分别画出FCFS、SJF算法的流程图:

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值