某多道程序设计系统供用户使用得主存为 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 运行结束, 释放磁带机。 此时作业2 得主存及打印机均可
满足, 投入运行. 作业 5 到达时间晚, 只能等待.
9 :10 作业 4 运行结束, 作业 5 因分不到打印机, 只能在后备队列继续
等待。
9:15 巧作业 2 运行结束, 作业 5 投入运行.
9 : 30 作业全部执行结束。

内存分配情况

在这里插入图片描述
在这里插入图片描述

  • 27
    点赞
  • 132
    收藏
    觉得还不错? 一键收藏
  • 14
    评论
一、实验目的 本实验要求学生模拟作业调度的实现,用高级语言编写和调试一个或多个作业调度的模拟程序,了解作业调度在操作系统的作用,以加深对作业调度算法的理解。 二、实验内容和要求 1、编写并调度一个多道程序系统作业调度模拟程序。   作业调度算法:采用基于先来先服务的调度算法。可以参考课本的方法进行设计。 对于多道程序系统,要假定系统具有的各种资源及数量、调度作业时必须考虑到每个作业的资源要求。 三、实验主要仪器设备和材料 硬件环境:IBM-PC或兼容机 软件环境:C语言编程环境 四、实验原理及设计方案 采用多道程序设计方法的操作系统,在系统要经常保留多个运行的作业,以提高系统效率。作业调度从系统已接纳的暂存在输入井的一批作业挑选出若干个可运行的作业,并为这些被选作业分配所需的系统资源。对被选运行的作业必须按照它们各自的作业说明书规定的步骤进行控制。 采用先来先服务算法算法模拟设计作业调度程序。 (1)、作业调度程序负责从输入井选择若干个作业进入主存,为它们分配必要的资源,当它们能够被进程调度选时,就可占用处理器运行。作业调度选择一个作业的必要条件是系统现有的尚未分配的资源可满足该作业的资源要求。但有时系统现有的尚未分配的资源既可满足某个作业的要求也可满足其它一些作业的要求,那么,作业调度必须按一定的算法在这些作业作出选择。先来先服务算法是按照作业进入输入井的先后次序来挑选作业,先进入输入井的作业优先被挑选,当系统现有的尚未分配的资源不能满足先进入输入井的作业时,那么顺序挑选后面的作业。 (2) 假定某系统用户使用主存空间共100k,并有5磁带机。 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、付费专栏及课程。

余额充值