作业调度和进程调度的区别
2010-05-19 04:12
155 查看
先打条广告,这是我的新博客,www.aqugx.com , 会经常更新,欢迎大家光顾~
先看高程中的一道题目:
一个有两个作业管理进程的批处理系统,作业调度采用最高响应比优先的算法,
进程调度采用基于优先数(优先数大者优先)的算法,有以下作业序列。
作业名 到达时间 估计运行时间(分) 优先数
A 10:00 50 5
B 10:20 60 7
C 10:50 40 3
D 11:20 80 8
E 11:40 30 6
F 12:00 70 9
计算每个作业的完成时间。
CSDN讨论帖:http://topic.csdn.net/t/20020906/08/1000588.html
先大概了解下:
作业调度(响应比)按一定的算法从磁盘上的“输入井”中选择资源能得到满足的作业装入内存,使作业有机会去占用处理器执行。但是,一个作业能否占用处理器,什么时间能够占用处理器,必须由进程调度来决定。所以,作业调度选中 了一个作业且把它装入内存时,就应为该作业创建一个进程,若有多个作业被装入内存,则内存中同时存在多个进程,这些进程的初始状态为就绪状态,然后,由进程调度(优先数)来选择当前可占用处理器的进程,进程运行中由于某种原因状态发生变化,当它让出处理器时,进程调度就再选另一个作业的进程运行。 因此,作业调度与进程调度相互配合才能实现多道作业的并行执行。
简单来说:比如两个作业管理进程的批处理系统。内存中一个作业运行,一个作业就绪。不是每个作业都有就绪的机会,想等到这个机会,等待的几个作业必须比较一下。
打个比方:小诊所里面补牙,一个人补着,几个人在屋子里等着,几个人在门口等着。
屋外的想进去,大家先来争(响应比:Rp=1+(已经等的时间) / 拔牙大概需要的时间),比完后,几个幸运儿进屋了,谁先补呢?再来比。这些人里面有个医生认识的领导,那领导先来,送红包的第二个,其他人等着(这就是优先数,大者享受优先待遇)。
接下来研究这道题,不着急,慢慢想,借用一段CSDN前辈的分析过程:
10:00 作业A到达,被作业调度程序调度进入系统,被进程调度程序调度开始运行。
10:20 作业A运行20分钟,剩余30分钟,由于A的优先数小于B的优先数,被进程调度程序调度处于就绪状态。
作业B到达,被作业调度程序调度进入系统,被进程调度程序调度开始运行。
10:50 作业A等待30分钟,剩余30分钟。
作业B运行30分钟,剩余30分钟。
作业C到达,等待作业调度进程调度。
11:20 作业A等待60分钟,剩余30分钟,由于A的优先数大于C优先数,被进程调度程序调度运行。
作业B运行60分钟,运行结束。
作业C等待30分钟,响应比=1+30/40=1.75,被作业调度程序调度进入系统,被进程调度程序调度处于就绪状态。
作业D到达,响应比 =1+0/80=1,响应比低于作业C,等待作业调度进程调度。
11:40 作业A运行40分钟,剩余10分钟,由于A的优先数大于C优先数,被进程调度程序调度运行。
作业C等待20分钟,剩余40分钟。
作业D等待20分钟,响应比=1+20/80=1.25。
作业E到达,等待作业调度进程调度。
11:50 作业A运行50分钟,运行结束。
作业C等待30分钟,剩余40分钟,由于C的优先数小于D的优先数,被进程调度程序调度处于就绪状态。
作业D等待30分钟,响应比 =1+30/80=1.375,响应比高于作业E,被作业调度程序调度进入系统,被进程调度程序调度运行。
作业E等待10分钟,响应比=1+10/30=1.33,等待作业调度进程调度。
12:00 作业C等待40分钟,剩余40分钟。
作业D运行10分钟。
作业E等待20分钟,等待作业调度进程调度。
作业F到达,等待作业调度进程调度。
13:10 作业C等待110 分钟,剩余40分钟,由于C的优先数小于E的优先数,被进程调度程序调度处于就绪状态。
作业D等待80分钟,运行结束。
作业E等待70分钟,响应比=1+70/30=3.33,响应比高于作业F,被作业调度程序调度进入系统,被进程调度程序调度运行。
作业F等待70分钟,响应比=1+70/70=2,等待作业调度进程调度。
13:40 作业C等待140分钟,剩余40分钟,由于 C的优先数小于F的优先数,被进程调度程序调度处于就绪状态。
作业E运行30分钟,运行完成。
作业F等待100分钟,被作业调度程序调度进入系统,被进程调度程序调度运行
14:50 作业C等待180分钟,剩余40分钟。
作业F运行70分钟,运行完成。
15:30 作业C运行40分钟,运行完成。
各作业的执行时间序列为:
作业A(50分钟)10:00-10:20, 11:20-11:50
作业B(60分钟)10:20-11:20
作业C(40分钟)14:50-15:30
作业D(80分钟)11:50-13:10
作业E(30分钟)13:10-13:40
作业F(70分钟)13:40-14:50
CSDN讨论帖:http://topic.csdn.net/t/20020906/08/1000588.html
转帖请注明出处:博客园及CSDN,欢迎拍砖,谢谢~
这是我的新博客,www.aqugx.com , 会经常更新,欢迎大家光顾~
先看高程中的一道题目:
一个有两个作业管理进程的批处理系统,作业调度采用最高响应比优先的算法,
进程调度采用基于优先数(优先数大者优先)的算法,有以下作业序列。
作业名 到达时间 估计运行时间(分) 优先数
A 10:00 50 5
B 10:20 60 7
C 10:50 40 3
D 11:20 80 8
E 11:40 30 6
F 12:00 70 9
计算每个作业的完成时间。
CSDN讨论帖:http://topic.csdn.net/t/20020906/08/1000588.html
先大概了解下:
作业调度(响应比)按一定的算法从磁盘上的“输入井”中选择资源能得到满足的作业装入内存,使作业有机会去占用处理器执行。但是,一个作业能否占用处理器,什么时间能够占用处理器,必须由进程调度来决定。所以,作业调度选中 了一个作业且把它装入内存时,就应为该作业创建一个进程,若有多个作业被装入内存,则内存中同时存在多个进程,这些进程的初始状态为就绪状态,然后,由进程调度(优先数)来选择当前可占用处理器的进程,进程运行中由于某种原因状态发生变化,当它让出处理器时,进程调度就再选另一个作业的进程运行。 因此,作业调度与进程调度相互配合才能实现多道作业的并行执行。
简单来说:比如两个作业管理进程的批处理系统。内存中一个作业运行,一个作业就绪。不是每个作业都有就绪的机会,想等到这个机会,等待的几个作业必须比较一下。
打个比方:小诊所里面补牙,一个人补着,几个人在屋子里等着,几个人在门口等着。
屋外的想进去,大家先来争(响应比:Rp=1+(已经等的时间) / 拔牙大概需要的时间),比完后,几个幸运儿进屋了,谁先补呢?再来比。这些人里面有个医生认识的领导,那领导先来,送红包的第二个,其他人等着(这就是优先数,大者享受优先待遇)。
接下来研究这道题,不着急,慢慢想,借用一段CSDN前辈的分析过程:
10:00 作业A到达,被作业调度程序调度进入系统,被进程调度程序调度开始运行。
10:20 作业A运行20分钟,剩余30分钟,由于A的优先数小于B的优先数,被进程调度程序调度处于就绪状态。
作业B到达,被作业调度程序调度进入系统,被进程调度程序调度开始运行。
10:50 作业A等待30分钟,剩余30分钟。
作业B运行30分钟,剩余30分钟。
作业C到达,等待作业调度进程调度。
11:20 作业A等待60分钟,剩余30分钟,由于A的优先数大于C优先数,被进程调度程序调度运行。
作业B运行60分钟,运行结束。
作业C等待30分钟,响应比=1+30/40=1.75,被作业调度程序调度进入系统,被进程调度程序调度处于就绪状态。
作业D到达,响应比 =1+0/80=1,响应比低于作业C,等待作业调度进程调度。
11:40 作业A运行40分钟,剩余10分钟,由于A的优先数大于C优先数,被进程调度程序调度运行。
作业C等待20分钟,剩余40分钟。
作业D等待20分钟,响应比=1+20/80=1.25。
作业E到达,等待作业调度进程调度。
11:50 作业A运行50分钟,运行结束。
作业C等待30分钟,剩余40分钟,由于C的优先数小于D的优先数,被进程调度程序调度处于就绪状态。
作业D等待30分钟,响应比 =1+30/80=1.375,响应比高于作业E,被作业调度程序调度进入系统,被进程调度程序调度运行。
作业E等待10分钟,响应比=1+10/30=1.33,等待作业调度进程调度。
12:00 作业C等待40分钟,剩余40分钟。
作业D运行10分钟。
作业E等待20分钟,等待作业调度进程调度。
作业F到达,等待作业调度进程调度。
13:10 作业C等待110 分钟,剩余40分钟,由于C的优先数小于E的优先数,被进程调度程序调度处于就绪状态。
作业D等待80分钟,运行结束。
作业E等待70分钟,响应比=1+70/30=3.33,响应比高于作业F,被作业调度程序调度进入系统,被进程调度程序调度运行。
作业F等待70分钟,响应比=1+70/70=2,等待作业调度进程调度。
13:40 作业C等待140分钟,剩余40分钟,由于 C的优先数小于F的优先数,被进程调度程序调度处于就绪状态。
作业E运行30分钟,运行完成。
作业F等待100分钟,被作业调度程序调度进入系统,被进程调度程序调度运行
14:50 作业C等待180分钟,剩余40分钟。
作业F运行70分钟,运行完成。
15:30 作业C运行40分钟,运行完成。
各作业的执行时间序列为:
作业A(50分钟)10:00-10:20, 11:20-11:50
作业B(60分钟)10:20-11:20
作业C(40分钟)14:50-15:30
作业D(80分钟)11:50-13:10
作业E(30分钟)13:10-13:40
作业F(70分钟)13:40-14:50
CSDN讨论帖:http://topic.csdn.net/t/20020906/08/1000588.html
转帖请注明出处:博客园及CSDN,欢迎拍砖,谢谢~
这是我的新博客,www.aqugx.com , 会经常更新,欢迎大家光顾~
相关文章推荐
- 作业调度和进程调度的区别
- 作业调度和进程调度的区别
- EBB-9、进程调度及作业控制
- 进程调度与作业调度的不同点
- Linux的进程,线程以及调度(fork与僵尸,内存泄漏,task结构体,停止状态与作业控制)
- 分析Linux内核中进程的调度(时间片轮转)-《Linux内核分析》Week2作业
- 作业、任务、进程、线程的区别
- 操作系统进程调度算法 先到先服务 短作业 优先级 时间片轮转
- 进程与线程之间的关系和区别 及 CPU调度
- 页面置换、作业调度、进程调度小剖析
- 进程调度与作业调度
- 操作系统进程调度算法 先到先服务 短作业 优先级 时间片轮转
- 先来先服务FCFS和短作业优先SJF进程调度算法
- 程序、进程、作业之间的区别与联系
- 进程调度算法 短作业优先 SJF
- 第一章 1.4操作系统作业调度和进程调度
- 一顿饭让你学会作业调度和进程调度
- 进程和线程的区别,作业,程序,管程等概念
- 作业二:进程PCB管理与调度程序
- 常见的作业调度和进程调度算法总结