一、有 5 个任务几乎同时到达内存,估计的运行时间分别为
2, 4,6,8,10 分钟,他们的
优先级分别为 1,2, 3,4,5(1 为最低优先级)。对下面的每种调度算法,分别计算作
业的平均周转时间。 ( 1) 优先级调度
22
( 2) 时间片轮转(时间片为 2 分钟)
90/5 ( 3) 短作业优先
70/5
二、 1. (5 分)简述处理机三级调度分别完成什么工作?
2. (10 分)在一个两道作业的操作系统中,设在一段时间内先后到达
4 个作业,它们的
提交时刻和运行时间由下表给出。 若作业调度采用短作业优先的调度算法, 先权调度算法(数值越小,优先级越高) 。
进程调度采用优
(1)完成下列表格
到达 时间
A B C
0 2 3 5
答:
估计运 行时间
4 3 5 2
(2)计算平均周转时间、平均带权周转时间(小数点后保留两位)
进程名
优先数
5 3 4 6
进入内 存时间
完成 时间
周转 时间
带权周
转时间
D
1、( 1)高级调度(作业调度)用于决定把外存上处于后备队列中的哪些作业调入内存,并 为它们创建进程,分配必要的资源,然后,再将新创建的进程排在就绪队列上,准备执行。
(2)低级调度(进程调度):它决定就绪队列中的哪个进程将获得处理机,然后由分
派程序执行把处理机分配给该进程的操作。
(3)中级调度:存储管理中的对换功能。
2、完成表格如下: 进程名
到达时
间 0 2 3
估计运 行时间
4 3 5
优先数
5 3 4
进入内 存时间
0 2 4 7
完成时
间 4 7 12 14
周转时
间 4 5 9 9
带权周
转时间
1 1.67 1.8 4.5
A B C
D 5 2 6
平均周转时间 =(4+5+9+9)÷ 4=27/4
平均带权周转时间 =(1+1.67+1.8+4.5) ÷4=2.24
三、上题中,若作业调度采用短作业优先的调度算法,进程调度采用以优先权为基础的抢占
式调度方式(数值越小,优先级越高) 。
完成下表:
进程名
到达 时间 0 2 3 5
估计运 行时间
4 3 5 2
优先数
5 3 4 6
进入内 存时间
0 2 7 5
完成 时间
7 5 12 14
周转 时间 7 3 9 9
带权周
转时间 1.75 1 1.8 4.5
A B C
D
答案见“进程调度课件”
一、 (10 分) 某系统有 R1、R2 和 R3 共 3 种资源,在 T0 时刻 P1、 P2、P3 和 P4 这 4 个进程
对资源的占用和需求情况见下表,此刻系统的可用资源为(
2,1,2)。
1.求系统中各种资源总数和此刻各进程对各种资源的需求数目。
2.如果此时 P1 和 P2 均提出资源请求 Request(1,0,1),能否立即给予满足?
进程
最大需求量 R1 R2 3 6 3 4
2 1 1 2
R3 2 3 4 2
占有量
R1 R2 R3 1 4 2 0
0 1 1 0
0 1 1 2
P1 P2 P3
P4
答:
1.系统资源总数为( 9,3,6)。
各种进程对资源需求矩阵为:
2 2 2
2 0 2
1 0
3
P1,虽然剩余资源可以满
4 2 0
2.采用银行家算法进行计算得:系统不可以将资源分配给进程 足进程 P1 现在的需求,但是一旦分配给进程 证各个进程能够正常运行下去。因此进程 二、 (10 分)在银行家算法中,若出现下述资源分配情况: Allocation 0 1 1 0 0 0 0 3 3 0 3 0 5 3 1 2 0 4 2 4 Need 0 7 3 6 6 1 5 5 5 5 2 0 6 2 6 P1 后,就找不到一个安全执行的序列保 P1 进入等待状态。 系统可以满足 P2 的请求,因为分配完成后,至少还可以找到一个安全序列,如 Available 6 p0 p1 p2 p3 p4 0 1 2 0 0 1 2 2 试问: (1) 该状态是否安全? (2) 如果进程 p2 提出请求 Request2 (1,2,2,2)后,系统能否将资源分配给它? 答: (1)系统处于安全状态。因为存在安全序列 {P0,P3,P1,P2,P4}。 (2)进程 P2 提出请求 Request2(1,2,2,2)后,可用资源变为 Available(0,4,0,0),此时已经不能满足任何进程的需求,系统进入不安全状态,按照银行家算法,不能将资源分配给 它。 三、 (12 分) 某系统有 A、B、C 共 3 种资源, A 资源的数量为 17,B 资源的数量为 5,C 资 源的数量为 20。在 T0 时刻 P1、P2、P3、P4 和 P5 这 5 个进程对资源的占用和需求情况 见下表。若系统采用银行家算法实施死锁避免策略,请问: 1、T0 时刻是否安全?若是,请给出安全序列。 2、在 T0 时刻若进程 P2 提出资源请求 (0,3,4),是否能实施资源分配, 为什么? 进程 最大需求量 已分配资源数量 A B C A B C P1 P2 P3 P4 5 5 4 4 4 5 9 3 6 0 11 2 5 2 4 2 4 4 2 3 1 2 0 2 0 5 0 4 1 4 P5 答: 1、 T0 时刻是安全状态。安全序列为 P4 P2 P3 P5 P1(不唯一) 2、在 T0 时刻若进程 P2 提出资源请求( 0, 3, 4),不能实施资源分配。因为在 T0 时 刻可用资源数为( 2,3,3),显然资源 C 不能满足请求的数量,所以不能进行分配。 P2 阻塞。 注意:做题时,请给出安全性计算时,求安全序列的过程 填空题: 1.进程从就绪到运行状态的转换由 程序完成;从运行到就绪状态的转换的 主要原因是 3.程序可并发执行的条件是 4.从结构上讲,进程由 。 2.操作系统的三种基本类型是 、 和 。 。 、 、 和 、 组成。 5.同步机制应遵循的准则是 、 。 6 .产生死锁的四个必要条件是 、 、 和 。 7.在没有快表的分页存储管理系统中,取一条指令(或操作数)需访问两次内存的原 因是 。 8.在页式管理系统中,地址空间是 维的,而在段式管理系统中,地址空间是 维的。 9.操作系统的基本特征是 、 、 、 。 10.从用户的源程序进入系统到变成内存可执行程序,所经历的主要处理阶段有 _______, _______,和 _________。 11.静态重定位在 _______时进行,而动态重定位在 _______时进行。 12.虚拟存储器所具有的基本特征是 ______, _______, ______和 _______。 13.一般说来,用户程序中所使用的地址是 ____________。 __________,而内存中各存储单元的地址是 14.I/O 系统的结构分为两类: 和 。 15.I/O 控制方式的发展经历了四个阶段,分别是 、 、 和 。 答案: 1.调度、时间片完 2.批处理系统、分时系统、实时系统 3.Bernstein 条件 4.程序段、数据段、进程控制块 5.空闲让进、忙则等待、有限等待、让权等待 6.互斥条件、请求和保持条件、不可剥夺条件、环路等待条件 7.页表在内存 8、一、二 9.并发、共享、虚拟、异步 10.编译、链接、装入 11.装入、运行 12.离散性、多次性、对换性、虚拟性 13.逻辑地址、物理地址 14.微型机 I/O 系统 、主机 I/O 系统 15.程序 I/O 方式、中断驱动 I/O 控制方式、直接存储器访问 DMA 控制方式、通道控制方式 选择题一: 1.操作系统的主要功能是管理计算机系统中的 。 A .程序 B.数据 C.文件 D.资源 .产生死锁的基本原因是 2 和进程推进顺序非法。 A .资源分配不当 B.系统资源不足 C.作业调度不当 D.进程调度不当 3.在操作系统中, 是竞争和分配计算机系统资源的基本单位。 A .程序 B.进程 C.作业 D.用户 4.动态重定位是在作业的 中进行的。 A .编译过程 B.装入过程 C.连接过程 D.执行过程 5.实时系统中的进程调度,通常采用 算法。 A .先来先服务 B.时间片轮转 C.抢占式的优先级调度 D.短作业优先 6.若信号量的初值为 3,当前值为 -2,则表示有 个等待进程。 、 I/O A.2 B.3 C.4 采取措施实现的。 D.5 7.死锁的避免是根据 A .配置足够的系统资源 B.使进程的推进顺序合理 C.破环死锁的四个必要条件之一 D.防止系统进入不安全状态 2 小时, 5 小时, 3 小时,假定它们同时到达,并 8.设有 3 个作业,其运行时间分别为 在同一台处理机上以单道方式运行,则平均周转时间最小的执行顺序是 A .J1,J2,J3 B. J3,J2,J1 C.J2,J1,J3 D .J1,J3,J2 9.最佳适应算法的空白区是 。 A .按大小递减顺序排列 B.按大小递增顺序排列C.按地址由小到大排列 D.按地址由大到小排列 10.分页式虚拟存储管理系统中,页面的大小与可能产生的缺页中断次数 A .成正比 B.成反比 C.无关 D.成固定比值 选择题一答案: 1. D 2.B 3.B 4. D 5. C 6. A 7.D 8.D 9. B 10. C 选择题二: 1.操作系统核心部分的主要特点是 。 A 、一个程序模块 B、常驻内存 C、有头有尾的程序 D、串行执行 2.可重定位内存的分区分配目的为 。 A 、解决碎片问题 B、便于多作业共享内存 C、回收空白区方便 D、便于用户干预 3.逻辑地址就是 。 A 、用户地址 B、相对地址 C、物理地址 D、绝对地址 4.原语是 。 A 、一条机器指令 B、若干条机器指令组成 C、一条特定指令 D、中途能打断的指令 5.进程和程序的一个本质区别是 。 A . 前者为动态的,后者为静态的; B. 前者存储在内存,后者存储在外存; C. 前者在一个文件中,后者在多个文件中; D. 前者分时使用 CPU,后者独占 CPU。 。 。 6.某进程在运行过程中需要等待从磁盘上读入数据,此时该进程的状态将 。 A .从就绪变为运行; B.从运行变为就绪; D.从阻塞变为就绪 。 B.可以和其他进程共用一个进程控制块; C.从运行变为阻塞; 7.进程控制块是描述进程状态和特性的数据结构,一个进程 A .可以有多个进程控制块 C.可以没有进程控制块; D.只能有惟一的进程控制块。 。 C.作业调度; 8.在一般操作系统中必不可少的调度是 A .高级调度; B.中级调度; D.进程调度。 9.把逻辑地址转变为内存的物理地址的过程称作 A .编译; 。 B.连接; C.运行; D.重定位。 10.文件目录的主要作用是 A 、按名存取 。 B、提高速度 C、节省空间 D、提高外存利用率 11. UNIX 操作系统是著名的 。 A .多道批处理系统; B.分时系统; 。 C.实时系统; D.分布式系统 B.从运行变为就绪; D.从阻塞变为就绪 12.在运行过程中需要等待从磁盘上读入数据,此时该进程的状态将 A .从就绪变为运行; C.从运行变为阻塞; 选择题二答案: 1. B 2.A 6. C 7.D 12. C 11. B 选择题三: 3. B 8.D 4. B 9. D 5.A 10.A 1.下列进程状态的转换中,哪一个是不正确的( A.就绪 C.就绪 运行 B.运行 )。 就绪 阻塞 D.阻塞 就绪 2.某进程由于需要从磁盘上读入数据而处于阻塞状态。当系统完成了所需的读盘操作 后,此时该进程的状态将( )。 B.从运行变为就绪 D.从阻塞变为就绪 A .从就绪变为运行 C.从运行变为阻塞 3.若 P、V 操作的信号量 S 初值为 2,当前值为 -1,则表示有( )个等待进程。 A.0 个 B.1 个 C.2 个 D.3 个 4.把逻辑地址转变为内存的物理地址的过程称作( )。 A .编译 B.连接 B.页表 C.运行 C.PCB B.固定式分区分配 D.页式存贮管理 D.重定位 )实现的。 5.在分页存储管理系统中,从页号到物理块号的地址映射是通过( A.段表 D.JCB ( )。 6.在以下存贮管理方案中,不适用于多道程序设计系统的是 A.单用户连续分配 C.可变式分区分配 7.在可变式分区分配方案中,某一作业完成后,系统收回其主存空间,并与相邻空闲 区合并,为此需修改空闲区表,造成空闲区数减 1 的情况是 ( )。 A. 无上邻空闲区,也无下邻空闲区 B. 有上邻空闲区,但无下邻空闲区 C. 有下邻空闲区,但无上邻空闲区 D. 有上邻空闲区,也有下邻空闲区 8.在分段管理中 , ( )。 A 以段为单位分配 , 每段是一个连续存储区 B 段与段之间必定不连续 C 段与段之间必定连续 D 每段是等长的 9.消息缓冲通信是利用( A .文件系统 )为基础来实现进程间的数据交换。 B.内存缓冲区 B.由小到大 C.高速缓冲存储器 C.地址递减 D.硬件 D.由大到小 10.采用最佳适应分配算法时,应将空闲区按( )顺序进行连接。 A .地址递增 选择题三答案: 1 C 2 3 B 4 5 B 6 A 7 8 A 9 B 10 D D D B 一、解答题: 1. 什么是操作系统?它有什么基本特征? 答:操作系统是为了达到方便用户和提高资源利用率的目的而设计的, 控制和管理计算 机硬件和软件资源,合理的组织计算机工作流程的程序的集合,它具有并发、共享、虚 拟、异步性四个基本特征。 2.(1)描述进程的三种基本状态, 尽可能清楚地解释处于不同状态的进程在性质上的区别。 答:进程的三个基本状态有: ①、就绪状态:是指进程已分配到除 CPU 以外的所有必要的资源,只要能再获得处 理机,便可立即执行。 ②、执行状态:指进程已获得处理机,其程序正在执行。 ③、阻塞状态:进程因发生某事件(如请求 I/O 、申请缓冲空间等)而暂停执行时的 状态。 ( 2)画出进程状态变化图,说明进程怎样从一个状态转换到下一个状态。答:进程基本状态转换图如下: 执行 等待事件发生 进程调度 间 时 片 完 就绪 阻塞 事件发生 就绪→执行状态:处于就绪状态的进程,当进程调度程序为之分配了处理机后,该进程便由就绪状态变为执行状态。 执行→阻塞状态:正在执行的进程因发生某事件而无法执行。例如,进程请求访问临界资源,而该资源正被其它进程访问,则请求该资源的进程将由执行状态转变为阻塞状态。 执行→就绪状态:正在执行的进程,如因时间片用完而被暂停执行,该进程便由执行状态转变为就绪状态。又如,在抢占调度方式中,一个优先权高的进程到来后,可以抢占一个正在执行优先权低的进程的处理机, 这时,该低优先权进程也将由执行状态转换为就绪状态。 3.现代操作系统一般都提供多进程(或称多任务)运行环境,回答以下问题: (1) 为支持多进程的并发执行,系统必须建立哪些关于进程的数据结构? (2) 为支持进程状态的变迁,系统至少应提供哪些进程控制原语? (3) 执行每一个进程控制原语时,进程状态发生什么变化?相应的数据结构发生什么变 化? 答: (1) 为支持多进程的并发执行,系统为每个进程建立了一个数据结构——进程控制块 (PCB),用于进程的管理和控制。 (2) 进程控制的主要职责是对系统中的所有进程实施有效的管理,它具有创建新进程、撤销已有进程、实现进程的状态转换等功能。在操作系统的内核中,有一组程序专门用于完成对进程的控制,这些原语至少需要包括创建新进程原语、终止进程原语、阻塞进程原语、唤醒进程原语等操作。这些系统服务一般对用户是开放的,也就是说用户 可以通过相应的接口来使用它们。 (3) 进程创建原语:从 PCB 集合中申请一个空白 PCB,将调用者参数、以及从执行 进程获得的调用者内部标识填入该 PCB,设置记账数据。置新进程为“就绪”状态。 终止进程原语:用于终止完成任务的进程, 收回其所占的资源。 消去该进程的 PCB。 阻塞原语:将进程从运行态变为阻塞状态。进程被插入等待事件的队列中,同时修改 PCB 中相应的表项,如进程状态和等待队列指针等。 唤醒原语:将进程从阻塞态变为就绪状态。进程被从阻塞队列中移出,插入到就绪队列中,等待调度,同时修改 PCB 中相应的表项,如进程状态等。 4.何谓临界资源、临界区?使用临界资源的诸进程间如何实现对临界区的互斥访问? 答:一次仅允许一个进程访问的资源称为临界资源。 访问临界资源的代码段称为临界区。 对临界区必须互斥的访问。 具体实现时,可让每个进程在进入临界区之前, 先提出申请, 经允许后方可进入(进入区) ,进程进入临界区执行完毕退出时,恢复临界区的使用标 志为未被访问标志(退出区) 。通常可采用专门的硬件指令或信号量机制对临界区进行 管理。使用信号量机制是,可设置一个初值为 1 的互斥信号量,对每个进程的临界区进 行如下“改造”: . . . P(mutex); 临界区 V(mutex); . . . 即将进程的临界区放置在 P(mutex)和 V(mutex) 之间,就可以实现进程对其互斥访问。 5.使用信号量的 P、V 操作可以实现并发进程间的互斥。请写出 P 操作原语和 V 操作原语 的定义? 答: P 操作功能是请求系统分配一个单位的资源,定义如下: ①信号量的值减 1,即 S=S-1; ②如果 S≥0,则该进程继续执行; 如果 S< 0,则把该进程的状态置为阻塞态, 把相应的 PCB 连入该信号量队列的末尾, 并放弃处理机,进行等待(直至其它进程在 S 上执行 V 操作,把它释放出来为止) 。 V 操作功能是释放一个单位的资源,定义如下: ①S 值加 1,即 S=S+1; ②如果 S>0,则该进程继续运行; 如果 S≤ 0,则释放信号量队列上的第一个 PCB(即信号量指针项所指向的 PCB)所 对应的进程(把阻塞态改为就绪态) ,执行 V 操作的进程继续运行。 6.什么是死锁?产生死锁的四个必要条件是什么? 答:所谓死锁( Deadlock),是指多个进程因竞争资源而造成的一种僵局,若无外力作 用,这些进程都将永远不能再向前推进。产生死锁的四个必要条件是:互斥条件、请求和保持条件、不剥夺条件、环路等待条件。 7.简述死锁的预防与死锁的避免的区别。 答:死锁的预防是系统预先确定一些资源分配策略,进程按规定申请资源,系统按预先规定的策略进行分配,从而防止死锁的发生。 而死锁的避免是当进程提出资源申请时系统测试资源分配, 仅当能确保系统安全时才把资源分配给进程,使系统一直处于安全状态之中,从而避免死锁。 8.解决生产者 - 消费者问题的算法中, 若将 P(empty) 和 P(mutex) 的次序互换,或将 P(full) 和 P(mutex) 的次序互换 , 可能会产生死锁。请问在什么情况下会产生死锁? 答:解决生产者 - 消费者问题的算法中,若将 P(empty) 和 P(mutex) 的次序互换,在缓冲区满的情况下( empty=0,full=n ),若生产者先提出申请,获得对缓冲区的访问权,但申请不到空缓冲块,在 empty 处阻塞,这个时候若再来消费者进程,申请不到对缓冲区的访问 权,在 mutex 处阻塞,这时会产生锁死。 将 P(full) 和 P(mutex) 的次序互换,在缓冲区空的情况下( empty=n,full=0 ),若消 full 处阻塞,这个 费者先提出申请,获得对缓冲区的访问权,但申请不到满缓冲块,在 时候若再来生产者进程, 申请不到对缓冲区的访问权, 在 mutex 处阻塞,这时会产生锁死。9.消息缓冲通信技术是一种高级通信机制。请给出消息缓冲通信机制(有限缓冲)的基本 工作原理。 答:操作系统管理一个用于进程通信的缓冲池, 其中的每个缓冲区单元可存放一条消息。 欲发送消息时,发送者从中申请一个可用缓冲区 ,直接将消息送入内存公用消息缓冲池, 并将它挂接在接收者进程的消息缓冲队列上, 接收进程从消息缓冲队列中取走消息, 并释 放该缓冲区, 每个进程均设置一条消息队列, 任何发送给该进程的消息均暂存在其消息队 列中。 10. (1)简述处理机三级调度分别完成什么工作? (2)列举引起进程调度的时机? (3)分析下述问题应由哪一级调度程序负责。 在可获得处理机时 ,应将它分给哪个就绪进程; 在短期繁重负载下 ,应将哪个进程暂时挂起。 答: (1) 高级调度:即作业调度,用于决定把外存上处于后备队列中的哪些作业调入内存, 并为它们创建进程,分配必要的资源,然后,再将新创建的进程排在就绪队列上,准备执 行。 低级调度:即进程调度,它决定就绪队列中的哪个进程将获得处理机,然后由分派程序执行把处理机分配给该进程的操作。 中级调度:实际上就是存储器管理中的对换功能。 (2) 引起进程调度的时机有: 正在执行进程执行完毕或因发生某事件而不能再继续执行。执行中的进程因提出 I/O 请求而暂停执行。 在进程通信或同步过程中执行了某种原语操作,如 P 操作、 block 原语、 wakeup 原语等。 在可剥夺式调度中,有一个比当前进程优先权更高的进程进入就绪队列。 在时间片轮转法中,时间片用完。 (3) 进程调度; 中级调度 11.动态分区式管理的常用内存分配算法有哪几种?比较它们各自的优缺点。 答: (1)首次适应算法:描述算法 (丛空闲分区的组织、如何找两方面描述 缺点:增加查找可用空闲分区开销; )) 地址不断划分,致使留下许多难以利用的、很小的空闲分区。 (2)循环首次适应算法:描述算法 (2 分) 特点:减少查找开销,空闲分区分布的更均匀,但会缺乏大的空闲分区。 (3)最佳适应算法:描述算法 (2 分 ) 缺点:划分后剩余的空闲区最小。 12.在动态分区存储管理方式中, 回收内存时,可能出现哪几种情况?应怎样处理这些情况? 答:在动态分区存储管理方式中,回收内存时 , 系统根据回收区的首址,从空闲区链中找 到相应的插入点,此时可能出现以下四种情况之一: (1)回收区与插入点的前一个分区 F1 相邻接。此时应将回收区与插入点的前一分区合 并,不再为回收分区分配新表项,而只需修改 (2)回收分区与插入点的后一分区 F1 区的大小为两者之和; F2 相邻接。此时也将两分区合并形成新的空闲区, 但用回收区的首址作为新空闲区的首址,大小为两者之和; (3)回收区同时与插入点的前、后两个分区邻接。此时将三个分区合并,使用 F1 的首 址,取消 F2 的表项; (4)回收区既不与 F1 邻接,也不与 F2 邻接。这时应为回收区单独建立一新表项,填写 回收区的首址和大小,并根据其首址,插入到空闲链中的适当位置。 13.什么是分页?什么是分段?在存储管理中, 分页与分段的主要区别是什么?分页与分段 两种方法中,哪个更易于实 现共享 ,为什么? 答:分页是将一个进程的逻辑地址空间分成若干大小相等的部分,每一部分称作页面。内 存划分成与页面大小相等的物理块, 进程的任何一页可放入内存的任何一个物理块中。 (2 分) 分段是一组逻辑信息的集合, 即一个作业中相对的部分。 多个段在内存中占有离散的内存单元,对每个段,在内存占有一连续的内存空间,其内存的分配与回收同可变分区的内存分配与回收办法。( 2 分) 分页与分段的主要区别是: ( 1) 页是信息的物理单位。分页仅仅是由于系统管理的需要,而不是用户的需要;而 段是信息的逻辑单位, 它含有一组具有相对完整意义的信息, 是出于用户的需要。 ( 2) 页的大小固定且由系统确定,把逻辑地址划分为页号和页内地址两部分的功能, 由机器硬件实现;而段的长度却不固定,或由编译程序在对源程序进行编译时根 据信息的性质来划分。 ( 3) 分页的作业地址空间是一维的,即单一的线性地址空间;而分段的作业地址空间 则是二维的。 对于分页和分段来说,分段更容易实现共享。因为段是一组有一定意义的信息集合, 且由于能实现分段的动态链接。 14.说明在分段系统中,如何实现信息共享?要求图示说明。 答:对于分段系统,每个段都从 0 开始编址,并采用一段连续的地址空间,这样在实现信息共享与保护时,只需在每个进程的段表中,为所要共享和保护的程序设置一个段表 项,记录共享的段在内存的基址和段长。进程 进程1 editor data 1 1 和进程 2 共享 editor 的示意图如下: 段表 段长 基址 160 80 40 240 editor data 1 80 240 进程2 editor data 2 280 ⋯ data 2 160 80 40 380 380 420 15.何谓虚拟存储器?为什么说请求页式管理可以实现虚拟存储器? 答:虚拟存储器是指仅把作业的一部分装入内存便可运行作业的存储器系统。具体的说, 是指具有请求调入功能和置换功能,能从逻辑上对内存容量进行扩充的一种存储器系统。 请求页式管理是在页式管理的基本上, 仅把作业的一部分页放在主存中。 页表项中注 明对应的页是在主存还是在辅存,程序执行时,当访问的页不在主存时,根据页表项的指引,从辅存将其调入主存,如果这时已无可用的物理空间,则从主存淘汰若干页。对于这 种变化,用户感觉不到,他会以为作业的所有部分都存在于主存,这样可以让更多的作业 进入主存,提高系统的效率。 16.虚拟存储器的基本特征是什么?虚拟存储器的容量主要受到哪两方面的? 答:虚拟存储器的基本特征是: ①离散分配,即不必占用连续的内存空间; ②部分装入,即每个作业不是全部一次性地装入内存,而是只装入一部分; ③多次对换,即所需的全部程序和数据要分成多次调入内存 ④虚拟扩充,即不是物理上而是逻辑上扩充了内存容量; 虚拟存储器的容量主要受到指令中表示地址的字长和外存的容量的。 17.为实现请求分页存储管理, 请求分页系统中的每个页表项应含有哪些内容 ? 并说明每个 数据项的作用。 答:页号: 状态位:指出该页是否已调入内存; 物理块号:若页在内存,指出该页在内存的物理块号; 外存地址:若页在外存,指出该页在外存上的地址,供调入该页时使用 访问字段:用于记录本页在一段时间内被访问的次数, 或最近已有多长时间未被访问, 提供给置换算法选择换出页面时参考; 修改位:表示该页在调入内存后是否被修改过。若为 1,表明修改过,淘汰时必须写 回辅存,否则不需要写回。 18.简述具有快表的页式存储管理系统的地址变换过程。 答: CPU 给出有效地址后,地址变换机构将页号与快表中的所有页号进行比较,若有与此相匹配的页号,则表示所访问的页在快表中,从中读出物理块号与页内地址相拼接,得到物理地址;若访问的页不在快表中,则要访问在内存中的页表,从页表项中读出物理块号与页内地址相拼接,得到物理地址,同时,还应将此页表项写入快表中,若此时快表已满,则 OS 必须找到一个老的且已被认为不再需要的页表项将它换出。 注:具有快表的段式存储管理系统的地址变换过程。 具有快表的段页式存储管理系统的地址变换过程。 具有快表的请求页式存储管理系统的地址变换过程。与上题一样重要,请自己考虑。 19、产生死锁的原因是什么? 答:①竞争非剥夺性资源; ②进程推进顺序不当。 20、简述信号量 S 的物理含义。 答:信号量是对系统中资源及其组织情况的抽象,由一个记录型 (或结构体类型 )数据表示。它包含两个数据项。第一个为 value,表示可用资源数目: S. value> 0 时,表示有 value 个可用资源; S. value= 0 时,表示资源正好用完; S. value< 0 时,表示有 -value 个进程正在等待此类资源。 第二个为 L ,为等待此类资源的进程 PCB 表链。 21、什么叫物理地址?什么叫逻辑地址?什么叫地址映射?地址映射分哪几类? 答:物理地址是内存中各存储单元的编号,即存储单元的真实地址,它是可识别、可寻址并实际存在的。 用户程序经过编译或汇编形成的目标代码,通常采用相对地址形式,其首地址为零,其余指令中的地址都是相对首地址而定。这个相对地址就称为逻辑地址。 为了保证 CPU 执行程序指令时能正确访问存储单元,需要将用户程序中的逻辑地址转换成运行时可由机器直接寻址的物理地址,这一过程称为地址映射或地址重定位。 地址映射可分为两类: 静态地址映射 在程序执行之前进行的重定位, 在程序装入内存时一次性完成指令中地址的修改。 动 态地址映射 装入主存的程序仍然保持原来的逻辑地址, 由逻辑地址到物理地址的转换在程序真正执行时进行。 22、试述段页式存储管理的基本思想 答:段页式存储管理的基本思想是: 用页式方法来分配和管理内存空间,即把内存划分成若干大小相等的页面;用段式方法对用户程序按照其内在的逻辑关系划分成若干段; 再按照划分内存页面的大小,把每一段划分成若干大小相等的页面;用户程序的逻辑地址由三部分组成: 段号、页号、页内地址 内存是以页为基本单位分配给每个用户程序的,在逻辑上相邻的页面内存不一定相邻。 23、在设备管理中,何谓设备性?如何实现设备性? 答:设备性是指用户程序于所使用的具体物理设备,即用户只使用逻辑设备名。为 实现设备性, 系统应为每个用户进程配置一张用于联系逻辑设备名和物理 设备名的映射表,表中一般应包含:逻辑设备名,物理设备名和驱动程序入口地址。二、 考虑有六个协作的任务: S1、S2、 S3、S4、S5、 S6,分别完成各自的工作,它们满足 下列条件: 任务 S1 和 S2 领先于任务 S4,任务 S3 领先于任务 S5,任务 S4 和 S5 领先于任务 S6;请画出六个协作任务合作的前趋图,并用 P、V 操作实现,使得在任何可能的情况下它们均能正确工作。 答:本题是典型的同步问题。 即进程 A 执行完后才可执行进程 B,只需在两进程间设置信号量,当进程 A 执行结束后执行 V 操作,通知进程 B 可以开始,而进程 B 在开始之前先执行 P 操作,直到得到进程 A 的消息。 同步关系如下: begin s14=0;s24=0;s35=0;s46=0;s56=0 Parbegin begin S1 S2 S3 s ;v(s );end; 1 14 S4 S5 begin s2;v(s24);end; 3 35 begin s ;v(s );end; begin p(s14);p(s24); s4;v(s46);end; begin p(s ); s ;v(s );end; S6 35 5 56 begin p(s46);p(s56); s6; end; parend; end 三、程序顺序执行和并发执行分别有哪些特征?程序并发执行的条件是什么?对于下列语 句,哪些能并发执行?哪些不能?说明理由。 S1: a=5-x; 答: S2: b=a*x; S3: c=4*x; S4: d=b+c; S5: e=d+3; 程序顺序执行时的特征是:顺序性、封闭性和可在现性;并发执行的特征是间断性、失 去封闭性和不可再现性。程序能够并发执行的条件是满足 Bernstein 条件,即:若两个程序 p1 和 p2 能满足下述条件,他们便能并发执行,且具有再现性: R(p1)∩ W(p2)∪R(p2)∩ W(p1)∪W(p1) ∩W(p2)={} 其中, R( )和 W( ) 分别表示进程的读集和写集。 对于 S1:a=5-x;S2:b=a*x ;S3:c =4*x;S4:d=b+c;S5:e=d+3,他们的读集和写集分别是: R(S1)={x} ,W(S1)={a} ;R(S2)={a,x} ,W(S2)={b} ;R(S3)={x} ,W(S3)={c} ;R(S4)={b,c} , W(S4)={d} ;R(S5)={d} , W(S5)={e} 。 因为: R(S1)∩ W(S3)∪R(S1)∩W(S3)∪ W(S1)∩ W(S3)={} R(S1)∩ W(S4)∪R(S1)∩W(S4)∪ W(S1)∩ W(S4)={} R(S1)∩ W(S5)∪R(S1)∩W(S5)∪ W(S1)∩ W(S5)={} R(S2)∩ W(S3)∪R(S2)∩W(S3)∪ W(S2)∩ W(S3)={} R(S2)∩ W(S5)∪R(S2)∩W(S5)∪ W(S2)∩ W(S5)={} R(S3)∩ W(S5)∪R(S3)∩W(S5)∪ W(S3)∩ W(S5)={} 所以 S1 和 S3、S1 和 S4、S1 和 S5、S2 和 S3、S2 和 S5、S3 和 S5 均可并发执行。但因 为 R(S2)∩W(S1)={a} ,R(S4)∩W(S2)={b} ,R(S4)∩ W(S3)={c} ,R(S5) ∩W(S4)={d} ,所以 S1 和 S2、S2 和 S4、S3 和 S4、S4 和 S5 均不能并发执行。 四、生产者、消费者问题 读者、写者问题 及课堂上讲的:用 P、V 操作解决同步、互斥关系的例题 五、请求分页的存储管理方式的页面置换算法。 要求:课件上的例一、例二、例三必须会。 六、死锁 七、调度 因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- 69lv.com 版权所有 湘ICP备2023021910号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务