某多道程序设计系统供用户使用得主存为 100K , 磁带机 2 台, 打印机 1 台。 采用可变分区内存管理, 采用静态方式分配外围设备, 忽略用户作业F O 时间。 现有作业序列如下:

![](https://img-blog.csdnimg.cn/c6490bc915ac48ca87d0232df0c1ea06.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA5LiA5Y-q5b-r5LmQ55qE5bCP55m9,size_19,color_FFFFFF,t_70,g_se,x_16
作业调度采用FCFS 策略, 优先分配主存低地址区且不准移动已在主存得作
业, 在主存中得各作业平分 CPU 时间. 现求:
( 1 ) 作业被调度得先后次序?
( 2 ) 全部作业运行结束得时间?
( 3 ) 作业平均周转时间为多少?
( 4 )最大作业周转时间为多少?

分析:
8 : 00 作业 1 到达, 占有资源并调入主存运行。
8 : 20 作业2 与 3 同时到达, 但作业 2 因分不到打印机, 只能在后备队
列等待. 作业 3 资源满足, 可进主存运行, 并与作业1 平分 CPU 时间。
8 : 30 作业 1 在8 : 30 结束, 释放磁带与打印机。 但作业2 仍不能执行,
因不能移动而没有 30KB 得空闲区, 继续等待. 作业 4 在 8 : 30 到达, 并进入主存执行, 与作业 3 分享 CPU
8 : 35 作业 5 到达, 因分不到磁带/ 打印机, 只能在后备队列等待。
9 : 00 作业 3

首先,我们需要对作业进行排序,按照作业的运行时间从短到长进行排序。排序后的作业信息如下: | 作业 | 长度(K) | |-----|-----------| | E | 4 | | C | 9 | | D | 12 | | A | 15 | | B | 20 | 接下来,我们按照 SJF 算法进行进程调度。 1. 高级调度 在高级调度,我们按照作业的长度来判断是否进入内存。由于所有作业的长度之和小于主存空间,因此所有作业都可以进入内存。进入内存的顺序如下: | 作业 | 长度(K) | |-----|-----------| | E | 4 | | C | 9 | | D | 12 | | A | 15 | | B | 20 | 2. 低级调度 在低级调度,我们按照作业的长度来选择运行作业。初始时,所有作业都处于就绪状态,按照长度从小到大排序。因此,作业 E 最先运行。 - 作业 E 进入时间为 0,开始运行时间为 0,结束运行时间为 4,周转时间为 4。 - 作业 C 进入时间为 0,开始运行时间为 4,结束运行时间为 13,周转时间为 13。 - 作业 D 进入时间为 0,开始运行时间为 13,结束运行时间为 25,周转时间为 25。 - 作业 A 进入时间为 0,开始运行时间为 25,结束运行时间为 40,周转时间为 40。 - 作业 B 进入时间为 0,开始运行时间为 40,结束运行时间为 60,周转时间为 60。 因此,各作业的进入主存时间、开始运行时间、结束运行时间和周转时间如下: | 作业 | 进入主存时间 | 开始运行时间 | 结束运行时间 | 周转时间 | |-----|---------------|---------------|---------------|----------| | E | 0 | 0 | 4 | 4 | | C | 0 | 4 | 13 | 13 | | D | 0 | 13 | 25 | 25 | | A | 0 | 25 | 40 | 40 | | B | 0 | 40 | 60 | 60 |
评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值