刻如下表所示。若采用抢占式优先级调度算法(优先级越大越优先执行),画出进程执行过程,并计算平均周转时间和平均带权周转时间。
进程 P1 P2 P3 P4 P5 到达时刻 0 1 2 3 4 运行时间 5 1 2 1 3 优先级 4 6 2 3 5
4、假定系统中有三个进程P1、 P2和P3,共有12台磁带机。进程P1总共要求10台磁带机,P2和P3分别要求4台和9台。假设在T0时刻,进程P1、P2和P3已分别获得5台、2台和2台磁带机,如下表所示:
进 程 P1 P2 P3 最 大 需 求 已 分 配 10 4 9 5 2 2 (1) 该状态是否是安全状态?请说明理由。
解:T0时刻,系统是处于安全状态,因为此时的空闲磁带机资源为3,存在一个安全序列
(2) 若到达一新进程P4,请求1台磁带机,其最大需求为4台,是否可以分配?请说明理由。(参考P108)
解:可以进行资源分配。因为将1台磁带机分配给P4后,尚有2台空闲磁带机,存在一个安全序列
5、 设系统中有3种类型的资源(A,B,C)和5个进程P1、P2、P3、P4、P5,A资源的数量为17,B资源的数量为5,C资源的数量为20,在T0时刻系统状态如下表所示。系统采用银行家算法实施死锁避免策略。(参考P110) 进程 P1 最大资源需求量 A 5 B 5 C 9 A 2 已分配资源数量 B 1 C 2 P2 P3 P4 P5 剩余资源数 5 4 4 4 A 2 3 0 2 2 6 11 5 4 B 3 4 4 2 3 0 0 0 1 C 3 2 5 4 4 (1) T0时刻是否为安全状态?若是,请给出安全序列; 解: 进程 P1 P2 P3 P4 P5 剩余资源数 最大资源需求量 已分配资源数量 Need资源需求量 A B C A B C A B C 5 5 9 2 1 2 3 4 8 5 3 6 4 0 2 1 3 4 4 0 11 4 0 5 0 0 6 4 2 5 2 0 4 2 2 1 4 2 4 3 1 4 1 1 0 A B C 2 3 3 T0时刻是安全状态。
存在安全序列
(2) 若在T0时刻进程P2请求资源(0, 3, 4),是否能实施资源分配?为什么?
解:若在T0时刻进程P2请求资源(0, 3, 4),不能实施资源分配。 因为请求资源数(0, 3, 4)≤可用资源数(2, 3, 3)不成立,没有足够资源。
(3) 在(1)的基础上,若进程P4请求资源(2, 0, 1),是否能实施资源分配?为什么? 进程 P1 P2 P3 P4 P5 剩余资源数 最大资源需求量 A 5 5 4 4 4 A 0 B 5 3 0 2 2 C 9 6 11 5 4 B 3 已分配资源数量 A 2 4 4 4 3 B 1 0 0 0 1 C 2 C 2 2 5 5 4 3 1 0 0 1 Need资源需求量 A B 4 3 0 2 1 C 8 4 6 0 0 解:可以实施分配,因为分配后有安全序列: P1 >(为什么?能否找出其他安全序列?),即分配后的状态是安全的。 6、假定系统中有三个进程P1、 P2和P3,共有12台磁带机。进程P1总共要求10台磁带机,P2和P3分别要求4台和9台。假设在T0时刻,进程P1、P2和P3已分别获得5台、2台和2台磁带机,尚有3台空闲未分配,如下表所示: (参考教材P108) 进 程 P1 P2 P3 最 大 需 求 10 4 9 已 分 配 5 2 2 可 用 3 (1) T0时刻是否为安全状态?若是,请给出安全序列; (2) 在T0时刻P3申请一台磁带机,请问能否实施资源分配,为什么? 解:参考教材 7、理解FCFS和SJF作业调度算法思想。 作业 情况 调度 算法 FCFS (a) SJF (b) 进程名 到达时间 服务时间 完成时间 周转时间 带权周转时间 完成时间 周转时间 带权周转时间 A 0 4 4 4 1 4 4 1 B 1 3 7 6 2 9 8 2.67 C 2 5 12 10 2 18 16 3.1 D 3 2 14 11 5.5 6 3 1.5 E 4 4 18 14 3.5 13 9 2.25 9 2.8 8 2.1 平 均 8 、理解时间片轮转算法思想 9、通过上课所讲示例理解EDF(最早截止时间优先)算法和LLF(最低松弛度优先)算法思想。 作业 情况 时 间 片 RR q=1 RR q=4 进程名 到达时间 服务时间 完成时间 周转时间 带权周转时间 完成时间 周转时间 带权周转时间 A 0 4 12 12 3 4 4 1 B 1 3 10 9 3 7 6 2 C 2 5 18 16 3.2 18 16 3.2 D 3 2 11 8 4 13 10 5 E 4 4 17 13 3.25 17 13 3.25 平均 11.6 3.29 9.8 2.89 第四章 1、某系统采用动态分区分配方式管理内存,内存空间为640KB,高端40KB用来存放操作系统。在内存分配时,系统优先使用空闲区低端的空间。对下列的请求序列:作业1申请130KB,作业2申请60KB,作业3申请100KB,作业2释放60KB,作业4申请200KB,作业3释放100KB,作业1释放130KB,作业5申请140KB,作业6申请60KB,作业7申请50KB,作业6释放60KB,请分别画图表示出使用首次适应算法和最佳适应算法进行内存分配和回收后,内存的实际使用情况。(参考教材和讲义) 解:参考教材、讲义和下题方法 2. 某操作系统采用分区存储管理技术。操作系统在低地址占用了100KB的空间,用户区主存从100KB处开始占用512KB。初始时,用户区全部为空闲,分配时截取空闲分区的低地址部分作为已分配区。在执行以下申请、释放操作序列后:请求300KB;请求100KB;释放300KB;请求150KB;请求50KB;请求90KB,进行以下回答: (1) 分别采用首次适应算法和最佳适应算法时,主存的实际使用情况如何?分别画出主存分布图,并指出空闲分区的首地址和大小; (2) 若随后又要请求80KB,针对上述两种情况产生什么后果?说明了什么问题?(参考教材和讲义) (1) 采用首次适应算法时,主存分布图如下图 OS 占用 100KB150KB(已分配)50KB(已分配)90KB(已分配)10KB(空闲)100KB(已分配)112KB(空闲) 空闲区1:首地址390KB,大小10KB; 空闲区2:首地址500KB,大小112KB; (2) 采用最佳适应算法时,主存分布图如下图 OS 占用 100KB150KB(已分配)90KB(已分配)60KB(空闲)100KB(已分配)50KB(已分配) 空闲区1:首地址340KB,大小60KB; 空闲区2:首地址550KB,大小62KB; (3) 若随后又要请求分配80KB,首次适应算法可顺利分配,而最佳适应算法不能。说明首次适应算法可在高址端保留大分区。 62KB(空闲)3、某分页系统的逻辑地址为16位,其中高6位为页号,低10位为页内偏移量,则在这样的地址结构中: (1) 一页有多少个字节? (2) 逻辑地址可有多少页? (3) 一个进程最大的逻辑地址空间是多少KB?(参考P130) 解:210 = 1024 因此一页有1024字节 26 = 64 因此逻辑地址可有64页 216 = 64KB 因此一个进程最大的逻辑地址空间是64KB 4、某系统采用页式存储管理策略,拥有逻辑空间32页,每页为2KB,拥有物理空间1MB。 (1)写出逻辑地址的格式。 解:11位页内地址,5位页号 (2)若不考虑访问权限等,进程的页表最多有多少项?每项至少有多少位? 解:因为有32个逻辑页面,所以页表有32项。因为有1M/2K= 2的9次方物理块,所以每个页表项至少有9位 (3)如果物理空间减少一半,页表结构应相应作怎样的改变? 解:32项,每项至少需要8位