操作系统CPU调度-练习题-2011

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

SJF
作业 名 A B C D E 进入输入 井时 间 8∶30 8∶50 9∶05 9∶10 9∶00 装入主 开始执行 执行结束时 存时 时间 间 间 8:30 8:50 9:10 9:35 9:55 8:30 9:10 9:35 9:55 10:05 9:10 9:35 9:55 10:05 10:40 40 45 50 55 100
例题2:解答
各个作业的运行时间序列为: JOB1 8:00-8:10,8:40-10:00 JOB2 8:10-8:40 JOB3 10:05-10:25 JOB4 10:25-10:50 JOB5 10:50-11:00 JOB6 10:00-10:05 要求:计算平均周转时间
例题3
• 假定某多道程序设计系统供用户使用的主存空间100k,磁带机2台, 打印机1台。采用可变分区方式管理主存,采用静态分配方式分配磁 带机与打印机、忽略用户作业I/O时间。现有如下作业序列: 作业号 进入时间 要求计算时间 主存需求量 磁带机 打印机 1 8:00 25分钟 15k 1台 1台 2 8:20 10分钟 30k 0台 1台 3 8:20 20分钟 60k 1台 0台 4 8:30 20分钟 20k 1台 0台 5 8:35 15分钟 10k 1台 1台 • 作业调度策略先来先服务,优先分配主存的低地址区域且不准移 动已在主存的作业,在主存中的各作业平分CPU时间,问题如下: • (1)作业调度选中各作业的次序是什么? • (2)全部作业运行结束的时刻是什么? • (3)如果把一个作业从进入输入井到运行结束的时间定义为周 转时间,在忽略系统开销时间条件下,最大的作业周转时间是多少? • (4)平均周转时间是多少?
例题4
作业名 进入输入井 要求计算时间(分 磁带机 要求主存量(KB) 时间 钟) 需求 8∶30 8∶50 9∶00 9∶05 9∶10 40 25 35 20 10 30K 120K 100K 20K 60K 3 1 2 3 1
A B C D E
FCFS
先来先服务-分析
• 8:30:作业A到达并投入运行; • 8:50:作业B到达,进入主存等待CPU(就绪态) • 9:00:作业C到达,因主存和磁带机均不能满足而进入后备 作业队列(未进入主存) • 9:05:作业D达到因磁带机不能满足而进入后备作业队列 • 9:10:作业A运行结束,作业B投入运行。这时作业C仍因为 主存不够而处于后备作业队列,作业E到达也因为主存不够而 处于后备作业队列。而作业D因资源满足则调入主存处于等待 CPU(即就绪)状态。 • 9:35时:作业B运行结束,作业D投入运行,这时作业C因 资源满足而调入主存处于等待CPU状态(假定进程调度也采 用FCFS算法),而作业E因磁带机不够而处于后备作业队列 • 9:55时,作业D运行结束,作业C投入运行,这时作业E因 资源满足而调入主存处于等待状态 • 10:30时,作业C运行结束,作业E投入运行。 • 10:40时,作业E运行结束。 • 因此,运行顺序为:A,B,D,C,E
例题5:分析
11:00 作业4完成 作业3响应比45/45 作业5响应比30/30 响应比相同,选作业3 作业1被进程调度程序调度 11:25 作业1完成 作业5被进程调度程序调度 11:55 作业5完成 作业3被进程调度程序调度 12:40 作业3完成
例题5:分析
各作业的执行序列: 1 10:00~10:10 11:00~11:25 2 10:10~10:40 3 11:55~12:40 4 10:40~11:00 5 11:25~11:55
例井) 时间 8∶00 8∶20 8∶20 8∶30 8∶35
要求计算时间 (分钟)
25 10 20 20 15
主存量 (KB)
15K 30K 60K 20K 10K 1 0 1 1 1
磁带机 需求
1 1 0 0 1
打印机 需求
例题3:图示
例题3:分析
buy=1;sale=0;wait=0;a=0; Fan1 { Fan2 { Fan3 {
While(true)
P(buy); a=1; V(sale); P(wait);
While(true)
P(buy); a=2; V(sale); P(wait);
While(true)
P(buy); a=3; V(sale); P(wait);
• TJ1=70分 TJ2=30分 TJ3=90分 TJ4=90分 平均周转时间 = (70+30+920+90)/4 = 280/4 = 70 分钟
例题1:答案
• 注意:本题的批处理系统是两道作业系统, 即内存中最多允许有两道作业。 作业 进入内存时间 结束时间 J1 10:00 11:10 J2 10:20 10:50 J3 11:10 12:00 J4 10:50 12:20
例题5:分析
10:00 作业1到达,被作业调度程序调度 进入系统,被进程调度程序调度开始运行 10:10 作业1运行10分钟 作业2到达,被作业调度程序调度 进入系统,被进程调度程序调度开始运行 10:15 作业3到达,等待作业调度 10:20 作业4到达,等待作业调度 10:30 作业5到达,等待作业调度 10:40 作业2完成 作业3响应比25/45 作业4响应比20/20 作业5响应比10/30 作业4响应比最高,被作业调度程 序调度 进入系统,被进程调度程序调度开始运行
• 次序:作业1、作业3、作业4、作业2、作业5 • 分析:在8:20,作业2和作业3同时到达,但是由于打印 机正被作业1使用。故作业2因得不到打印机而只能等待。 • 在8:30分,作业1运行结束,释放了打印机和磁带机,但 是此时作业2却因为没有一个空闲区满足30K要求而继续 等待。 • 在8:35分时,作业5到达,这时已经没有空闲磁带机而作 业5只好等待。 • 在9:00时,作业3因到达时间晚而只好继续等待。 • 在9:10时作业4运行结束,但是此时因作业2占用打印机 而使作业5继续等待。 • 在9:15时作业2运行结束而使作业5投入运行。
FCFS
作业 名 A B C D 进入输入 井时 间 8∶30 8∶50 9∶05 9∶00 装入主 存时 间 8:30 8:50 9:10 9:35 开始执 执行结束时 行时 间 间 8:30 9:10 9:35 9:55 9:10 9:35 9:55 10:30 40 45 50 90 周转时间
例题1?有一个具有两道作业的批处理系统作业调度采用短作业优先的调度算法进程调度采用以优先数为基础的抢占式调度算法作业序列如表所示表中所列作业优先数即为进程优先数数值越小优先级越高
例题1
• 有一个具有两道作业的批处理系统,作业调度采 用短作业优先的调度算法,进程调度采用以优先 数为基础的抢占式调度算法,作业序列如表所示 (表中所列作业优先数即为进程优先数,数值越 小优先级越高)。 • ① 列出所有作业进入内存时间及结束时间。 ② 计算平均周转时间。
习题
有一间酒吧里有3个音乐爱好者队列,第1队的音乐爱好 者只有随身听,第2队只有音乐磁带,第3队只有电池, 而要听音乐就必须随身听、音乐磁带和电池这3种物品 都有。 酒吧老板一次仅出售这3种物品中的任意2种。当一名音 乐爱好者得到这3种物品并听完一首乐曲后,酒吧老板 才能再一次出售这3种物品中的任意两种,于是第2名音 乐爱好者得到这3种物品,并开始听音乐。全部买卖就 这样进行下去。
周转时间
例题5
在一个两道批处理系统中,其作业序列及到达时间和 估计运行时间列表:
作业 1 2 3 4 5
到达时间 10:00 10:10 10:15 10:20 10:30
运行时间 35 30 45 20 30
系统采用最高响应比优先的作业调度算法,进程调度采用短 作业优先的抢占式调度算法 1.列出各作业的执行时间 2.计算这批作业的平均周转时间
例题2
• 在一个两道的批处理操作系统中,有6个作业进入系统, 它们的进入时刻、估计运行时间和优先级如下表所示. • 作业号 进入时刻 估计运行时间 优先级 • JOB1 8:00 90分钟 5 • JOB2 8:10 30分钟 6 • JOB3 8:30 20分钟 3 • JOB4 8:50 15分钟 8 • JOB5 9:20 10分钟 2 • JOB6 9:40 5分钟 4 • 系统采用短作业优先作业调度算法,作业一旦被调度运行 就不再退出.但当有新的作业投入运行时,可以按照优先 级进行进程调度(数越大,优先级别越高). • 试给出各个作业的运行时间序列.(例如:JOB1:8:008:30,9:10-9:20,…) • 试计算出作业的平均周转时间.
例题3:计算
• • • • • • 作业1:8:30-8:00=30分钟 作业2:9:15-8:20=55分钟 作业3:9:00-8:20=40分钟 作业4:9:10-8:30=40分钟 作业5:9:30-8:35=55分钟 平均周转时间:(30+55+40+40+55)/5=44分 钟。
• 周转时间=结束时间-到达时间
例题4
• 有一个多道程序系统,采用可变分区方式管理主 存,且不能移动已经在主存中的作业。若供用户 使用的主存空间为200KB,系统配备5台磁带机, 有一批作业如表所示。该系统对磁带机采用静态 分配,忽略外设工作所花费的时间。要求: • 1、先来先服务算法中执行的次序和平均周转时间 • 2、短作业优先算法中执行的次序和平均周转时间
E
9∶10
9:55
10:30
10:40
90
SJF
• 作业A和作业B进入输入井后都能够依次被装入内 存,而作业C进入时因资源不足而不能进入主存; 作业A执行结束并释放3台磁带机后,作业C、D、 E都已进入输入井;由于主存不能移动,虽然作 业E执行时间最短,但由于内存不够,所以无法 进入内存;此时只有作业D因资源满足而装入主 存。作业B完成后,作业C和作业E的资源都得到 满足,故先选执行时间短的作业E装入主存(即 此处与(1)不同),而作业C则要等到作业D运 行结束后才能装入主存。
例题1:分析过程
• 10:00 J1 进入,运行20分 10:00—10:20 • 10:20 J2 进入,运行30分 10:20—10:50 完成 • 10:50 J4 进入,优先级别低于J1,J1运行20分完成。10:50-11:10 • 11:10 J3 进入,运行50分 完成12:00 11:00—12:00 • 12:20 J4运行20分钟,结束 10:50—12:20 • • • • J1:10:00—11:10 J2:10:20—10:50 J3:11:10—12:00 J4:10:50—12:20
例题1:分析过程
• 10:00 时,作业J1到达并投入运行 • 10:20时,作业J2到达且优先级别高于作业J1,故作业 J2投入运行,而作业J1进入就绪队列 • 10:30时,作业J3到达,因为内存中已有两道作业,故 作业J3进入后备作业队列等待调度进入内存 • 10:50时,作业J2运行结束,作业J4到达,因按短作业 优先调度策略,作业J4被装入内存就绪队列,而作业J1优 先级高于作业J4,故作业J1投入运行。 • 11:10时,作业J1运行结束,作业J3被调入内存,且作 业J3优先级高于作业J4,故作业J3投入运行 • 12:00时,作业J3运行结束,作业J4投入运行 • 12:20时,作业J4运行结束。
购买音乐磁带和电池; 购买随身听和电池;购买随身听和磁带;
听一曲音乐; V(buy); 听一曲音乐; V(buy); 听一曲音乐; V(buy);
Boss { while(true) P(sale); If(a==1) 出售磁带和电池;
If(a==2) 出售随身听和电池;
If(a==3) 出售磁带和随身听; A=0; V(wait);
• 一个进程运行完成需要100个时间片。如果采用时间片轮 转调度算法(RR),则该进程需要切换多少次?如果采 用多级队列反馈调度算法,则需要切换多少次? • (100次,7次) • 1次-1个时间片 • 2次-2个时间片 • 3次-4个时间片 • 4次-8个时间片 • 5次-16个时间片 • 6次-32个时间片 • 7次-64个时间片
相关文档
最新文档