概述
【操作系统】操作系统纠错本
标签(空格分隔):【考研纠错本】
考研操作系统纠错本
文章目录
- 考研操作系统纠错本
- 第一轮
- 1. 操作系统的基本概念
- 2. 操作系统的发展与分类
- 3. 操作系统的运行环境
- 4. 操作系统体系结构
- 5. 进程与线程
- 6. 同步与互斥
- 7. 处理机调度
- 8. 死锁
- 9. 内存管理基础
- 10. 虚拟内存技术
- 11. 文件系统
- 12. 磁盘组织与管理
- 13. I/O管理概述
- 第二轮
- 1. 操作系统概述
- 2. 进程管理
- 3. 内存管理
- 4. 文件管理
- 5. I/O管理
- 第三轮
- 1. 绪论
- 2. 进程管理
- 3. 内存管理
- 4. 文件系统
- 5. 设备管理
- 第四轮
- 第一章 操作系统概述
- 第二章 处理器管理
- 第三章 进程同步、通信和死锁
- 我的微信公众号
第一轮
1. 操作系统的基本概念
-
操作系统最重要的两个目标是()
A.开放性和有效性
B.可扩充性和方便性
C.有效性和方便性
D.方便性和开放性
答案: C C C -
下列哪个观点不是描述操作系统的典型观点______。
A.操作系统是众多软件的集合
B.操作系统是于用户和计算机之间的接口
C.操作系统是资源的管理者
D.操作系统是虚拟机
答案: A A A
A,只是从软件的数量上描述,并没有输出操作系统的真正作用。 -
下列()不是虚拟性在计算机中的应用。
A. 多用户的分时操作系统
B. SPOOLing系统
C. 虚拟存储器
D. 交换与覆盖
答案: D D D
OS的虚拟性指的是通过某种技术把一个物理实体变成若干个逻辑上的对应物。而交换与覆盖是用来解决内存不足问题的。 -
冯・诺依曼型计算机的基本工作方式是( )。
A.控制流驱动方式
B.多指令流多数据流方式
C.微程序控制方式
D.数据流驱动方式
答案: A A A
冯诺依曼计算机的基本工作方式为控制流驱动方式。事先编制程序→ 事先存储程序 → 自动、连续地执行程序。以控制流(指令)驱动程序执行,数据流被动地被调用处理,用 PC 存放当前指令所在存储单元的位置。
2. 操作系统的发展与分类
-
下列选项中不是分时系统基本特征的是()。
A. 同时性
B. 独立性
C. 调度性
D. 交互性
答案: C C C
分时系统的特征有:独立性、同时性、及时性、交互性。 -
在分时系统中,系统响应时间的主要依据是()
A. 用户数目
B. 用户所能接受的等待时间
C. 控制对象所能接受的时延
D. 计算机运行速度
答案: B B B
3. 操作系统的运行环境
-
当中断发生后,进入终端处理的程序属于( )。
A.用户程序
B.可能是用户程序,也可能是操作系统程序
C.操作系统程序
D. 既不是应用程序,也不是操作系统程序
答案: C C C
中断处理程序只能是操作系统程序。
中断处理处于系统中会对系统产生重大影响的动作,因此只允许在核心态程序 执行 。而应用程序通常指用户程序,在用户态下不能进行这些操作。 -
中断处理和子程序调用都需要压栈以保护现场,中断处理一定会保存而子程序调用不需要保存其内容的是()
A.程序计数器
B.程序状态字寄存器
C.通用数据寄存器
D.通用地址寄存器
答案: B B B
4. 操作系统体系结构
- 有A、B两人通过信箱进行辩论,每人都从自己的信箱中取得对方的问题。将答案和向对方提出的新问题组成一个邮件放入对方的邮箱中,设A的信箱最多放M个邮件,B的信箱最多放 N个邮件。初始时A的信箱中有x个邮件(0< x < M). B 中有y个(0 < y < N)。辩论者每取出一个邮件,邮件数减1.
A、B两人操作过程:
Code Begin
A{
While(TRUE){
从A的信箱中取出一个邮件;
回答问题并提出一个新问题;
将新邮件放入B的信箱;
}
}
B{
While(TRUE){
从B的信箱中取出一个邮件;
回答问题并提出一个新问题;
将新邮件放入A的信箱;
}
}
Code End
当信箱不为空时,辩论者才能从信箱中取邮件,否则等待。
当信箱不满时,辩论者才能将新邮件放入信箱,否则等待。
请添加必要的信号量和P、V(或wait, signed)操作,以实现上述过程的同步,要求写出完整过程,并说明信号量的含义和初值。
答案:
Semaphore mutexA=1;
Semaphore mutexB=1;
Semaphore emptyA=M;
Semaphore emptyB=N;
Semaphore fullA=0;
Semaphore fullB=0;
Code Begin
A{
While(TRUE){
P(fullA);
P(mutexA)
Get a mail from A_mailbox;
V(mutexA);
V(fullA);
Answer the question and raise a question;
P(emptyB);
P(mutexB)
send the mail to B;
V(mutexB);
V(emptyB);
}
}
B{
While(TRUE){
P(fullB);
P(mutexB)
Get a mail from B_mailbox;
V(mutexB);
V(fullB);
Answer the question and raise a question;
P(emptyA);
P(mutexA)
send the mail to A;
V(mutexA);
V(emptyA);
}
}
Code End
【考查知识点】 考察了利用信号量进程同步问题。
5. 进程与线程
-
在进程的生命周期内,进程与其执行的程序个数之间是()关系。
A.一对一
B.一对多
C.多对一
D.多对多
答案: D D D
可能存在一个进程执行一个程序的情况;可能出现一个进程执行多个程序的情况;可能出现一个程序被多个进程执行的情况。因此答案为 D. -
以下______不会引起进程创建。
A. 用户登录
B. 作业调度
C. 设备分配
D. 进程请求
答案: C C C
在分时系统中,导致进程创建的典型事件是 用户登录;
在批处理系统中,导致进程创建的典型事件是 作业调度;
设备分配的原因是作业请求,可能会导致进程的状态改变,而不会导致进程创建。 -
进程从运行状态转变到阻塞状态可能是由于( )。
A.进程调度程序的调度
B.现运行进程的时间片用完
C.现运行进程执行了P操作
D.现运行进程执行了V操作
答案: C C C
A、C,进程调度程序的调度 和 时间片用完 会使运行状态转为就绪状态;D,V操作不一定会引起处于运行状态中的进程变换状态。 -
一个进程被唤醒,意味着( )。
A.该进程重新占有了CPU
B.进程状态变为就绪
C.它的优先权变为最大
D.其PCB移至就绪队列的队首
答案: B B B -
进程自身决定( )。
A.从运行状态到阻塞状态
B.从运行状态到就绪状态
C.从就绪状态到运行状态
D.从阻塞状态到就绪状态
答案: A A A
只有执行态到阻塞态之间的转化是由进程本身决定的。当进程需要等待某个事件,自身调用阻塞原语,将自己阻塞并插入到阻塞队列,这是进程本身能够能够决定的。
从运行态到就绪态的转换是由于时间片用完,"主动"调用程序转向就绪态。
就绪态到运行态的转换同样是调度程序决定的,但进程是“被动的”。
从阻塞态到就绪态的转换时协作进程决定的。 -
某一系统中,测得某处理器的利用率为1%,I/O的利用率为1%,就绪队列中有两个进程,阻塞队列中有31个进程,此时系统出现异常,则表明系统中有进程______。
A.空闲
B.饥饿
C.死锁
D.抖动
答案: C C C
依据 CPU 和 I/O 利用率,可以判断进程的状态:
CPU利用率高,I/O利用率低:系统正常。
CPU利用率低,I/O利用率高:可能发生抖动,也可能系统正在处理较多I/O请求。
CPU利用率高,I/O利用率高:系统利用率高,吞吐率大,是比较完美的状态。
CPU利用率低,I/O利用率低:系统空闲,或者产生死锁,依据题目中阻塞进程数目进行判断。 -
下列关于管道(Pipe)通信的叙述中,正确的是()
A. 一个管道可以实现双向数据传输
B. 管道的容量仅受磁盘容量大小限制
C. 进程对管道进行读操作和写操作都可能被阻塞
D. 一个管道只能有一个读进程或一个写进程对其操作
答案: C C C
管道是用于连接读进程和写进程以实现它们之间互相通信的共享文件,因此当进程对管道进行申请的时候,都有可能因为其他进程占用管道,而被阻塞。C 正确。
A,管道是单项的,先进先出的。
B,管道是由内核管理的一个缓冲区,其容量受多方面因素影响,包括缓冲区的大小、磁盘容量大小等问题。
D,读进程和写进程可以同时对其操作。 -
对进程的管理和控制使用( )。
A.指令
B.原语
C.信号量
D.信箱
答案: B B B
因为进程的管理和控制包括进程创建、调度、终止等,这些操作均不可中断,因此这些操作都是原语。 -
一个可共享的程序在执行过程中是不能被修改的,这样的程序代码应该是_____。
A. 可再现代码
B. 封闭的代码
C. 可重入代码
D. 可执行代码
答案: C C C
可重入代码 又称为 纯代码,是一种允许多个进程同时访问的代码。为了使各进程所执行的代码完全相同,因此不允许任何进程对其进行修改。程序在运行过程中可以被打断,并且在合理的范围内(多次重入而不造成堆栈溢出等其他问题),程序可以在被打断处继续执行,并且执行结果不受其他影响。 -
以下描述中,( ) 并不是多线程系统的特长。
A.利用线程并行地执行矩阵乘法运算
B.web服务器利用线程响应HTTP请求
C.键盘驱动程序为每一个正在运行的应用配备一个线程,用来响应该应用的键盘输入
D.基于GUI的调试程序用不同的线程分别处理用户输入、计算、跟踪等操作
答案: C C C
在一个计算机系统中只有一个键盘,而人使用键盘的速度对于计算机而言十分缓慢,完全可以使用一个线程来处理所有键盘输入。 -
在多对一的线程模型中,当一个多线程进程中的某个线程被阻塞后()。
A.该进程的其他线程仍可继续运行
B.整个进程都将阻塞
C.该阻塞线程将被撤销
D.会调度进程中某个其他线程继续执行
答案: B B B
在多对一的线程模型中,多个用户级线程对应一个内核级线程。采用该模型的系统中,线程在用户空间进行管理,效率相对较高。
用户级线程的"多"对于操作系统透明,即操作系统不知道用户有多少线程。因此该进程的一个线程被阻塞之后,该进程便被阻塞。 -
系统动态DLL库中的系统线程,被不同的进程所调用,它们是()的线程。
A.不同
B.相同
C.同步
D.互斥
答案: B B B
系统线程也便是内核级线程。在多线程模型中,可以对应一个或者多个用户级线程。在本题中,多个进程调用这个内核级进程,说明是多个用户级线程。多个用户级线程对应到内核级线程时,都调用了一个同一个线程。
进程是暂时的,程序是永久的;进程是动态的,程序是静态的;进程至少由代码、数据和PCB组成,程序仅需要代码和数据;程序代码经过多次创建可对应 不同 进程,而同一个进程(或线程)可由系统调用的方法,被不同
的进程(或线程)多次使用。
6. 同步与互斥
-
在多进程的系统中,为了保证公共变量的完整性,各进程应互斥地进入临界区。所谓临界区是指()
A.一个缓冲区
B.一段数据区
C.同步机制
D.一段程序
答案: D D D -
用 P、V操作可以解决一切互斥同步问题。
-
下列关于PV操作描述正确的是()
A. PV操作是原语,原语是一串可以断续执行的指令序列。
B. 执行P 操作或 V 操作之后,一定会引起进程阻塞或进程唤醒。
C. PV 操作是现代操作系统常用的进程同步手段。
D. 执行 V操作之后,被唤醒的进程变为就绪状态。
答案: D D D
C, PV 操作是低级进程通信机制,效率很低,现代操作系统往往不采用这种方法来实现进程同步。 -
()定义了共享数据结构和各种进程在该数据结构上的全部操作。
A.管程
B.类程
C.线程
D.程序
答案: A A A
一个管程定义了一个数据结构和能为并发过程所执行的一组操作,这组操作能同步和改变进程的数据。
注意:管程中的V操作的作用和信号量机制中V操作的作用不同,前者必须出现在 P 操作之后,后者没有这个要求。 -
高级通信机制和低级通信机制P、V原语操作的主要区别:高级通信机制是由系统提供发送(Send)与接受(Receive)两个操作,进程之间通过这两个操作进行通信,无需共享任何变量;而 PV操作指的是进程之间通过共享变量实现信息传递。
7. 处理机调度
-
操作系统中的()管理部分负责对作业和进程进行调度。
A.处理机
B.存储
C.文件
D.设备
答案: A A A -
()进程调度算法综合考虑到了CPU密集型进程和I/O密集型进程。
A.时间轮转
B.优先级
C.多级反馈队列调度算法
D.FCFS
答案: C C C
补充:
- 短作业优先能够提高系统的吞吐量;
- FCFS 有利于计算型作业。
- 优先级调度算法中 I/O型作业 优于 计算型作业。
-
关于剥夺式系统下列哪种说法是正确的______。
A.系统采用轮转调度进程,则系统采用的是剥夺式调度
B.若现行进程要等待某一事件来引起调度,则该系统是剥夺式调度
C.实时系统通常采用剥夺式调度
D.在剥夺式系统中,进程的周转时间较之非剥夺式系统是可预见的
答案: A A A
A,时间片轮转调度算法是一种剥夺式的算法,当时间片用完,即时当前进程没有执行完,系统也会剥夺当前进程的处理机给下一个进程,因此 A正确。
C,实时系统是否采用剥夺是不确定的,例如在订票系统中,如果采用剥夺策略,很有可能导致用户购票失败。 -
进程调度算法中,可以设计成“可抢占式”的算法有______。
A.先来先服务调度算法
B.最高响应比优先
C.最短作业优先
D.时间片轮转调度算法
答案: D D D
常用的进程调度算法有:先来先服务,优先数,时间片轮转调度 以及 多级反馈队列等算法。先来先服务是非抢占式算法,优先数调度可以是抢占式也可以是非抢占式;时间片轮转调度算法是抢占式算法。
但是,最短作业有限算法、最高响应比优先算法 适合作业调度,而不适合进程调度。 -
若某单处理器多进程系统中有多个就绪态进程,则下列关于处理机调度的叙述中,错误的是()
A.在进程结束时能进行处理机调度
B.创建新进程后能进行处理机调度
C.在进程处于临界区时不能进行处理机调度
D.在系统调用完成并返回用户态时能进行处理机调度
答案: C C C
B,创建新进程后,意味着有新进程插入到就绪队列中等待执行,如果这个新进程比较紧急,那么剥夺式算法会使得处理机来运行这个新进程。
C,进程在临界区时时不允许其他相关进程进入临界区,因为该进程正在访问临界资源,其他进程无法访问。但是问题的关键在于,系统中是否还存在着与这类进程无关的其他进程,这类无关进程的执行不受该进程是否处于临界区的影响。例如,打印机。
8. 死锁
-
计算机系统产生死锁的根本原因是()。
A. 资源有限
B. 进程推进顺序非法
C. 系统中进程太多
D. 资源有限和进程推进顺序非法
答案: D D D -
死锁的避免是根据()采取措施实现的。
A.配置足够的系统资源
B.使进程的推进顺序合理
C.防止死锁的四个必要条件之一
D.防止系统进入不安全状态
答案: D D D
死锁预防是预先破坏死锁发生的条件,使之不进入死锁状态。
死锁避免是把系统的状态分为安全状态和不安全状态,只要避免系统进入不安全状态,就可以避免发生死锁。 -
通常不采用( )方法来解除死锁。
A.终止一个死锁进程
B.终止所有死锁进程
C.从死锁进程处抢夺资源
D.从非死锁进程处抢夺资源
答案: D D D
死锁解除方法:1. 资源剥夺法。挂起某些死锁进程,并抢占它们的资源,将这些资源分配给其他的死锁进程。2. 撤销进程发,强制撤销部分、甚至全部死锁进程并剥夺这些进程的资源。3. 进程回退法。让一个或者多个进程回退到足够避免死锁的地步,回退时自愿释放资源而不是被剥夺。这要求系统保证进程的历史信息,设置还原点。 -
当 n ( x − 1 ) + 1 ≤ m n(x-1) + 1 le m n(x−1)+1≤m 时,系统不会发生死锁。其中 n是进程数量,x是进程申请的资源数,m是总的资源数。
-
设系统中有下述解决死锁的办法:
(1) 银行家算法。
(2) 检测死锁,终止处于死锁状态的进程,释放该进程所占有的资源。
(3) 资源预分配。
请问哪种办法允许最大的并发性,即哪种办法允许更多的进程无等待地向前推进请按“并发性”从大到小对上述三种办法进行排序。
答案:三种办法中,检查死锁 允许更多的进程无等待地向前推进,因为该方法允许出现死锁(即允许进程最大限度地申请并分配资源,直到死锁出现,再由系统解决)。
其次是 银行家算法,该方法允许进程自由的申请资源,只是某个进程申请资源的时候需要由系统检查是否处于安全状态。
最后是 资源预分配,因为这个方法要求进程在运行之前申请所需要地全部资源,这样会导致许多进程因为申请不到资源而无法开始,得到资源的进程也并不是同时需要所占的全部资源,这样会导致资源的浪费。
9. 内存管理基础
- 动态重定位是在作业( )中进行的。
A.编译过程
B.装入过程
C.链接过程
D.执行过程
答案: D D D
- 静态重定位在 程序装入内存的过程中完成,是指程序开始运行之前,程序中的各个地址有关的项 均已完成重定位。地址变换通常是在装入时一次完成的(如果没有足够的内存,那么就不装入该作业),以后不在改变。故称为静态重定位。
- 动态重定位 不是 在程序装入内存时完成的,而是CPU 每次访问内存时由动态地址变换机构(硬件)自动把相对地址转换为绝对地址。动态重定位需要软件和硬件相互配合完成。
- 绝对装入,只是适用于单道程序环境。程序中所使用的绝对地址,可以在编译或者汇编时,直接由程序员赋予。
-
静态重定位和动态重定位分别是由______来完成的。 Ⅰ.硬件地址变换机构 Ⅱ.重定位装配程序
A. 都是Ⅰ
B. Ⅰ、Ⅱ
C. Ⅱ、Ⅰ
D. 都是Ⅱ
答案: C C C -
下列关于存储器管理功能的论述中, ( )和( )是正确的。
Ⅰ.即使在多道程序设计的环境下,用户也能设计用物理地址直接访问内存的程序;
Ⅱ.内存分配最基本的任务是为每道程序分配内存空间,其所追求的主要目标是提高存储空间的利用率;
Ⅲ.为了提高内存保护的灵活性,内存保护通常由软件实现; Ⅳ.交换技术已不是现代操作系统中常用的技术;
Ⅴ.地址映射是指将程序空间中的逻辑地址变为内存空间的物理地址;
Ⅵ.虚拟存储器是物理上扩充内存容量。
正确答案: Ⅱ;Ⅴ
I,内存是存储器管理的主要对象,在多道程序环境下,用户无法预估出内存使用的情况,无法通过物理地址直接访问。
Ⅲ,内存保护通常指保护用户在内存中的数据,保护系统中各个进程不相互干扰,实现进程与进程、用户空间与内核空间的隔离,以及必要的访问控制。内存保护的实现需要硬件和软件协作完成。软件指的是操作系统的内存管理子系统,其中所有进程都有互相完全分离的虚拟地址空间,从而运行一个应用程序的进程不影响其他进程。硬件是指处理器的虚拟内存管理子系统,它支持操作系统的内存管理子系统完成地址变换和内存访问控制。 -
现代操作系统中,提高内存利用率的功能是______。使每道程序能在不受干扰的环境下运行的功能是______。
Ⅰ.交换(对换) Ⅱ.内存保护 Ⅲ.地址映射
A.Ⅰ、Ⅱ
B.Ⅰ、Ⅲ
C.Ⅲ、Ⅱ
D.Ⅲ、Ⅲ
答案: A A A -
某计算机系统中内存保护采用基址、限长寄存器的方法来实现,那么,判断是否越界的判别式是()。
A.0≤被访问的逻辑地址<限长寄存器的内容
B.0≤被访问的逻辑地址≤限长寄存器的内容
C.O≤被访问的物理地址<限长寄存器的内容
D.0≤被访问的物理地址≤限长寄存器的内容
答案: A A A
逻辑地址的大小不能超过分配空间的大小(即限长寄存器中的内容)。假设分配的空间大小为 N,那么逻辑地址范围为[0, N-1];
另外,物理地址的越界判别式:
0 + 基 址 ≤ 被 访 问 的 物 理 地 址 ( 被 访 问 的 逻 辑 地 址 + 基 址 ) < 限 长 寄 存 器 的 内 容 + 基 址 0+基址 le 被访问的物理地址(被访问的逻辑地址 + 基址) < 限长寄存器的内容 + 基址 0+基址≤被访问的物理地址(被访问的逻辑地址+基址)<限长寄存器的内容+基址 -
交换扩充了主存,因此交换也实现了虚拟存储器,正确吗?
答案:题目中的说法是错误的。交换又称为对换,它把系统中暂时无法运行的进程或暂时不适用的程序和数据调出到外存上,腾出内存空间给已经具备运行条件的进程或者进程所需的程序或数据,以提高内存的利用率,所以交换技术是调高内存利用率的技术。
而虚拟存储器不仅能提高内存利用率,而且使得作业的一部分装入到内存中就可以开始运行,另外,虚拟存储器技术实现了从逻辑地址到物理地址的转化,从逻辑上对内存容量进行了扩充。例如,利用虚拟存储技术,一个体积比内存大的作业可以运行,而在只有交换技术的系统上是不能运行的。
因此,交换并不能实现虚拟存储技术。 -
覆盖是以进程的互不相关的局部为单位进行交换得。(覆盖技术早已经不再使用)
对换是以进程为基本单位的交换。(并非每次都要将整个进程换出)(交换技术依旧存在生命力) -
下列叙述中,错误的是______。
A. 覆盖对程序员是透明的
B. 交换对程序员是透明的
C. 在分页系统环境下,分页对程序员是透明的
D. 联想寄存器的地址变换对操作系统是透明的
答案: A A A
A,覆盖技术对程序员是不透明的,为了节省内存,提高覆盖的效果,用户在编址程序时就要安排好程序的覆盖结构,覆盖的目的是为了运行更达的程序。
同为节省内存,覆盖技术应用于一个作业的内部,交换技术用于不同的作用。B,因此,交换技术对程序员是透明的,交换的目的是希望能运行更多的程序。C,分页的实现是由操作系统自动变换的,因此分页对程序员是透明的。D,联想存储器(快表)的地址变换是由硬件实施的,不需要通过操作系统软件施行。但是在施行快表的淘汰算法时,需要通过操作系统施行。 -
在操作系统的存储管理中,用时间换取空间的一种技术是( )。
A.缓冲技术
B.分时技术
C.虚拟技术
D.中断技术
答案: C C C
虚拟存储技术的原理由局部性原理产生。
时间换空间:虚拟存储技术,覆盖与交换技术等。
空间换时间:缓冲技术,SPOOLing技术 等。 -
对外存对换区的管理应以______为主要目标。
A. 提高系统吞吐量
B. 提高存储空间的利用率
C. 降低存储费用
D. 提高换入、换出速度
答案: D D D
覆盖与交换技术付出的代价是需要消耗更多处理机时间,它们实际上是一种以时间换空间的技术。 -
下列()存储管理方式能使存储碎片尽可能少,而且使内存利用率较高。
A. 固定分区
B. 可变分区
C. 分页管理
D. 段页式管理
答案: C C C -
分页管理 和 固定分区、可变分区相比,碎片明显减少,因为分页管理的碎片大小能够控制在一个页面之内,而页面大小通常比较小。而且分页管理没有外部碎片,内存利用率高。
-
分段管理会发生找不到连续的空间区放入争端,相对内存利用率不高。但是分段式管理不会产生内部碎片。同时有利于程序的动态链接。
-
段页式和页式碎片的比较:段页式虽然结合了页式和段式的优点,但是碎片数量却比页式多,因为一个进程往往会由很多个段,在段页式管理下每一个段都会有一个页内碎片存在;而在页式管理下,一个进程只有一个页式碎片。
-
在请求页式存储管理中,页面的大小与可能产生的缺页中断次数______。
A. 成正相关
B. 成反相关
C. 无关
D. 成固定比例
答案: B B B
页面越大,找到数据的机会越大,产生缺页中断的可能性越低。 -
释放和合并空闲内存页时,采用下列______方式速度最快。
A. 空闲页位图
B. 空闲页栈
C. 空闲页链表
D. 空闲表
答案: A A A
在位图上很容易判断 释放页 的上邻和下邻是否空闲,因此合并空闲内存页只需要数步即可。
栈和链表需要遍历才能找到释放页的上邻页和下邻页。
空闲表也需要遍历一遍表才能找到释放页的上邻页和下邻页。 -
在分页式虚存中,分页由_____实现。
A. 操作系统
B. 系统调用
C. 程序员
D. 编译器
答案: A A A
分页由操作系统自动实现,对用户透明。 -
采用可重入程序是通过( )方法来改善系统性能的。
A.改变时间片长度
B.改变用户数
C.提高对换速度
D.减少对换数量
答案: D D D
可重入程序是指该程序被某进程调用,但还未结束,又被另一个进程调用。
可重入程序主要是通过共享来使用同一块存储空间的,或者通过动态链接的方式将所需要的程序段映射到相关进程中,最大的优点就是减少了对程序段的调入调出,因此减少了对换数量。 -
操作系统中为实现多道程序并发,对内存管理可以有多种方式,其中代价最小的是()。
A.分区管理
B.分页管理
C.分段管理
D.段页式管理
答案: A A A
注:其中内存利用率最高的是 分页管理。(每个进程只在最后一页有50%概率的浪费,页面大小比分区大小要小得多,因此,被浪费的内存数量最少,从而内存的利用率最高。当然,分页需要额外增加页表,分段需要增加段表,会增加系统开销,但是对内存的利用率来讲却是最高的。)
分区存储是实现多道程序并发的简单易行而代价最小的方法。分页、分段、段页式 需要特殊的硬件支持,代价较高。
-
- 内部碎片:已经被进程分去但是无法利用的内存空间。
- 外部碎片:未被进程分配但是由于太小而无法分配给申请内存空间的新进程的内存空闲区域。
-
- 固定式分区管理,产生内部碎片。
- 可变式分区管理会产生外部碎片,因为分区大小不固定,不可能给一个进程多余的空闲区域,但由于是连续分配,因此会产生外部碎片。
- 页式虚拟存储系统,会产生内部碎片。
- 段式虚拟存储管理会产生外部碎片。
-
在页式存储管理系统中选择页面的大小,需要考虑的因素是( )。
Ⅰ页面大的好处是页表较小
Ⅱ页面小的好处是可以减少由内碎片引起的内存浪费
Ⅲ通常,影响磁盘访问时间的主要因素不在于页面的大小,所以使用时可优先考虑较大的页面
A.Ⅰ和Ⅲ
B.Ⅱ和Ⅲ
C.Ⅰ和Ⅱ
D.Ⅰ和Ⅱ和Ⅲ
答案: C C C
页面大小与磁盘调度的关系不大,磁盘调度与扇区有关。故正确答案为C。 -
操作系统采用分页存储管理方式,要求( )
A.每个进程拥有一张页表,且进程的页表驻留在内存中
B.每个进程拥有一张页表,但只有执行进程的页表驻留在内存中
C.所有进程共享一张页表,以节约有限的内存空间,但页表必须驻留在内存中
D.所有进程共享一张页表,只有页表中当前使用的页面必须驻留在内存中,以最大限度地节省有限的内存空间。
答案: A A A -
已知某系统页面长为4KB,页表项4B,采用多级分页策略映射64位虚拟地址空间。若限定最高层页表占用1页,则可以采用几层分页策略?
答案: 6 6 6
由于页长为 4KB(即212B),页内偏移量占 12位。由每一页页表项占 4B 可知,每页可有表项 1024个。最高层页表的页号占10位。由于最高层页表占用1页,也即该页最多存放页表项 1024个,每项指向一页,每页头存放页表项的个数为1024个,逐次类推,分页层数最多为 (64-12)/10 向上取整 为 6.
- 段页式分配中,CPU 每次从内存中取一次数据需要访问内存的次数为 3 次。
(先从内存查找段表(一次),再从内存查找对应的页表(一次),最后拼成物理地址后访问内存(一次)) - 页式管理中,数据访问内存时,如果不使用快表,则需要访问 两次 主存,先从内存页表读出页内对应的块号,然后再根据形成的物理地址取去存取内存;使用快表时,若能从快表中直接找到对应的页表项,则只需要访问一次内存,否则,仍然需要访问两次内存。
- d
10. 虚拟内存技术
-
设主存容量为1MB,外存容量为400MB,计算机系统的地址寄存器有24位,那么虚拟存储器的最大容量是( )。
A.1MB
B.401MB
C.17MB
D.16MB
答案: D D D
当外存容量足够大时,虚拟存储器只跟 地址结构的位数 有关。
当外存容量不足时,外存容量也成为限制。即虚拟存储空间等于内存加上外存容量之和。 -
虚拟存储器的最大容量( )
A.为内外存容量之和
B.由计算机的地址结构决定
C.是任意的
D.由作业的地址空间决定
答案: B B B
虚拟存储器的最大容量取决于计算机的地质结构,并不是任意的。 -
总体上说,“按需调页”(demand-paging)是个很好的虚拟内存管理策略。但是,有些程序设计技术并不适合于这种环境。例如,()。
A.堆栈
B.线性搜索
C.矢量运算
D.二分法搜索
答案: D D D
因为二分法搜索地址是不连续的、跳跃的,不在同一页面,需要不断地调页。 -
下列关于虚拟存储的叙述中,正确的是()
A.虚拟存储只能基于连续分配技术
B.虚拟存储只能基于非连续分配技术
C.虚拟存储容量只受外存容量的限制
D.虚拟存储容量只受内存容量的限制
答案: B B B -
已知某系统页面长为4KB,页表项为4B,采用多层分页策略映射64位虚拟地址空间。若限定最高层页表占1页,问它可以采用分页策略的层数为______。
A. 5
B. 6
C. 7
D. 8
答案: B B B
页面长度为 4KB,即页内偏移为 12 位。
每一页最多有页表项 1024 个。而最高层页表占 1 页,即该页存放页表项醉倒1024个。每一项指向一页,每一页又存放1024个页表项,一次推类。最多 $frac{64-12}{10} = 5.2 $,因此为 6 层。 -
请求分页存储管理的主要特点是( )。
A.消除了页内零头
B.扩充了内存
C.便于动态链接
D.便于信息共享
答案: B B B
请求分页存储管理 是为了解决内存容量不足而使用的方法,基于局部性原理实现了以时间换空间的目的。 -
在分页式内存管理系统中可能出现的问题是______。
A.颠簸(抖动)
B.不能共享
C.外部碎片
D.动态链接
答案: A A A -
在请求分页存储管理的页表中增加了若干项信息,其中修改位和访问位供()参考。
A.分配页面
B.调入页面
C.置换算法
D.程序访问
答案: C C C名称 功能 访问位 记录该页被访问的情况,供选择换出参考 修改位 表示该页在调入内存后是否被修改过,供置换页面参考 状态位 只是该页是否已经调入内存,供程序访问时参考 外存地址 用于该页在外存上的地址,通常是物理块号,供调入该页参考 -
Belady现象:分页式虚拟存储器中,发生缺页时的置换算法采用FIFO算法时,如果对一个进程未分配它所要求的界面,有时候会出现随着分配的页面数增多但是缺页率反而提高的异常现象。
-
用软件方式实现LRU算法的开销大的主要原因是______。
A. 需要硬件的特殊支持
B. 需要特殊的中断处理程序
C. 需要在页表中标明特殊的页类型
D. 需要对所有的页进行排序
答案: D D D -
在请求分页系统中,()没有优先考虑最近使用过的页面。
A. 最佳置换算法
B. 最近最久未使用算法
C. 先进先出算法
D. 时钟置换算法
答案: A A A
最佳置换算法是“向后看”的思想。 -
假定一个分页虚拟存储系统的虚拟地址为40位,物理地址为36位,页大小为16KB,按字节编址。若页表中有有效位、存储保护位、修改位、使用位共占4位,磁盘地址不在页表中,则该存储系统中每个进程的页表大小为______。
A. 1MB
B. 16MB
C. 256MB
D. 1G
答案: C C C
页表大小 = 页表项大小 * 页数
该虚拟存储系统最大寻址空间为 2 40 2^{40} 240,因为按字节寻址,因此总容量为 2 40 B 2^{40}B 240B。
页大小为 16KB,所以虚拟页数为 2 40 2 14 = 2 26 frac{2^{40}}{2^{14}} = 2^{26} 214240=226页。
又 物理页面和虚拟页面大小相等,所以物理页面为 2 36 2 14 = 2 262 frac{2^{36}}{2^{14}} = 2^{262} 214236=2262页。即物理页号为22位。
每个页表项包含有效位、存储保存位、修改位、使用位,共4位,所以其位数为 22+4 = 26位。
又因为最小寻址单元为1B,为了简化对页表项的访问,每个页表项取32位,即 4B.
则页表大小 = 4B * 2^26 页 = 256MB. -
在缺页处理过程中,操作系统执行的操作可能是( )。
Ⅰ.修改页表 Ⅱ.磁盘I/O Ⅲ.分配页框
A.仅Ⅰ、Ⅱ
B.仅Ⅱ
C.仅Ⅲ
D.Ⅰ、Ⅱ和Ⅲ
答案: D D D
调用页面的流程:存在快表的系统中,首先查找快表,如果快表命中,则直接产生物理地址并访问;如果没有命中,则查询页表,页表中存在对用的页,则生成物理地址并访问;如果页表中不存在,则说明尚未调入内存,产生缺页中断。
缺页中断:发现所缺的页面不在内存中(并不存在于页表中,也没有对应的页框号),产生磁盘I/O,将页面从外存调入内存,并为这个页面分配一个空闲页框,修改页表相关信息。 -
算法名称 思想 NRU(CLOCK) 从最近一个时期内未被访问过的页中任选一位淘汰
|FIFO|淘汰最先进入内存的页|
|LRU|最近最久没被使用的页|
|第二次机会算法|淘汰一个自上一次对它检查以来没有被访问过的页|
-
下列哪些存储分配方案可能使系统抖动()。
I.动态分区分配 Ⅱ.简单页式 Ⅲ.虚拟页式 Ⅳ.简单段页式 V.简单段式 Ⅵ.虚拟段式
A.I和I
B.Ⅲ和Ⅳ
C.V和Ⅵ
D.Ⅲ和Ⅵ
答案: D D D -
产生内存抖动主要原因是( )。
A.内存空间太小
B.CPU运行速度太慢
C.CPU调度算法不合理
D.页面置换算法不合理
答案: D D D -
考虑一个分页式存储管理系统,其页表常驻内存。Ⅰ. 如果内存访问耗时200ns,那么访问内存中的数据需要多长时间? Ⅱ.如果引入关联寄存器(Associative Registers),而且75%的页面可以从关联寄存器中找到,那么此时的有效访问时间(Effective Memory Rearence Time)为多少______?假设访问关联寄存器的时间可以忽略。注:有效访问时间即为平均访问时间。
A.200ns,150ns
B.400ns,150ns
C.400ns,250ns
D.600ns,250ns
答案: C C C
Ⅰ,400ns,其中200ns访问页表,200ns访问内存中的数据。
Ⅱ,有效访问时间 = 0.75 * 200ns + 0.25 * 400ns = 250ns.
因为引入关联寄存器之后,直接从关联寄存器访问页面,只需要访问一次内存。 -
下面哪种内存管理方法有利于程序的动态链接?()
A. 分段存储管理
B. 分页存储管理
C. 可变分区分配
D. 固定分区分配
答案: A A A
动态链接是指作业运行之前,并不把几个目标程序段链接起来。而是在运行时,先将主程序所对应的目标程序装入内存并启动运行,当运行过程中又需要调用某段程序时,才将该段(目标程序)调入内存并链接,可见,动态链接也要求以 段 作为管理单位。 -
以下存储管理方式中,会产生内部碎片的是()。
I.分段虚拟存储管理 II.分页虚拟存储管理
III.段页式分区管理 IV.固定式分区管理
A.I、II、III
B.III、Ⅳ
C.只有II
D.II、III、Ⅳ
答案: D D D
11. 文件系统
-
下列哪一个文件和其它三种文件在逻辑结构上根本不 ( )。
A.库函数文件
B.数据库文件
C.可执行程序文件
D.源程序文件
答案: B B B
文件的逻辑结构分为两种:1. 可以按照记录进行划分的有结构文件(记录式文件)。有结构文件又分为登场记录文件和不等长记录文件;2. 不可以按照记录划分的无结构文件(流式文件)。无结构文件以 字节 为单位。只能以穷举搜索的方式访问。
库函数文件、可执行程序文件、源程序文件 都是不等长的结构文件,它们的每一条记录都是一条指令,指令是不等长的;
而数据库文件大多数是等长的文件。 -
在下列物理结构中,不利于文件长度动态增长的文件物理结构是( )。
A.Hash结构
B.索引结构
C.链接结构
D.连续结构
答案: D D D
连续的存储空间实现必须知道文件的大小,然后依据其大小在存储空间找出一块文件大小足够的存储区。
文件动态增长会使得文件所占空间越来越大,当采用连续分配方式时,由于需要大量移动盘块,效率很低。 -
对记录式文件,操作系统为用户存取文件信息的最小单位是()
A. 字符
B. 数据项
C. 记录
D. 文件
答案: C C C
记录式文件是由若干个 记录 组成的。记录式文件主要用于信息管理。
记录是由多个字节组成的具有特定意义的信息单位,同时页式操作系统为用户存取文件信息的最小单位。
B,数据项是数据结构中讨论的最小单位,是数据记录的最基本的、不可再分的数据单位,是具有独立含义的最小标识符。单个数据项对用户无意义。数据项实在文件系统中可命名的最小单位。 -
在文件系统中,文件的不同物理结构有不同的优缺点。在下列文件的物理结构中()结构不具有直接读写文件任意一个记录的能力。
A.顺序结构
B.链接结构
C.索引结构
D.Hash结构
答案: B B B结构 说明 连续分配(顺序文件) 具有随机存取功能,但不便于文件的动态增长。 连接分配 便于文件的动态增长,但不具有随机存取功能。 索引分配 既具有随机存取功能,又便于文件的动态增长 散列文件 依据给定的键值,直接获得指定记录的物理地址,因此有随机存取能力,且无须进行检索。 -
在文件的逻辑系统中,不属于有结构文件的是()。
A.索引文件
B.分区文件
C.链接文件
D.索引顺序文件
答案: B B B
记录式文件(有结构文件),按照记录的组织形式分为顺序文件、索引文件、索引顺序文件、直接文件(散列文件)。 -
文件目录项中不包含的是______。
A. 文件名
B. 文件访问权限说明
C. 文件控制块的物理位置
D. 文件所在的物理位置
答案: C C C -
操作系统是通过()来对文件进行编排、增删、维护和检索。
A.按名存取
B.数据逻辑地址
C.数据物理地址
D.文件属性
答案: A A A
操作系统通过目录结构进行文件管理,目录最基本的功能就是通过文件名存储文件。 -
对于一个文件的访问,常由( )共同限制。
A.用户访问权限和文件属性
B.用户访问权限和用户优先级
C.优先级和文件属性
D.文件属性和口令
答案: A A A
文件属性决定了文件的访问控制;
用户访问权限决定了用户对文件的访问控制权限。 -
文件的保密是指防止文件被()
A. 篡改
B. 破坏
C. 窃取
D. 删除
答案: C C C
A、B、D 均是 文件保护 的目标。 -
下列关于索引表的叙述中,()是正确的。
A.索引表中每个记录的索引项可以有多个
B.对索引文件存取时,必须先查找索引表
C.索引表中含有索引文件的数据及其物理地址
D.建立索引的目的之一是为了减少存储空间
答案: B B B
A,索引表的每个记录的索引项只能有一个;
C,对主文件的每一个记录,在索引表中都有一个相对应的表项,用于记录该记录的长度以及该记录的指针(指向该记录在逻辑地址空间的首地址);
D,使用索引表会增加了空间的开销。 -
适合随机存储的分配:连续分配 > 索引分配 > 链接分配。
-
文件的顺序存取是______。
A.按终端号一次存取
B.按文件的逻辑号逐一存取
C.按文件的物理块号逐一存取
D.按文件逻辑记录的大小逐一存取
答案: B B B -
文件系统采用两级索引分配方式。如果每个磁盘块的大小为1KB,每个盘块号占4B,则该系统中,单个文件的最大长度是()。
A.64MB
B.128MB
C.32MB
D.以上答案都不对
答案: A A A
每一个磁盘块的大小为 1KB,每一个盘块号占 4 字节,则一个盘块可以存放 1KB/4B = 256 个盘块号,则二级索引文件的最大长度为 256 * 256 * 1KB = 64MB. -
在程序运行过程中需要提供()以实现磁盘文件的读写请求。
A.内存地址
B.外存文件名
C.电梯调度算法
D.传送方向与传送量
答案: B B B -
文件系统中,文件访问控制信息存储的合理位置是( )。
A.文件控制块
B.文件分配表
C.用户口令表
D.系统注册表
答案: A A A
文件系统为了实现“按名存取”,为每个文件设置用于描述和控制文件的数据结构,这个数据结构称为 FCB (文件控制块)。
文件控制块包含文件名、文件物理地址和访问权限等信息。
B,文件分配表(FAT)是系统用来标识盘块的归属,即那些盘块属于哪些文件,并不包含文件的访问控制信息。
C,用户口令表是多用户系统中,用于记录不同用户口令的存储表,与文件访问控制无关。
D,系统注册表是存储系统相关设置,例如系统的环境及软件的设置等,并不包括文件的控制信息。 -
用户在删除某文件的过程中,操作系统不可能执行的操作是()
A.删除此文件所在的目录
B.删除与此文件关联的目录项
C.删除与此文件对应的文件控制块
D.释放与此文件关联的内存缓冲区
答案: A A A
删除文件不需要删除文件所在的目录,因为该目录下很有可能还有其他文件,因此不可删除。 -
下面的说法正确的是()。
A.文件系统负责文件存储空间的管理但不能实现文件名到物理地址的转换
B.在多级目录结构中对文件的访问是通过路径名和用户目录名进行的
C.文件可以被划分成大小相等的若干物理块且物理块大小也可任意指定
D.逻辑记录是对文件进行存取操作的基本单位
答案: D D D
A,文件系统分为三个层次,最底层是对象及其属性;中间层是进行操纵和管理的软件集合;最高层是文件系统提供给用户的接口。其中中间层是文件管理系统的核心部分,其中包括对文件存储空间的管理、对文件目录的个管理、用于将文件的逻辑地址转化为物理地址的基址等等。
B,对文件的访问只需要通过路径名即可。
C,物理块大小是不可以任意指定,它必须和外存的分配方式相符合。 -
文件检索过程:1. 由用户提供的路径和文件名,在文件目录中找到该文件目录;2. 由文件目录(文件控制块)中所描述的信息查找该文件存储系统的物理位置(如首块号);3. 根据文件存放的物理结构及相应的存取方式,访问该文件。
-
有些操作系统中将文件描述信息从目录项中分离出来的好处是( )。
A.减少读文件时的I/O信息量
B.减少写文件时的I/O信息量
C.减少查找文件时的I/O信息量
D.减少复制文件时的I/O信息量
答案: C C C -
下面有关文件目录说法错误的是()。
A.文件目录是用于检索文件的,由若干目录项组成
B.文件同录的组织和管理应便于检索和防止冲突
C.工作目录即当前目录
D.文件目录需要长期保存在主存中
答案: D D D
文件目录需要保存在磁盘上。 -
文件系统采用多级目录结构的目的是()。
A.减少系统开销
B.节省存储空间
C.解决命名冲突
D.缩短传送时间
答案: C C C
D,文件的传送时间与文件系统采用何种结构无关。 -
从下面关于目录检索的论述中,选出一条正确的论述:()。
A.由于Hash法具有较快的检索速度,故现代操作系统中都用它来替代传统的顺序检索方法
B.在利用顺序检索法时,对树形目录应采用文件的路径名,且应从根目录开始逐级检索
C.在利用顺序检索法时,只要路径名的一个分量名未找到,便应停止查找
D.在顺序检索法时的查找完成后,即可得到文件的物理地址
答案: C C C
A,目录进行查询的方式有两种:线性检索法 和 Hash法,现代操作系统一般采用先行检索发。
B,为了加快文件查找速度,可以设立当前目录,文件路径可以从当前目录进行擦护照。
D,顺序检索法的查找完成后,得到文件的逻辑地址。 -
下面关于索引文件的论述中,正确的是()。
A.索引文件中,索引表的每个表项中含有相应记录的关键字和存放该记录的物理地址
B.文件进行检索时,首先从FCB中读出文件的第一个盘块号,而对索引文件进行检索时,应先从FCB中读出文件索引块的开始地址
C.对于一个具有三级索引的文件,存取一个记录通常要访问三次磁盘
D.在文件较大时,无论是进行顺序存取还是随机存取,通常都是以索引文件方式最快
答案: B B B
A,索引表中的表项应该存放该记录的逻辑地址。
C,对于采用三级索引文件系统中,访问数据块分表访问第1,第2,第3索引块(索引表)及数据块,所以需要访问4次磁盘。
D,进行随机存储时,索引文件速度快;进行顺序存取时,顺必须方式最快。 -
磁盘上的文件以()为单位读/写。
A.块
B.记录
C.柱
D.磁道
答案: A A A
文件以块为单位存放于磁盘,文件的读写页式以块为单位。 -
设文件索引节点中有7个地址项,其中4个地址项是直接地址索引,2个地址项是一级间接地址索引,1个地址项是二级间接地址索引,每个地址项大小为4字节。若磁盘索引块和磁盘数据块大小均为256字节,则可表示的单个文件最大长度是( )。
A.33KB
B.519KB
C.1057KB
D.16513KB
答案: C C C
该题目考察文件的混合索引方式。
根据题目,每个磁盘索引块有 256/4 = 64 个地址项。
直接地址索引指向的数据块大小为 4K * 256B = 1KB.
一级间接地址索引指向的数据块大小为 2(两个) * 64 * 256 B = 32KB.
二级间接地址索引数据块的大小为 64 * 64 * 256B = 1024KB.
因此,单个文件的最大长度为 1057KB. -
在一个文件被用户进程首次打开的过程中,操作系统需做的是()
A. 将文件内容读到内存中
B. 将文件控制块读到内存中
C. 修改文件控制块中的读写权限
D. 将文件的数据缓冲区首指针返回给用户进程
答案: B B B -
作打开文件操作的主要工作是()。
A.把指定文件的目录复制到内存指定的区域
B.把指定文件复制到内存指定的区域
C.在指定文件所在的存储介质上找到指定文件的目录
D.在内存寻找指定的文件
答案: A A A -
文件系统在创建一个文件时,为它建立一个( )。
A. 文件目录项
B. 目录文件
C. 逻辑结构
D. 逻辑空间
答案: A A A
一个文件对应一个文件控制块。
所有文件控制块(即文件目录项)构成目录文件。 -
在用户使用完文件后必须做文件的关闭操作,这是为了______。
A. 把文件的内容写到存储介质上去
B. 释放使用文件时所占用的内存
C. 切断进程与用户的联系
D. 把文件控制块的有关内容写到文件的目录项中去
答案: D D D
文件在访问过程中可能对文件内容进行了修改,为了让文件控制块更新才更新了的信息,需要做选项D的内容。 -
文件信息的逻辑块号到物理块号的变换由()所决定
A.逻辑结构
B.分配算法
C.物理结构
D.页表
答案: C C C
12. 磁盘组织与管理
-
位示图可用于( )。
A.文件目录查找
B.文件保护
C.主存空间共享
D.磁盘空间和主存空间的管理
答案: D D D -
在磁盘中读取数据的下列时间中,影响最大的是()
A.处理时间
B.延迟时间
C.传送时间
D.寻道时间
答案: D D D
一次磁盘读写操作的时间由 寻找(寻道)时间、延迟时间 和 传输时间决定的。 -
磁盘存储器是由( )组成的。
A. 磁盘
B. 通道
C. 驱动器结构
D. 控制器
E. 缓冲区
答案: A C D ACD ACD
通道,是一个独立于CPU的专门I/O控制的处理机,控制设备与内存直接进行数据交换。
缓冲区,是为了暂时放置输入与输出资料的内存。 -
磁盘的读写单位是______。
A.块
B.扇区
C.簇
D.字节
答案: B B B -
下列选项中,不能改善磁盘设备I/O性能的是()
A.重排I/O请求次序
B.在一个磁盘上设置多个分区
C.预读和滞后写
D.优化文件物理块的分布
答案: B B B
A,重排I/O请求次序 指的是将磁盘请求序列进行重新排序,就是有关磁盘访问调度策略的选择对I/O的性能的影响。
B,主要是磁盘分区的作用,磁盘分区本质上是对磁盘的一种格式化。但是磁盘的I/O性能是由 调用顺序和磁盘本身性质决定的,和分区大小无关。
C,预读和滞后写 是常见的提升磁盘I/O速度的方法。预读指的是党访问一个磁盘块,将相邻的后续几个也一并读出放在缓存中,若用到则直接读入内存,省区寻道时间;滞后写指的是系统将一个数据输出到磁盘上时,先不直接写入磁盘,而是先保存在缓存中,以防止短期内系统又要对这个数据进行改动。如果要改动数据,直接修改缓存即可,而无需启动磁盘。
D,磁盘是在不断旋转的,读出一个数据之后,经系统处理之后才能读下一块数据,这时候磁盘已经转过了所要读的下一块数据,需要等待下一圈才能读,因此会增加旋转延迟。优化文件物理快分布可以解决这个问题。 -
在系统内存中设置磁盘缓冲区的主要目的是()
A. 减少磁盘 I/O 次数
B. 减少平均寻道时间
C. 提高磁盘数据可靠性
D. 实现设备无关性
答案: A A A
讲解见上题"滞后写"。
13. I/O管理概述
-
在I/O设备控制的发展过程中,最主要的推动因素是()
A.提高资源利用率
B.提高系统吞吐量
C.提高I/O设备与CPU的并行操作程度
D.减少CPU对I/O控制的干预
答案: D D D
宗旨:尽量减少CPU对I/O控制的干预,把主机从繁杂的I/O控制事物中解脱出来,以更多地去完成其数据处理任务。 -
在程序I/O方式中,对于输出设备,准备就绪是指______。
A. 输出缓冲区已空
B. 输出缓冲区已有数据
C. 输出设备已开始工作
D. 输出设备已收到I/O指令
答案: A A A -
下面关于设备属性的论述中正确的是( )。
A.字符设备的一个基本特性是可寻址,即能指定输入时的源地址和输出时的目标地址
B.共享设备必须是可寻址的和可随机访问的设备
C.共享设备是指在同一时刻内,允许多个进程同时访问的设备
D.在分配共享设备和独占设备时,都可能引起死锁
答案: B B B
A,可寻址是 块设备 的基本特征。
C,共享设备是指一段时间之内允许多个进程同时访问的设备。在同一时刻内,只允许一个进程访问。
D,分配共享设备不会引起死锁。 -
I/O交通管制程序的主要功能是管理____的状态信息。
A.设备、控制器和通道
B.主存、控制器和通道
C.CPU、主存和通道
D.主存、辅存和通道
答案: A A A
对外设的控制分为设备、控制器和通道 三个层次,所以 I/O 交通管制程序的主要功能是管理这三个层次的状态信息。 -
I/O设备处理进程一般处于( )状态。
A.就绪
B.执行
C.阻塞
D.死锁
答案: C C C -
大多数低速设备都属于( )设备.
A. 独享
B. 共享
C. 虚拟
D. SPOOLing
答案: A A A -
将系统中的每一台设备按照某种原则进行统一的编号,这些编号作为硬件区分和识别设备的代号,该编号称为设备的______。
A.绝对号
B.相对号
C.类型号
D.符号名
答案: A A A -
在设备控制器中用于实现对设备控制功能的是()。
A.CPU
B.设备控制器与处理器的接口
C.I/O逻辑
D.设备控制器与设备的接口
答案: C C C
设备控制器由三部分组成:1. 设备控制器和处理机的接口,负责实现CPU与设备控制器之间的通信;2. 设备控制器与设备的接口,一个设备控制器上有一个或者多个设备接口,可以连接一个或者多个设备。;3. I/O 逻辑,用于实现对设备的控制。
第二轮
1. 操作系统概述
-
系统调用是由操作系统提供内部调用的,它( )。
A.直接通过键盘交互方式使用
B.只能通过用户程序间接使用
C.是命令接口中的命令
D.与系统的命令一样
答案: B B B
操作系统接口主要有 命令接口 和 程序接口(系统调用)。系统调用是操作系统提供给应用程序使用内核功能的接口。 -
操作系统与用户通信接口通常不包括()。
A.shell
B.命令解释器
C.广义指令
D.缓存管理指令
答案: D D D
C,广义指零就是系统调用。
B,命令解释器属于命令接口。
A,shell指命令解析器,也属于命令接口。
系统中的缓存从全部由操作系统管理,对用户是透明的,操作系统不提供管理系统缓存的系统调用。 -
I/O通道 是一种特殊的处理器,具有执行I/O的能力,并通过执行通道程序来控制 I/O 操作。
-
在中断发生后,进行中断处理的程序属于()。
A.用户程序
B.可能是应用程序,也可能是操作系统程序
C.操作系统程序
D.既不是应用程序,也不是操作系统程序
答案: C C C
5.当计算机区分了核心态和用户态指令之后,从核心态到用户态的转换是由操作系统程序执行后完成的,而用户态到核心态的转换则是由( )完成的。
A.硬件
B.核心态程序
C.用户程序
D.中断处理程序
答案:
A
A
A
D,中断处理程序在核心态下运行,因此无法完成 用户态到核心态的转换。
-
在操作系统中,只能在核心态下执行的指令是( )。
A.读时钟
B.寄存器清“0”
C.广义指令
D.取数
答案: C C C
广义指令即系统调用,只能在核心态下执行。
B,存疑?? -
处理外部中断时,应该由操作系统保存的是()。
A. 程序计数器(PC)的内容
B. 通用寄存器的内容
C. 块表(TLB)中的内容
D. Cache 中的内容
答案: B B B
外部中断处理过程,PC值由中断隐指令自动保存。
通用寄存器的内容由操作系统保存。
2. 进程管理
-
进程映像:由程序段、相关数据段、PCB 三部分组成。
进程映像是静态的,进程是动态的。 -
进程之间交换数据不能通过( )途径进行。
A.共享文件
B.消息传递
C.访问进程地址空间
D.访问共享存储区
答案: C C C
每一个进程包含对立的地址空间,各自的地址空间是私有的。 -
用信箱实现进程间互通信息的通信机制要有两个通信原语,它们是( )。
A.发送原语和执行原语
B.就绪原语和执行原语
C.发送原语和接收原语
D.就绪原语和接收原语
答案: C C C -
两个合作进程(Cooperating Processes)无法利用()交换数据。
A.文件系统
B.共享内存
C.高级语言程序设计中的全局变量
D.消息传递系统
答案: C C C
全局变量是对同一进程而言的,不同进程中的不同变量没有任何关系。 -
进程可以创造进程或线程;线程也可以创造线程。
但是线程无法创造进程。 -
进程的通信:
- 共享存储:通信的进程之间存在一块可以直接访问的共享空间,通过对这片共享空间进行读/写操作实现进程之间的信息转换。
- 消息传递:进程之间以格式化的消息为单位。
- 管道通信:管道,指的都是连接一个读进程和写进程以实现它们之间的一个共享(pipe)文件。
-
父进程创建子进程 与 主程序调用子程序 有什么不同?
答:父进程创建子进程之后,父进程与子进程并发执行。
主程序调用子程序之后,主程序停在调用点,子程序开始执行,直到子程序执行结束返回,主程序才开始执行。 -
什么是多线程?多线程与多任务有什么区别?
答:多线程指的是在一个程序中可以定义多个线程同时运行它们,每一个线程可以执行不同的任务。
多线程与多任务的区别:多任务是针对操作系统而言的,代表操作系统可以同时执行的程序个数;多线程是针对一个程序而言的,代表一个程序可以同时执行的线程个数,而每一个线程可以完成不同的任务。 -
现代操作系统一般都提供多进程(或称多任务)运行环境,回答以下问题:1.为支持多进程的并发执行,系统必须建立那些关于进程的数据结构?2.为支持进程状态的变迁,系统至少应提供那些进程控制原语?3.执行每一个进程控制原语时,进程状态发生什么变化?相应的数据结构发生什么变化?
答案:1.为支持多进程的并发执行,系统为每一个进程建立了一个数据结构:进程控制块(PCB),用于进程的管理和控制。PCB中记录了有关级才能哼的一些描述信息和控制信息,包括进程标识符、进程当前的状态、优先级、进程放弃CPU时的现场信息,以及指示组成进程的程序和数据在存储器中存放位置的信息、资源使用信息、进程各种队列的连接指针和反映进程之间的隶属关系的信息等。2.创建新进程原语、阻塞进程原语、唤醒进程原语、中止进程原语等。3.进程创建原语:从PCB集合中申请一个空白PCB,将调用者参数填入该PCB,设置为就绪状态;中止进程原语:用于回收中止/完成进程的资源,消除其PCB;阻塞原语:将进程从运行态转变为阻塞态。进程被插入等待时间队列,同时修改相应表项;唤醒原语:将进程从阻塞状态变为就绪状态。进程从阻塞额队列中移除,插入到就绪队列中等待调度,同时修改PCB中表项。 -
下列说法正确的是( )。
Ⅰ. 分时系统的时间片固定,那么用户数越多,响应时间越长
Ⅱ. UNIX是一个强大的多用户、多任务操作系统,支持多种处理器架构,按照操作系统的分类,属于分时操作系统
Ⅲ. 中断向量地址是中断服务例行程序入口地址
Ⅳ. 中断发生时,由硬件保护并更新程序计数器(PC),而不是由软件完成,主要是为了提高处理速度
A.Ⅰ、Ⅱ
B.Ⅱ、Ⅲ
C.Ⅲ、Ⅳ
D.只有Ⅳ
答案: A A A
Ⅲ,中断向量 用于存放中断服务例行程序的入口地址;中断向量地址 用于存放 该入口地址 的地址。
Ⅳ,中断由硬件保护并完成,主要为了保障系统运行的可靠性。虽然也可以提高处理速度,但不是主要原因。 -
为什么说多级反馈队列调度算法能够较好地满足各类用户的需要?
答案:对于终端用户而言,由于它们所提交的大多属于交互型作业,作业通常比较短小,系统只要能使这些作业在第1级对垒所规定的时间片内完成便可使终端用户满意;对于短批处理作业用户而言,他们的作业一开始时像终端型作业一样,如果仅在第1级队列中执行一个时间片即可完成,便具有与终端型作业一样的响应时间,对于稍长的作业,通常也只需要在第2级队列和第3级队列中各执行一个时间片即可完成,其周转时间依旧稍短;对于长批处理作业用户而言,他们的长作业将依次在第1,2,3…直到第n级队列中运行,然后再按照时间片轮转的方式运行,用户不必担心其作业长期得不到处理。 -
周转时间 = 作业运行结束时间 - 作业到达时间;
带权周转时间 = (作业运行结束时间 - 作业到达时间)/ 作业运行时间。 -
下列对临界区的论述中,正确的是( )。
A.临界区是指进程中用于实现进程互斥的那段代码
B.临界区是指进程中用于实现进程同步的那段代码
C.临界区是指进程中用于实现进程通信的那段代码
D.临界区是指进程中用于访问共享资源的那段代码
答案: D D D
多个进程可以共享系统中的资源,一次仅允许一个进程使用的资源叫做 临界资源。访问临界资源的那段代码称为临界区。 -
以下( )属于临界资源。
A.磁盘存储介质
B.公用队列结构
C.私用数据
D.可重入的程序代码
答案: B B B
临界资源是互斥共享资源。
D,如果代码可以被多个进程在任意时刻共享,则要求任意一个进程在调用此段代码时都以同样的方式运行,而且进程在运行过程中被中断后再继续执行,其执行结果也不受影响。这样必然要求代码不能被任何进程修改,否则无法满足共享的要求,这样的代码便是 可重入代码,也叫做纯代码,即一次可以供多个程序使用的代码。 -
用PV操作实现进程同步,信号量的初值为()
A. -1
B. 0
C. 1
D. 由用户确定
答案: D D D -
一个进程有程序、数据及PCB组成,其中( )必须用可重入编码编写。
A.PCB
B.程序
C.数据
D.共享程序段
答案: D D D
共享程序段可能被多个进程使用,所以必须使用可重入代码。 -
何为管程?管程由几部分组成?说明引入管程的必要性。
答案:当共享资源用共享数据结构表示时,资源管理程序可用对该数据结构的一组过程来表示,例如资源的请求和释放过程request和release。把这样一组相关的数据结构和过程一并归为管程。
一个管程定义了一个数据结构和能为并发进程所执行(在数据结构上)的一组操作,这组操作能同步进程和改变管程中的数据。
管程有三部分组成:1. 局部于管程的共享变量说明。2. 该数据结构进行操作的一组过程。3. 对局部于管程的数据设置初始值的语句,此外,还需要为该管程赋予一个名字。
管程不仅能实现进程之间的互斥,还能够实现进程之间的同步。
管程的特性:1. 局部于管程的数据只能被局部于管程内的过程所访问。2. 一个进程只有通过调用管程内的的过程才能进入管程访问共享数据。3. 每次仅允许一个进程再管程内执行某个内部过程。
管程的引入是为了解决临界区分散所带来的管理和控制问题。在没有管程之前,对临界区的访问分散在各个进程之中,不易发现和纠正分散在用户程序中的不正确使用PV操作等问题。管程将这些分散在各个进程中的临界区集中起来,并加以控制和管理,管程一次只允许一个进程进入管程内,从而既便于系统管理共享资源,又能保证互斥。 -
PV操作是一种低级计称通信原语。不是一种系统调用!
PV操作是两个不可被中断的过程组成的。 -
信箱通信是一种( )通信方式。
A.直接通信
B.间接通信
C.低级通信
D.信号量
答案: B B B -
三个进程P1、P2、P3互斥使用一个包含N(N>0)个单元的缓冲区。P1每次用produce()生成一个正整数并用put()送入缓冲区某一空单元中;P2每次用getOdd()从该缓冲区中取出一个奇数并用Countodd()统计奇数个数;P3每次用getEven()从该缓冲区中取出一个偶数并用CountEven()统计偶数个数。请用信号量机制实现这三个进程的同步与互斥活动,并说明所定义的信号量的含义。要求用伪代码描述。
答案:互斥资源:缓冲区只能互斥地访问,因此需要设置互斥信号量mutex.
同步问题:P1,P2因为奇数的放置和取出而同步,设置同步信号量odd;P1,P3因为偶数的放置和取出而同步,设置同步信号量even.P1,P2,P3共享缓冲区,设置同步信号量empty,初值为N。semaphore mutex = 1; semaphore odd = 0, even = 0; semaphore empty = N; cobegin{ Process P1(){ while(true){ x = produce(); P(empty);//判断缓冲区有无空单元 P(mutex); put(); V(mutex); V(mutex); if( x % 2 == 0) V(even); else V(odd); } } Process P2(){ while(true){ P(odd); P(mutex); getodd(); V(mutex); V(empty); countodd(); } } Process P3(){ while(true){ P(even); P(mutex); geteven(); V(mutex); V(empty); counteven(); } } }
-
在一个仓库中可以存放A和B两种产品,要求:
1)每次只能存入一种产品。
2)A产品数量-B产品数量<M。
3)B产品数量-A产品数量<N。
其中,M、N是正整数,试用P操作、V操作描述产品A与产品B的入库过程。
答案:使用信号量mutex控制两个进程互斥访问临界资源(仓库),使用同步性信号量Sa和Sb分别表示A和B的还可以容纳数量差,使之满足条件2和3.Semaphore Sa = M - 1, Sb = N - 1; Semaphore mutex =1; Process_A(){ while(1){ P(Sa); P(mutex); A产品入库; V(mutex); V(Sb); } } Process_B(){ while(1){ P(Sb); P(mutex); B产品入库; V(mutex); V(Sa); } }
-
面包师有很多面包,由n个销售人员推销。每个顾客进店后取一个号,并且等待叫号,当一个销售人员空闲下来时,就叫下一个号。试设计一个使销售人员和顾客同步的算法。
答案:顾客进店之后按序取号,并且等待叫号,销售人员空闲之后也是按序叫号。因此同步算法只要对顾客取号和销售叫号进行合理同步即可。
使用变量i和j分别表示当前的取号值和叫号值,并各自使用一个互斥信号量用于对i和j进行访问和修改。int i = 0, j = 0; Semaphore mutex_i = 1, mutex_j = 1; Consumer(){ enter backery; P(mutex_i); i++; V(mutex_i); wating; } Seller(){ while(1){ P(mutex_j); if(j<i){ 叫号j; j++; V(mutex_j); sell; } else{ V(mutex_j); 休息; } } }
-
某寺庙,有小和尚、老和尚若干。有一水缸,由小和尚用水桶从井中提水入缸,老和尚用水桶从缸里取水饮用。水缸可容10桶水,水取自同一井中。水井径窄,每次只能容一个水桶取水。水桶总数为3个。每次入、取缸水仅为1桶,且不可以同时进行。试用P、V操作给出小和尚、老和尚动作的算法描述。
答案:从水中取水并放入水缸是一个连续的动作可以视为一个进程,从水缸中取水为另一个进程。
水缸和水井位临界资源,分别用well,vat表示;三个水桶无论是从水井中取水还是放入水缸中都是一次一个,应该为他们设置一个信号量pail,抢不到水桶只好等待。水缸满时,不可以放水,设置empty控制入水量;水缸空时,不可以取水,设置full控制取水量。Semaphore well = 1; //互斥地访问水井 Semaphore vat = 1; //互斥地访问水缸 Semaphore empty = 10; Semaphore full = 0; Semaphore pail = 3; Process OldMonk(){ while(1){ P(full); P(pail); P(vat); 从水缸中打一桶水; V(vat); V(empty); 喝水; V(pail); } } Process YoungerMonk(){ while(1){ P(empty); P(pail); P(well); 从水井中打一桶水; V(well); P(vat); 将水倒入水缸中; V(vat); V(pail); V(full); } }
-
某银行提供1个服务窗口和10个供顾客等待的座位。顾客到达银行时,若有空座位,则到取号机上领取一个号,等待叫号。取号机每次仅允许一位顾客使用。当营业员空闲时,通过叫号选取一位顾客,并为其服务。顾客和营业员的活动过程描述如下: 略 见课本。请添加必要的信号量和P、V(或wait()、signal())操作,实现上述过程中的互斥与同步。要求写出完整的过程,说明信号量的含义并赋初值。
Semaphore empty = 10; //空闲座位数量 Semaphore full = 0; //已占有的座位数量 Semaphore mutex = 1; //互斥使用取号机 semaphore service = 0; //等待叫号 cobegin{ Process 顾客i{ P(empty); P(mutex); 取号; V(mutex); V(full); P(service); } Process 营业员{ while(1){ P(full); V(empty); V(service); } } }
-
设P、Q、R共享一个缓冲区,P、Q构成一对生产者消费者,R既为生产者又为消费者。使用P、V操作实现其同步。
答案:设定三个信号量full, empty, mutex. 因为R既是消费者又是生产者,因此必须在执行之前判断状态,如果emtpy1,则执行生产者功能;若full1,则执行消费者功能。
```
Semaphore full = 0;
Semaphore empty = 1;
semaphore mutex = 1;
Process P{ //P为生产者
while(1){
P(empty);
P(mutex);
product;
V(mutex);
V(full);
}
}
Process Q{
while(1){
P(full);
P(mutex);
consume;
V(mutex);
V(empty);
}
}
Process R{
while(1){
if(empty==1){
P(empty);
P(mutex);
product;
V(mutex);
V(full);
}
if(full==1){
P(full);
P(mutex);
consume;
V(mutex);
V(empty);
}
}
}
```
-
理发店理有一位理发师、一把理发椅和n把供等候理发的顾客坐的椅子。如果没有顾客,理发师便在理发椅上睡觉,一个顾客到来时,顾客必须叫醒理发师,如果理发师正在理发时又有顾客来到,则如果有空椅子可坐,就坐下来等待,否则就离开。
答案:int waiting = 0;//等候理发的顾客数量 int chairs = n; //椅子数目; Semaphore customers = 0; Semaphore barbers = 0;//正在等候顾客的理发师数目 Semaphore mutex = 1; Process Barbers(){ while(1){ P(customers); P(mutex); waiting -= 1; V(barbers); V(mutex); Cutting; } } Process Customer(){ P(mutex); if( waiting < chairs){ waiting += 1; V(customers); V(mutex); P(barbers); get_haircut() } else{//leaving V(mutex); } }
-
三个进程共享四个同类资源,这些资源的分配与释放只能一次一个。已知每一个进程最多需要两个该类资源,则该系统( )。
A.有些进程可能永远得不到该类资源
B.必然有死锁
C.进程请求该类资源立刻能得到
D.必然是死锁
答案: C C C
必定不会产生死锁,这些进程都分到一个资源时,还有一个资源可以让任意一个进程满足,这样进程可以顺利完成进而释放它的资源。 -
资源分配图:用一个圆圈代表一个进程,用一个框代表一类资源。由于一种类型的资源可以有多个,用框中的一个代表代表一类资源中的一个资源。从进程到资源的有向边叫请求边,表示该进程申请一个单位的该类资源;从资源到进程的边叫分配边,表示该类资源已经有一个资源被分配给该类进程。
-
死锁的四个必要条件中,无法破坏的是( )。
A.环路等待资源
B.互斥使用资源
C.占有且等待资源
D.非抢夺式分配
答案: B B B
互斥条件无法破坏,例如打印机只能互斥使用,应该保护这种互斥性。 -
系统的资源分配图在下列情况中,无法判断是否处于死锁的情况有( )。
Ⅰ.出现了环路 Ⅱ.没有环路
Ⅲ.每种资源只有一个,并出现环路 Ⅳ.每个进程节点至少有一条请求边
A.Ⅰ、Ⅱ、Ⅲ、Ⅳ
B.Ⅰ、Ⅲ、Ⅳ
C.Ⅰ、Ⅳ
D.以上答案都不正确
答案: C C C
I,出现了环路只是循环等待条件满足,不一定死锁。
Ⅱ,没有环路,破坏了循环等待条件,一定不会发生死锁。
Ⅲ,每一个资源只有一个,并出现了环路,是死锁的充分必要条件,一定会有死锁。
Ⅳ,每一个进程结点至少有一个请求边,当资源足够时,不会产生死锁,当资源不够时,会产生死锁。 -
死锁定理是用于处理死锁的()方法。
A.预防死锁
B.避免死锁
C.检测死锁
D.解除死锁
答案: C C C -
系统中有3个不同的临界资源R1、R2和R3,被4个进程p1、p2、p3及p4共享。各进程对资源的需求为:p1申请R1和R2,p2申请R2和R3,p3申请R1和R3,p4申请R2。若系统出现死锁,则处于死锁状态的进程数至少是( )。
A. 1
B. 2
C. 3
D. 4
答案: C C C -
若系统 S1 采用死锁避免方法,S2采用死锁检测方法。下列叙述中,正确的是 ()。
Ⅰ.S1 会限制用户申请资源的顺序,而 S2 不会
Ⅱ.S1 需要进程运行所需资源总量信息,而 S2 不需要
Ⅲ.S1 不会给可能导致死锁的进程分配资源,而 S2 会
A. 仅Ⅰ、Ⅱ
B. 仅Ⅱ、Ⅲ
C. 仅Ⅰ、Ⅲ
D. Ⅰ、Ⅱ、Ⅲ
答案: B B B -
银行家算法中,实际计算分析系统安全状态时,并不需要逐个进程进行检查。当 空闲资源 可以满足余下任意一个进程的 最大需求量 时,便不在需要考虑进程的执行顺序。
3. 内存管理
-
在虚拟内存管理中,地址变换机构将逻辑地址变换为物理地址,形成该逻辑地址的阶段是( )。
A.编辑
B.编译
C.链接
D.装载
答案: C C C
编译后的程序需要 链接 之后才可以装载。 而链接后形成的目标程序中的地址也就是逻辑地址。 -
在使用交换技术时,如果一个进程正在____时,则不能交换出主存。
A.创建
B.I/O操作
C.处于临界段
D.死锁
答案: B B B
进程正在进行I/O操作时不能换出主存,否则它的I/O数据将会被新换入的内存占用,导致错误。 -
最佳适应算法:每次为作业分配内存空间时,总是找到能满足空间大小需要的最小的空间分区给作业。
-
存储管理方案中,( )可采用覆盖技术。
A.单一连续存储管理
B.可变分区存储管理
C.段式存储管理
D.段页式存储管理
答案: A A A
覆盖技术是早期在 单一连续存储管理 中使用的扩大存储容量的一种技术,它同样可以用于 固定分区分配 的存储管理中。 -
静态装入:指 编程阶段 就把 物理地址 计算好。
绝对装入:
可重定位:指 装入 时把逻辑地址转换为物理地址,但装入之后不能变。
动态重定位(又称动态运行时装入):执行时再决定装入的地址并装入。装入后有可能换出,在内存中的物理地址可变。通过 硬件地址转换机制 实现。
补充:重定位寄存器:用来存放程序(数据)在内存中的起始位置。由于系统处理器同一时刻只能执行一条指令或者访问数据,并且寄存器昂贵,所以系统中只有一个重定位寄存器,只需要在切换程序时重置寄存器的值即可。 -
静态链接:程序运行前,先将各目标模块及它们所需的库函数链接成一个完整的可装入程序,以后不在拆开。
动态链接:装入内存时,边装入边链接。 -
采用分页或分段管理后,提供给用户的物理地址空间( )。
A.分页支持更大的物理地址空间
B.分段支持更大的物理地址空间
C.不能确定
D.一样大
答案: C C C
页表和段表同样存储在 内存 中,系统能够提供给用户的物理地址空间为总的空间大小减去页表或段表的长度。
由于页表和段表的长度不能确定,所以提供给用户的物理地址空间也不能确定。 -
在页式管理中,页表的起始地址是存放在()中。
A.内存
B.寄存器
C.存储页表
D.联想存储器
答案: B B B
页表的功能是由一堆专门的存储器实现,其起始地址放在 页表基址寄存器(PTBR)中。这样才能满足地址变换时能够快速完成逻辑地址与物理地址的转换。 -
分页系统中的页面是为( )。
A.用户所感知的
B.操作系统所感知的
C.编译系统所感知的
D.连接装配程序所感知的
答案: B B B
内存分页管理时在硬件和操作系统层面上实现的。 -
采用可重入程序是通过( )方法来改善系统性能的。
A.改变时间片长度
B.改变用户数
C.提高对换速度
D.减少对换数量
答案: D D D
可重入程序是指该程序被某进程调用,但还未结束,又被另一个进程调用。
可重入程序主要是通过共享来使用同一块存储空间,或者通过动态链接的方式将所需的程序段映射到相关进程上区,其最大的优点是减少了对程序段的调入/调出,因此减少了对换数量。 -
对外存对换区地管理以( )为主要目标。
A.提高系统吞吐量
B.提高存储空间的利用率
C.降低存储费用
D.提高换入、换出速度
答案: D D D
操作系统在内存管理中为了提高内存的利用率,引入了 覆盖和交换 技术,即在较小的内存空间中重复使用该方法来存储空间,代价是消耗更多的时间。是一种以时间换空间的技术。为此,从节省处理器时间来讲,换出换入速度越快,付出的时间代价越小。当时间消耗过大时,交换和覆盖技就没有意义了。 -
虚拟存储器和非虚拟存储器的主要区别之一:非虚拟存储器中,作业必须全部装入内存并且运行过程也一直驻留内存;虚拟存储存储器中作业不必全部装入内存且运行过程中也不用一直驻留内存。
-
存储管理的目的是( )。
A.方便用户
B.提高内存利用率
C.方便用户和提高内存利用率
D.增加内存实际容量
答案: C C C -
单用户连续分配管理方式 只适用于 单用户、单任务的操作系统中, 不适合多道程序设计。
-
分页存储管理中,作业地址空间是一维的。即单译的线性地址空间。
分段存储管理中,作业地址空间是二维的。因为段与段之间是独立的。
页长固定,段长不固定。总之,确定一个地址需要几个参数就是几维的。 -
操作系统采用分页存储管理方式,要求( )。
A.每个进程拥有一张页表,且进程的页表驻留在内存中
B.每个进程拥有一张页表,但只有执行进程的页表驻留在内存中
C.所有进程共享一张页表,以节约有限的内存空间,但页表必须驻留在内存中
D.所有进程共享一张页表,只有页表中当前使用的页面必须驻留在内存中,以最大限度地节省有限的内存空间
答案: A A A
多个进程并发执行时,所有进程的页表大多数驻留在内存中,在系统中只设置一个页表寄存器(PTR),其中存放页表在内存中的起始长度和页表的长度。平时,程序未执行时,页表的起始地址和页表长度存放在本进程的PCB中,当调度到某一个进程,才将这两个数据装入页表寄存器中。每一个进程都有一个独立的逻辑地址,有一张属于自己的页表。 -
页式存储管理 不能 使用静态重定位。
-
下列关于虚拟存储器的叙述中,正确的是()
A. 虚拟存储只能基于连续分配技术
B. 虚拟存储容量只受外存容量的限制
C. 虚拟存储只能基于非连续分配技术
D. 虚拟存储容量只受内存容量的限制
答案: C C C
A,采用连续分配技术时,会使得相当一部分内存空间处于闲置状态,造成内存资源的严重浪费,也无法从逻辑上扩展内存容量。 -
考虑页面置换算法,系统有m个物理块供调度,初始时全空,页面引用串长度为p,包含了n个不同的页号,无论用什么算法,缺页次数不会少于( )。
A.m
B.p
C.n
D.min(m,n)
答案: C C C -
在虚拟存储器系统的页表项中,决定是否会发生页故障的是( )。
A.合法位
B.修改位
C.页类型
D.保护码
答案: A A A
页表项中 合法位 信息显示这本页面是否在内存中,即决定了是否会发生页面故障。 -
在页面置换策略中, 所有 策略可能引起 抖动。(产生内存抖动的主要原因是:页面置换算法不合理,并不是内存空间太小)
FIFO算法可能引起Belady异常。 -
使用()方法可以实现虚拟存储。
A.分区合并
B.覆盖、交换
C.快表
D.段合并
答案: B B B -
下列措施中,能加快虚实地址转换的是() Ⅰ.增大快表(TLB)容量 Ⅱ.让页表常驻内存 Ⅲ.增大交换区(swap)
A. 仅Ⅰ
B. 仅Ⅱ
C. 仅Ⅰ、Ⅱ
D. 仅Ⅱ、Ⅲ
答案: C C C
虚实地址转换指的是 逻辑地址 和 物理地址 的转换。
增大快表容量,可以把更多表项装入快表中。
让页表常驻内存可以省下 那些不在内存中的页表 从磁盘调入的过程。
增大交换区对虚实地址转换快慢无影响。 -
覆盖技术和虚拟存储技术最本质的不同在于:覆盖程序段的最大长度要受到内存容量的限制,而虚拟存储器中程序的最大长度不受内存容量的限制。
-
在页式虚拟管理的页面替换算法中,对于任何给定的驻留集大小,在什么样的访问串情况下,FIFO与LRU替换算法一样(即被替换的页面和缺页情况完全一样)?
答案:由于驻留集大小任意,现在要求两种算法的替换页面和缺页情况完全一样,这就意味着要求FIFO与LRU的置换选择一致。
FIFO替换最早进入主存的页面,LRU替换自上次访问以来最久未被访问的页面,这两个页面一致。就是说,最先进入主存的页面在这次缺页之前不能再被访问。
所以,访问串中的所有页面都应该不同,但是注意到,连续访问相同页面时不影响后面的替换选择,所以对访问串的要求是不连续的页面号均不同。
4. 文件管理
-
从用户的观点看,操作系统中引入文件系统的目的是()。
A.保护用户数据
B.实现对文件的按名存取
C.实现虚拟存储
D.保存用户和系统文档及数据
答案: B B B
从操作系统的角度看,文件系统负责对文件的存储空间进行组织、分配,负责文件的存储并对文件进行保护、检索。
从用户的角度看,文件系统根据一定的格式将用户的文件存放到文件存储器中适当的地方;当用户需要使用文件时,系统根据用户所给的文件名能够从文件存储器中找到所需要的文件。 -
在UNIX操作系统中,把输入/输出设备看作是( )。
A.普通文件
B.目录文件
C.索引文件
D.特殊文件
答案: D D D
在UNIX系统中,所有设备看作是特殊的文件,因为UNIX操作系统控制和访问外部设备方式和访问一个文件的方式是相同的。 -
文件的逻辑结构是为了方便 用户 而设计的。
文件结构包括逻辑结构和物理结构。
逻辑结构是用户组织数据的结构形式,数据组织形式来自于自身需求。因此,逻辑文件的组织形式取决于用户。
物理结构是操作系统组织物理存储块的结构形式。因此,物理结构的选择取决于文件系统设计者针对硬件结构所采取的策略(比如磁带介质中很难实现链接结构和索引结构) -
下列关于索引表的叙述中,正确的是______。
A.建立索引表的目的之一是为了减少存储空间
B.索引表中含有索引文件的数据及其物理地址
C.对索引文件存取时,必须先查找索引表
D.索引表中每个记录的索引项可以有多个
答案: C C C
索引文件由逻辑文件和索引表组成,对索引文件存取时,必须先查找索引表。 -
若一个用户进程通过read系统调用读取一个磁盘文件中的数据,则下列关于此过程的叙述中,正确的是( )。
Ⅰ. 该文件的数据不在内存中,则该进程进入睡眠等待状态
Ⅱ. 请求 read 系统调用会导致 CPU 从用户态切换到核心态
Ⅲ.read 系统调用的参数应包含文件的名称
A. 仅Ⅰ、 Ⅱ
B. 仅Ⅰ、 Ⅲ
C. 仅Ⅱ、 Ⅲ
D. Ⅰ、 Ⅱ和Ⅲ
答案: A A A
I,若文件的数据不在内存中,会产生中断(缺页中断),原进程进入阻塞状态,查找所需要的数据从外存调入到内存之后,才将该进程唤醒。
II,read是系统调用,要通过自陷方式将CPU从用户态切换到核心态,来获得操作系统的服务。
III,open系统调用中参数包括文件的路径名和文件名,而read只需要open返回的文件描述符,并不需要用文件名作为参数。read的三个参数:1. 文件描述符fd2. buf缓冲区首地址;3. 传送的字节数n。read的功能是试图从fd所指示的文件中读入n个字节的数据,并将它们送至由指针buf所指示的缓冲区中。 -
文件目录项FCB由文件基本信息,存取控制信息和使用信息组成。文件基本信息包括文件物理位置。
但是,FCB中不包括FCB的物理位置信息。 -
文件系统采用多级目录结构的目的是( )
A. 减少系统开销
B. 节省存储空间
C. 解决命名冲突
D. 缩短传送时间
答案: C C C -
在UNIX操作系统中,文件的索引结构存放在( )中。
A.超级块
B.索引结点
C.目录项
D.空闲块
答案: B B B
UNIX采用树形目录结构,文件信息放在索引节点中。
A,超级块是用来描述文件系统的。 -
操作系统为保证未经文件拥有者授权,任何其他用户不能使用该文件所提供的解决方法是 ______。
A.文件保护
B.文件保密
C.文件转储
D.文件共享
答案: A A A
文件保护是针对文件访问权限的保护。 -
设文件F1的当前引用计数值为1,先建立F1的符号链接(软链接)文件F2,再建立F1的硬链接文件F3,然后删除F1。此时,F2和F3的引用计数值分别是______。
A.0、1
B.1、1
C.1、2
D.2、1
答案:B$
建立符号链接(软链接)时,引用计数值可以直接复制。
建立硬链接时,引用计数值 +1.
删除文件时,删除操作对于符号链接(软链接)不可见,这并不影响文件系统,当以后再通过符号链接访问时,发现文件不存在,直接删除符号链接(软链接)即可。
删除文件时,硬链接不可直接删除,引用计数值 -1,若计数值不为0,则不能删除此文件,因为还有其他硬链接指向此文件。
软链接建立F2时,引用计数值为1,删除F1时,F2的计数值不变。 -
对于一个文件的访问,常由( )共同限制。
A.用户访问权限和文件属性
B.用户访问权限和用户优先级
C.优先级和文件属性
D.文件属性和口令
答案: A A A
用户访问权限 指的是该用户有没有权限访问该文件。
用户优先级 指的是当多个用户同时请求该文件时,应该先满足谁的请求。
文件属性,包括保存在PCB中对文件访问的控制信息。 -
加密保护和访问控制两种机制相比()。
A.加密保护机制的灵活性更好
B.访问控制机制的安全性更高
C.加密保护机制必须由系统实现
D.访问控制机制必须由系统实现
答案: D D D
加密控制和访问控制中,
访问控制的级别和保护力度较小,因此灵活性更好,但安全性更差。
C,加密保护机制如果由系统实现,那么加密方法无法扩展。
D,访问控制机制如果不由系统实现,那么系统本身的安全性如法保证。 -
某文件系统中,针对每个文件,用户类别分为4类:安全管理员、文件主、文件主的伙伴、其他用户;访问权限分为5种:完全控制、执行、修改、读取、写入。若文件控制块中用二进制位串表示文件权限,为表示不同类别用户对一个文件的访问权限,则描述文件权限的位数至少应为( )。
A. 5
B. 9
C. 12
D. 20
答案: D D D
可以把用户访问权限视为4行5列的矩阵,行代表用户,列代表访问权限。1代表true,0代表false。所以需要20位。 -
有些操作系统中将文件描述信息从目录项中分离出来的好处是( )。
A.减少读文件时的I/O信息量
B.减少写文件时的I/O信息量
C.减少查找文件时的I/O信息量
D.减少复制文件时的I/O信息量
答案: C C C
将文件描述信息从目录项中分离,即减少了索引结点,因此磁盘的盘块中可以存放更多的目录项,查找文件时可以大量减少I/O信息。 -
一级目录平均访问磁盘次数为1/2盘块数(顺序查找目录表中的所有目录项,每一个目录项为一个FCB)
-
下面关于目录检索的叙述中,正确的是______。
A. 由于Hash法具有较快的检索速度,故现在操作系统中已开始用它取代传统的顺序检索法
B. 在利用顺序检索法时,对树形目录应采用文件的路径名,且应从根目录开始逐级检索
C. 在顺序检索法的查找过程中,只要有一个文件分量名未找到,便应停止查找
D. 在顺序检索法的查找完成时,即应得到文件的物理地址
答案: C C C
A,现代操作系统一般使用线性检索法。
D,顺序检索法查找完成时,得到的是文件的逻辑地址。 -
文件的存储空间管理实质上是对()的组织和管理。
A.文件目录
B.外存已占用区域
C.外存空闲区
D.文件控制块
答案: C C C
文件存储空间管理 即 文件空闲空间管理。
文件管理要解决的问题是 如何为创建文件分配处理空间,即如何找到空间盘块,并对其管理。 -
简单叙述文件的 外存分配 中的连续分配、链接分配和索引分配各自的优缺点。
|方式|优点|缺点|访问第n个记录
|—|---|
|连续分配|可以随机访问磁盘,访问速度快|要求由连续的存储空间;容易产生碎片,降低磁盘空间利用率;不利于文件的扩充|访问磁盘1次|
|链接分配|不要求连续的存储空间,更有效地利用磁盘空间;利于扩充文件|只能顺序访问,不能随机访问;降低了存储效率(指针也占用了一定的空间);可靠性差|访问磁盘n次
|索引分配|既支持顺序访问也支持随机访问,查找效率高,便于文件删除|索引结点占用一定的存储空间|m级访问磁盘m+1次 -
光盘 既支持随机访问 也支持 顺序访问。
-
磁盘上的文件以 块 为单位进行读写。
-
在下列有关旋转延迟的叙述中,不正确的是()。
A.旋转延迟的大小与磁盘调度算法无关
B.旋转延迟的大小取决于磁盘空闲空问的分配程序
C.旋转延迟的大小与文件的物理结构有关
D.扇区数据的处理时间与旋转延迟的影响较大
答案: D D D
扇区数据的处理时延主要影响传输时间。 -
下列选项中,磁盘逻辑格式化程序所做的工作是( )。
Ⅰ. 对磁盘进行分区
Ⅱ. 建立文件系统的根目录
Ⅲ. 确定磁盘扇区校验码所占位数
Ⅳ. 对保存空闲磁盘块信息的数据结构进行初始化
A. 仅Ⅱ
B. 仅Ⅱ、Ⅳ
C. 仅Ⅲ、Ⅳ
D. 仅Ⅰ、Ⅱ、Ⅳ
答案: B B B
一个新的磁盘就是一个空白板,必须分成扇区以便磁盘控制能够读写,这个过程称为低级格式化(物理格式化)。
低级格式化为磁盘的每个扇区采用特殊的数据,包括校验码,因此III不正确。
I,为了使用磁盘存取文件,操作系统还需要将自己的数据结构记录在磁盘上。这分为两步骤,第一步是将磁盘分为由一个或者多个柱面组成的分区,每个分区可以作为一个独立的磁盘,因此I不正确。
分区之后,第二步是 逻辑格式化(创建文件系统),这一过程中,操作系统将初始的文件系统数据结构存储到磁盘上,这些数据结构包括空闲和已分配的空间和一个初始为空的目录。
5. I/O管理
-
以下关于设备属性的叙述中,正确的是()。
A.字符设备的基本特征的可寻址到字节,即能指定输入的源地址或输出的目标地址
B.共享设备必须是可寻址的和可随机访问的设备
C.共享设备是指同一时间内运行多个进程同时访问的设备
D.在分配共享设备和独占设备时都可能引起进程死锁
答案: B B B
A,可寻址是块设备的基本特征。
C,共享设备同一时刻最多允许一个进程访问。
D,分配共享设备不会引起死锁。 -
磁盘设备的I/O控制主要是采取()方式。
A.位
B.字节
C.帧
D.DMA
答案: D D D
DMA方式主要用于块设备,而磁盘是典型的块设备。
ABC,都不是I/O控制方式。 -
在设备控制器中用于实现对设备控制功能的是()。
A.CPU
B.设备控制器与处理器的接口
C.I/O逻辑
D.设备控制器与设备的接口
答案: C C C
接口用来传输信号;
I/O逻辑 即 设备控制器,用来实现对设备的控制。 -
将系统中的每一台设备按某种原则统一进行的编号,这些编号作为区分硬件和识别设备的代号,该编号称为设备的()。
A.绝对号
B.相对号
C.类型号
D.符号
答案: A A A
计算机系统为每台设备确定了一个编号以区分和识别设备,这个确定的编号成为设备的绝对号。 -
I/O中断是CPU与通道协调工作的一种手段,所以在()时,便要产生中断。
A.CPU执行启动I/O指令而被通道拒绝接收
B.通道接收了CPU的启动请求
C.通道完成了通道程序的执行
D.通道在执行通道程序的过程中
答案: C C C
CPU启动通道时不管成功与否,通道都要回答CPU;
通道在执行通道程序的过程中,CPU与通道并行;
当通道完成了通道程序的执行,便发出I/O中断向CPU报告。 -
将系统调用参数翻译成设备操作命令的工作由( )完成。
A.用户层I/O
B.设备无关的操作系统软件
C.中断处理
D.设备驱动程序
答案: B B B
系统调用命令是操作系统提供给用户的通用接口,不会因为设备的变化而改变。
D,设备驱动程序程序负责操作系统发出的I/O命令,它因设备的不同而不同。 -
用户程序发出磁盘I/O请求之后,系统的正确处理流程是:用户程序→系统调用处理程序→设备驱动程序→中断处理程序。
操作系统的I/O子系统由四个层次组成,每一层明确规定了与临近层次的接口,合理的顺序是:用户层、设备无关的软件曾、设备驱动程序、中断处理程序。
当用户使用设备时,首先在用户程序中发起一次系统调用,操作系统的内核接收到该系统调用请求之后请求调用处理程序进行处理,再转到相应的设备驱动程序,当设备准备好或者所需要的设备到达之后设备发出中断,将数据按照上述调用顺序逆向回传到用户程序中。 -
设备的独立性是指()。
A.设备独立于计算机系统
B.系统对设备的管理是独立的
C.用户编程时使用的设备与实际使用的设备无关
D.每一台设备都有一个唯一的编号
答案: C C C
设备的独立性主要是指用户使用设备的透明性,即使得用户程序与实际使用的物理设备无关。 -
下面设备中属于共享设备的是()。
A.打印机
B.磁带机
C.磁盘
D.磁带机和磁盘
答案: C C C
共享设备是在一个时间间隔内可以被多个进程同时访问。
以上只有磁盘满足。
B,磁带机旋转到所需的读写位置时间花费长。 -
引入高速缓冲的主要目的是 改善CPU与I/O设备速度不匹配的问题。
-
下列选项中,不能改善磁盘设备I/O性能的是()
A.重排I/O请求次序
B.在一个磁盘上设置多个分区
C.预读和滞后写
D.优化文件物理块的分布
答案: B B B
A,重排I/O请求次序即I/O调度。
C,缓冲区结合预读和滞后写积水对具有重复性以及阵发性的I/O进程改善磁盘的I/O性能很有帮助。
D,优化文件物理块的分布可以减少寻找时间与延迟时间,从而提高磁盘性能。 -
在采用SPOOLing技术的系统中,用户的打印结果首先被送到( )。
A.磁盘固定区域
B.内存固定区域
C.终端
D.打印机
答案: A A A
输入井和输出井是在磁盘上开辟的存储空间。输入井是模拟脱机输入时的磁盘设备,用于暂存I/O设备输入的数据;输出井是模拟脱机输出的磁盘,用于暂存用户程序的输出数据。
为了缓和CPU,打印结果首先被送到磁盘固定区域的输出井。
拓展:输入/输出缓冲区则是在内存中开辟的,缓冲池通常在主存中建立。 -
设从磁盘将一块数据传送到缓冲区所用实际为80μs,将缓冲区中数据传送到用户区所用时间为40μs,CPU处理数据所用的时间为30μs。则处理该数据,采用单缓冲传送磁盘数据,系统所用总时间为()。
A. 120μs
B. 110μs
C. 150μs
D. 70μs
答案: A A A -
考虑单用户计算机上的下列I/O操作,需要使用缓冲技术的是()。
Ⅰ.图形用户界面下使用鼠标
Ⅱ.在多任务操作系统下的磁带驱动器(假设没有设备预分配)
Ⅲ.包含用户文件的磁盘驱动器
Ⅳ.使用存储器映射I/O,直接和总线相连的图形卡
A.Ⅰ、Ⅲ
B.Ⅱ、Ⅳ
C.Ⅱ、Ⅲ、Ⅳ
D.全选
答案: D D D
I,当鼠标移动时,如果由高优先级的操作产生,为了记录鼠标活动的情况,就必须使用缓冲技术。
II,由于磁盘驱动器和目标(或源I/O设备)之间的吞吐量不同,必须采用缓冲技术。 -
SPOOLing技术(假脱机技术)是操作系统中采用的一种将独占设备改造为共享设备的技术。通过这种技术后处理的设备成为虚拟设备。
SPOOling是一种以空间换取时间的技术。 -
采用SPOOLing技术的主要目的是()
A.提供内存和磁盘的接口
B.减轻用户编程负担
C.提高CPU和设备交换信息的速度
D.提高独占设备的利用率
答案: D D D
SPOOling技术需要使用磁盘空间(输入井和输出井)和内存空间(输入/输出缓冲区),不需要外围设备。 -
SPOOling系统主要包括:输入井和输出井、输入缓冲区和输出缓冲区、输入进程和输出进程。
以上三个部分分别由 预输入程序、井管理程序 和 缓输出程序管理,以保证系统的正常运行。 -
在关于SPOOLing的叙述中,()描述是不正确的。
A.SPOOLing系统中不需要独占设备
B.SPOOLing系统加快了作业执行的速度
C.SPOOLing系统使独占设备变成共享设备
D.SPOOLing系统利用了处理器与通道并行工作的能力
答案: A A A
SPOOLing技术是一种典型的虚拟设备技术,它将独享设备虚拟城共享设备,使得多个进程共享一个独占设备,从而加快了作业执行的速度、提高了独占设备的利用率。
既然是将独占设备虚拟成共享设备,所以必须先有独占设备才可以。 -
用于设备分配的数据结构有哪些?它们之间的相互关系是什么?
答案:用于设备分配的数据结构有系统设备表(SDT)、设备控制表(DCT)、控制器控制表(COCT)和通道控制表(CHCT)
SDT整个系统只有一张,记录系统中全部设备的情况,是系统范围的数据结构。
每个设备有一张DCT,以记录本设备的情况。
每个控制器有一张COCT。
每个通道有一张CHCT。
SDT中有一个DCT指针,DCT中有一个COCT指针,COCT中有一个CHCT指针,CHCT中有一个COCT指针。
第三轮
1. 绪论
-
下列哪个观点不是描述操作系统的典型观点______。
A. 操作系统是众多软件的集合
B. 操作系统是于用户和计算机之间的接口
C. 操作系统是资源的管理者
D. 操作系统是虚拟机
答案: A A A
A只是从软件的量上予以说明,但没指出操作系统的真正作用。 -
处理外部中断时,应该由操作系统保存的是()。
A.程序计数器(PC)的内容
C.块表(TLB)的内容
B.通用寄存器的内容
D.Cache中的内容
答案: C C C
硬件上,中断隐指令 功能:关中断、保存断点、中断向量入口
随后软件(即操作系统)保存通用寄存器内容等。 -
下列关于批处理系统的叙述中,正确的是( )。
Ⅰ.批处理系统允许多个用户与计算机直接交互
Ⅱ.批处理系统分为单道批处理系统和多道批处理系统
Ⅲ.中断技术使得多道批处理系统的I/O设备可与CPU并行工作
A. 仅Ⅱ、Ⅲ
B. 仅Ⅱ
C. 仅Ⅰ、Ⅱ
D. 仅Ⅰ、Ⅲ
答案: A A A
I,批处理系统中,将作业一次以脱机的方式输入到磁带上,监督程序一次执行磁带上的作业,作业执行时用户无法干涉其运行。 -
假设一台计算机有32MB内存,操作系统占用2MB,每个用户进程占用10MB。用户进程等待I/O的时间为80%,问CPU的利用率为多少?
若再增加32MB内存,则CPU的利用率又为多少?
答案:1. 只有所有进程都在等待I/O时,CPU才会空闲下来。当只有32MB内存时,一共有3个用户进程,CPU的利用率为 $ 1-(0.8)^3 = 48.8% $ . 2. 若再增加32MB内存,则一共6个用户进程,CPU利用率为 1 − ( 0.8 ) 6 = 73.8 % 1-(0.8)^6 = 73.8% 1−(0.8)6=73.8% -
指出库函数与系统调用的区别与联系。
答案:区别:库函数是语言或应用程序的一部分,可以运行在用户空间中。而系统调用是系统的一部分,是内核提供给用户的程序接口,运行在内核空间中。联系:许多库函数会使用系统调用来实现其功能。没有使用系统调用的库函数执行效率通常比系统调用高,因为使用库函数时,需要上下文的奇幻以及状态的转变(从用户态转为核心态)。
2. 进程管理
-
并发进程执行的相对速度是()。
A.由进程的程序结构决定的
B.由进程自己来控制的
C.与进程调度策略有关的
D.在进程被创建时确定的
答案: C C C -
对进程的管理和控制使用( )。
A.指令
B.原语
C.信号量
D.信箱
答案: B B B
原语通常由若干条指令组成,用来实现某一个特定的操作。通过一段不可分割或不可终端的程序实现其功能。
引入原语的目的是为了实现进程的通信和控制。因为进程的管理和控制包括进程创建、调度、终止等,这些操作均不可中断,因此这些操作应该是原语。 -
下面哪个特征是并发程序执行的特点()。
A.程序执行的间断性
B.相互通信的可能性
C.产生死锁的可能性
D.资源分配的动态性
答案: A A A
与顺序执行相比,程序并发执行的特征有:间断性、失去封闭性、不可再现性。 -
进程调度算法中,可以设计成“可抢占式”的算法有______。
A.先来先服务调度算法
B.最高响应比优先
C.最短作业优先
D.时间片轮转调度算法
答案: D D D
常见的进程调度算法有先来先服务、优先级、时间片轮转及多级反馈队列。
最高响应比优先、最短作业优先适用于作业调度。 -
以下______不会引起进程创建。
A. 用户登录
B. 作业调度
C. 设备分配
D. 进程请求
答案: C C C
导致一个进程去创建另外一个进程的典型事件有:用户登录、作业调度、提供服务、应用请求。 -
属于同一个进程的各线程不能共享栈空间。
-
进程创建的若干个线程之间不能共享 某个线程的栈指针。
-
若某单处理器多进程系统中有多个就绪态进程,则下列关于处理机调度的叙述中,错误的是()
A.在进程结束时能进行处理机调度
B.创建新进程后能进行处理机调度
C.在进程处于临界区时不能进行处理机调度
D.在系统调用完成并返回用户态时能进行处理机调度
答案: C C C
C,进程在临近区时不允许其他相关进程进入临界区,因为当前进程正在访问临界资源,其他进程无法访问。
但是问题的关键在于还存在与这类进程无关的其他进程。系统可以暂停该进程的执行,先去处理其他无关的进程,处理完之后再返回继续执行剩余的临界区代码。 -
银行家算法是避免死锁的算法,并没有破坏产生死锁的4个必要条件中的任何一个。
-
某系统有同类资源m个,供n个进程共享。如果每个进程最多申请x个资源(其中1≤x≤m)。请证明:当n(x-1)+1≤m时,系统不会发生死锁。
答案:由于每个进程最多可以申请x个资源,再最坏的情况下,每个进程都得到了 x-1 个资源,并且现在均需要申请所需的最后一个资源。此时,系统剩余资源数为 m-n(x-1).
如果此时系统剩余资源数大于等于1,就可以使得这n个进程中的任意一个进程获得所需的全部资源。该进程执行完毕之后,释放所占资源,以供其他资源使用,从而每个进程都可以执行结束。 -
4个哲学家甲、乙、丙、丁,坐在圆桌前思考问题。甲乙间有筷子0,乙丙间有筷子1,依次类推。每个哲学家饥饿时,就试图取用两边的筷子,只有两根筷子都被拿到才开始进餐。请用P、V操作写出哲学家活动的同步执行程序。
答案:至多允许3个哲学家进餐Semaphore chopstick[4] = {1,1,1,1}; Semaphore S = 3; //同时就餐人数上限 P(i){ while( true){ P(S); P(chopstick[i]); P(chipstick[i+3] mod 4); eating; V(chopstick[i]); V(chipstick[i+3] mod 4); V(S); } }
另外提供两种方法:1. 可以采用 甲丙两人分别拿起各自右手边的筷子,乙丁则相反。 2. 仅当哲学家的左右两根筷子都可用时,才允许拿起筷子就餐。
3. 内存管理
-
目标程序所对应的地址空间是( )。
A.绝对地址空间
B.虚拟地址空间
C.存储空间
D.物理地址空间
答案: B B B -
以下有关外层页表的叙述中错误的是( )。
A.反应在磁盘上页面存放的物理位置
B.外层页表是指向页表的页表
C.为不连续(离散)分配的页表再建立一个页表
D.有了外层页表则需要一个外层页表寄存器就能实现地址变换
答案: A A A
外层页表不能表示页面的物理位置,只是在页表较多时 为页表建立一个页表。
D,因为多了一层页表,因此也就需要一个额外的寄存器来完成地址转换。 -
使用修改位的目的是( )。
A.实现LRU页面置换算法
B.实现NRU页面置换算法
C.在快表中检查页面是否进入
D.检查页面是否最近被写过
答案: D D D
修改位表示该页在调入内存之后是否被修改过,主要是供置换页面时参考,但并不是为了实现某种页面置换算法而使用的。 -
在分页虚拟存储管理中,“二次机会”调度策略和“时钟”调度策略在决定淘汰哪一页时,都用到了()。
A.虚实地址变换机构
B.快表
C.引用位
D.修改位
答案: C C C
“二次机会” 和 “时钟” 调度策略的相同之处:如果当前页面刚刚被访问过(即引用位=1),则给予第二次驻留机会。 -
分区分配算法中,
最佳适应算法:每次为作业分配内存空间时,总是找到能满足空间大小需要的最小的空间分区给作业。
最差适应算法:空闲分区按照容量递减的次序排列。每次为作业分配内存空间时,总是将满足要求且最大的内存空间分配给作业。 -
如果对经典的分页管理方式的页表进行细微改造,允许同一个页表的两个页表项指向同一个物理块,由此会有什么结果?怎样利用这种结果,减少内存复制操作(将一个存储段的内容复制到另一个存储段)的时间?在经过改造的存储系统里,修改一个页面中几个字节的值,会对其他页面产生什么影响?
答案:让同一个页表的两个页表项指向同一个物理块,用户可以利用此特点来 共享 该页的代码或数据。如果代码是可重入的,这种方法可以节省大量的内存空间。
实现内存“复制”操作时,不需要将页面的内存逐字节复制,只需要在页表里将指向该页面的指针复制到代表目的地址的页表项即可。
在这种系统中,如果通过一个页表项修改了一个页面的几个字节,那么通过共享该页面的其他页表项表示的地址,所访问的值也会发生变化。
4. 文件系统
-
考虑一个文件存放在100个数据块中。文件控制块、索引块或索引信息都驻留内存。那么如果(),不需要做任何磁盘I/O操作。
A.采用连续分配策略,将最后一个数据块搬到文件头部
B.采用单级索引分配策略,将最后一个数据块插入文件头部
C.采用隐式链接分配策略,将最后一个数据块插入文件头部
D.采用隐式链接分配策略,将第一个数据块插入文件尾部
答案: B B B
A,采用连续分配策略。连续分配策略下是没有指针的,对于每一个数据块的访问都可以直接用 块号 寻址到,不过要把最后一个数据块放到文件头部,先要把最后一块读入内存,然后倒数第二块放到最后一块…第一块放到原本第二块的位置,最后才能把内存中原本的最后一块放入第一块的位置,也就是文件的头部。读取和写入数据块都需要I/O操作,所以需要很多次磁盘I/O操作。
C,采用隐式链接分配策略,链接分配的指针都存放在数据块的末尾,也就是外存中,所以要先在内存中读出第一块的地址,然后依次读出后续块,直到找到最后一块,并在最后一块数据块的数据块指针中写入原来的第一块的地址,这里需要写外存,最后在内存中的文件首地址为原本的第二块,所以需要多次磁盘I/O操作。
D,要读出最后一块需要多次磁盘I/O操作,修改原本的最后一块的指针指向原本的第一块,还要改变内存中的文件首地址为原本的第二块,最后再把新的最后一块指针置为NULL,需要多次磁盘I/O操作。 -
通常对文件系统来说,文件名及其属性可以集中在( )。
A.目录
B.索引
C.字典
D.作业控制块
答案: A A A
文件和文件控制块一一对应。
人们把文件控制块的有序集合称为文件目录,即一个文件控制块就是一个文件目录项。
文件控制块中包含有文件名、文件结构、文件的物理位置、存取控制信息和管理信息。 -
下面关于目录检索的叙述中,正确的是______。
A. 由于Hash法具有较快的检索速度,故现在操作系统中已开始用它取代传统的顺序检索法
B. 在利用顺序检索法时,对树形目录应采用文件的路径名,且应从根目录开始逐级检索
C. 在顺序检索法的查找过程中,只要有一个文件分量名未找到,便应停止查找
D. 在顺序检索法的查找完成时,即应得到文件的物理地址
答案: C C C
B,为了加快文件查找速度,可以设置当前目录,文件路径可以从当前目录进行查找。
D,顺序检索法查找完成后,得到文件的逻辑地址。 -
文件的顺序存取指的是()。
A.按终端号一次存取
B.按文件记录的逻辑序号逐一存取
C.按文件物理块号一次存取
D.按文件逻辑记录的大小逐一存取
答案: B B B
顺序存取文件是按其在文件中的逻辑顺序依次存取的,只能从头往下读。 -
文件系统中,设立打开文件(Open)系统功能调用的基本操作是()。
A.把文件信息从辅存读到内存
B.把文件的控制管理信息从辅存读到内存
C.把磁盘的超级块从辅存读到内存
D.把文件的FAT表信息从辅存读到内存
答案: B B B
打开文件指系统将指定文件的属性(包括该文件在外存上的物理位置)从外存复制到内存打开文件表的一个表目中,并将该表目的编号(即索引)返回给用户。
D,并非所有的文件系统都采用FAT(文件配置表)系统。 -
若某文件系统索引结点(inode)中有直接地址项和间接地址项,则下列选项中,与单个文件长度无关的因素是()
A.索引结点的总数
B.间接地址索引的级数
C.地址项的个数
D.文件块大小
答案: A A A
一个文件对应一个索引节点,索引节点的总数只能说明有多少个 文件。 -
某文件系统的簇和磁盘扇区大小分别为1KB和512B。若一个文件的大小为1026B,则系统分配给该文件的磁盘空间大小是( )。
A. 1026B
B. 1536B
C. 1538B
D. 2048B
答案: D D D
操作系统为了改善磁盘访问时间,以簇为单位进行空间分配。 -
下列选项中,磁盘逻辑格式化程序所做的工作是( )。
Ⅰ. 对磁盘进行分区
Ⅱ. 建立文件系统的根目录
Ⅲ. 确定磁盘扇区校验码所占位数
Ⅳ. 对保存空闲磁盘块信息的数据结构进行初始化
A. 仅Ⅱ
B. 仅Ⅱ、Ⅳ
C. 仅Ⅲ、Ⅳ
D. 仅Ⅰ、Ⅱ、Ⅳ
答案: B B B
一个新的磁盘就是一个空白板,必须分成扇区以便磁盘控制器能够读和写。这个歌过程称为 低级格式化(物理格式化)。低级格式化为磁盘的每一个扇区采用特别的数据结构,包括校验码。为了使用磁盘存储文件,操作系统还需要将自己的数据结构记录在磁盘上,这包括两步,第一步将磁盘分为由一个或多个柱面组成的分区,每一个分区可以作为独立的磁盘,在分区之后,第二步是逻辑格式化(创建文件系统),这一步中,操作系统将初始的文件系统数据结构存储在磁盘上,这些数据结构包括空闲的和已经分配的空间和一个初始为空的目录。 -
磁盘高速缓冲设在()中,其主要目的是提高磁盘I/O的速度。
A.磁盘控制器
B.磁盘
C.内存
D.Cache
答案: C C C
磁盘告诉缓存是一种 软件机制,它允许系统把通常存放在磁盘上的一些数据保留在内存中,以便对那些数据进一步访问而不在访问磁盘。 -
文件F由200条记录组成,记录从1开始编号。用户打开文件后,欲将内存中的一条记录插入到文件F中,作为其第30条记录。请回答下列问题,并说明理由。
(1)若文件系统采用连续分配方式,每个磁盘块存放一条记录,文件F存储区域前后均有足够的空闲磁盘空间,则完成上述插入操作最少需要访问多少次磁盘块?F的文件控制块内容会发生哪些改变?
(2)若文件系统采用链接分配方式,每个磁盘块存放一条记录和一个链接指针,则完成上述插入操作需要访问多少次磁盘块?若每个磁盘块大小为1KB,其中4个字节存放链接指针,则该文件系统支持的文件最大长度是多少?
答案:1> 文件采用连续分配方式时,插入记录需要移动其他记录块。整个文件有200条记录,要插入的记录作为第30条,则前移,放盘次数 等于 读出和存回 各一次,此时一共58次,存回第30条记录放盘1次,一共放盘59次数。2> 文件采用链接分配方式时,插入记录并不需要移动其他记录,只需要找到相应的记录,修改指针即可。插入的记录为第30条记录,需要找到文件系统的第29块,此时访问磁盘29次,然后把下一块地址赋予新块,把新块存回内存访问磁盘1次,然后修改内存中第29块的下块地址字段,再存回磁盘,一共访问磁盘31次。4B一共32位,可以寻址4G块存储块,每块大小1KB,则一共4080GB.
5. 设备管理
-
在关于SPOOLing的叙述中,( )描述是错误的。
A.SPOOLing系统中必须使用独占设备
B.SPOOLing系统加快了作业执行的速度
C.SPOOLing系统使独占设备变成共享设备
D.SPOOLing系统提高处理机与通道并行工作的能力
答案: D D D
SPOOLing是操作系统中采用的一种将 独占设备 改造为 共享设备的技术,它有效地减少了进程等待读入/读出信息的时间,因此加快了作业执行的速度。
但是,不论是否有通道,SPOOLing技术都可以运行。 -
在采用spooling技术的系统中,用户作业的打印输出结果首先被送到( )。
A.磁盘固定区域
B.内存固定区域
C.终端
D.缓冲区
答案: A A A
采用SPOOling技术的操作系统中,用户的打印数据首先由内存经过缓冲区传递至输出井暂存,等输出设备(打印机)空闲时再将输出井中的数据经过缓冲区传递到输出设备上。而输出井通常是再磁盘上开辟的一块固定存储区。 -
缓冲技术中的缓冲池在______中。
A.内存
B.外存
C.ROM
D.寄存器
答案: A A A
注意与输入井和输出井的区别(输入井、输出井是在 磁盘 上开辟的区域)
缓冲的实现方法有两种:一种是硬件缓冲器实现,但是成本太高,只在一些关键部件使用;另一种是在内存中划出一片存储区,专门用来临时存放输入输出数据,即缓冲区。
根据系统设置的缓冲区个数,可以将缓冲技术分为单缓冲、双缓冲、循环缓冲和缓冲池。
无论是单缓冲,双缓冲,循环缓冲还是缓冲池,都是在 内存 中。
拓展:为了使对哦个进程能够有效地同时处理输入和输出,一般采用缓冲池技术。 -
下面关于设备独立性的论述中正确的是()。
A.设备独立性是指I/O设备具有独立执行I/O功能的一种特性
B.设备独立性是指用户程序独立于具体使用的物理设备的一种特性
C.设备独立性是指能独立实现设备共享的一种特性
D.设备独立性是指设备驱动程序独立于具体使用的物理设备的一种特性
答案: B B B
设备独立性只是用户程序独立于具体物理设备的一种特性。
D,设备驱动程序是不可能独立于具体物理设备的,因为驱动程序就是为了具体物理设备而专门定制的。 -
下列关于管道(Pipe)通信的叙述中,正确的是()
A. 一个管道可实现双向数据传输
B. 管道的容量仅受磁盘容量大小限制
C. 进程对管道进行读操作和写操作都可能被阻塞
D. 一个管道只能有一个读进程或一个写进程对其操作
答案: C C C
管道实际上是一种固定大小的缓冲区。
管道对于管道两端的进程而言,就像一个文件,但它不是普通的文件,它不属于文件系统,而是自立门户,单独构成一个软件系统,并只存在于内存中。
它类似于通信中半双工信道的进程通信机制,一个管道可以实现双向传输,但是同一时刻最多只有有一个方向的传输,不能两个方向同时进行。
管道的容量大小通常是内存中的一页,它的大小不受磁盘的限制。
当管道满的时候,进程写管道会被阻塞;当管道空时,进程读管道会被阻塞。 -
用户程序发出磁盘I/O请求之后,系统正确的处理顺序为:用户程序→设备独立性软件→设备驱动程序→中断处理程序。
-
下列关于SPOOLing技术的叙述中,错误的是( )。
A. 需要外存的支持
B. 需要多道程序设计技术的支持
C. 可以让多个作业共享一台独占设备
D. 由用户作业控制设备与输入/输出井之间的数据传送
答案: D D D
D,设备与输入/输出井之间的传送是由 系统 实现的。
B,单道批处理系统无法满足SPOOLing技术。 -
系统将数据从磁盘读到内存的过程包括以下操作:
①DMA控制器发出中断请求
②初始化DMA控制器并启动磁盘
③从磁盘传输一块数据到内存缓冲区
④执行“DMA结束”中断服务程序
正确的执行顺序是( )。
A.③→①→②→④
B.②→③→①→④
C.②→①→③→④
D.①→②→④→③
答案: B B B -
虚拟设备 是通过 SPOOLing技术 实现的。
-
什么是DMA方式?它与中断方式的主要区别是什么?
答案:DMA是Direct Memory Access的缩写,也就是 直接存储器访问。DMA 使用DMA控制器来控制一个数据块的传输,而CPU只需要在一个数据块 传输的开始阶段设置好传输所需要的控制信息 并 在传输结束阶段做进一步处理 即可 的传传输控制方式。其基本思想是在I/O设备和内存之间开启一个可以直接传输数据的通路。
中断驱动I/O控制方式 是 每个数据传输后即发出中断,而DMA方式是在一批数据传输完毕之后才中断;中断驱动I/O控制方式的传输由CPU控制,而DMA方式中只有数据块传输的开始阶段和结束阶段在DMA控制下,在传输过程中由DMA控制器控制。所以DMA方式比中断方式通过硬件的增加大大减少了中断次数。 -
考虑56Kbit/s调制解调器的性能,驱动程序输出一个字符后就阻塞,当一个字符打印完毕后,产生一个中断通知阻塞的驱动程序,输入下一个字符,然后再阻塞。如果发消息、输出一个字符和阻塞的时间总和为0.1ms,那么由于处理调制解调器而占用的CPU时间比率是______(假设每个字符有一个开始位和一个结束位,共占10位)。
A. 56%
B. 57%
C. 58%
D. 59%
答案: A A A
每一个字符占10位,在56kbit/s 的速率下,1s内传送5600个字符,即产生5600次中断,每个中断需要0.1ms,则中断花费的时间为560ms,占560ms/1s=56%. -
为什么要引入设备独立性?如何实现设备独立性?
答案:引入设备独立性可以使应用程序独立于具体的物理设备。此时,用户用 逻辑设备名 来申请使用某类物理设备,当系统中有多台该类设备时,系统可以将其中的一台分配给请求进程,而不必局限于某一个指定的设备,这样可以显著改善资源的利用率及可适应性。
为了实现设备独立性,选哟在 设备驱动程序 之上设置一层 设备独立性软件,用来执行所有I/O设备的公用操作,并给用户层软件提供统一的接口。关键是系统中必须设置一张逻辑设备表来进行逻辑设备到物理设备的映射。
第四轮
第一章 操作系统概述
-
操作系统在计算机系统中位于( )之间。
A. CPU和用户之间
B. 中央处理器CPU
C. 计算机硬件和用户软件
D. 计算机硬件和软件
答案: C C C
操作系统是运行在计算机硬件上的最基本的系统软件,负责对各种计算机资源的管理,也控制和管理所有支撑软件和应用软件,可以看成是 计算机硬件 和 用户之间的一个接口。 -
操作系统四大功能是:1. 处理器管理。2. 存储器管理。3. 设备管理。4. 文件管理。
存储器管理指对 内存 的管理。 -
多道程序设计的程序是多道、宏观上并发,微观上串行。
-
有一台计算机具有1MB内存,操作系统占用200KB,每个用户占用200KB。如果用户进程等待I/O的时间为80%,若增加1MB内存,则CPU的利用率提高多少?
答案:设每个进程等待I/O的百分比为p,则n个进程同时等待I/O的概率是 p n p^n pn,当进程同时等待I/O时,CPU是空闲的,因此CPU的利用率为 1 − p n 1-p^n 1−pn。
则可得CPU的利用率提高了47%. -
当计算机区分了核心态和用户态指令之后,从核心态到用户态的转换是由操作系统程序执行后完成的,而用户态到核心态的转换则是由( )完成的。
A.硬件
B.核心态程序
C.用户程序
D.中断处理程序
答案: A A A
从用户态到内核态的转换是由用户程序执行访管指令,引起一次中断,触发中断后,硬件中断机制将计算机状态置为内核态。 -
系统调用只能在用户态下使用,只能在核心态下执行。
-
缺页中断属于内中断(异常),时钟中断属于外部中断。
第二章 处理器管理
-
只有从 运行态到阻塞态 的转换是由 进程自身 决定的。
-
在下述关于父进程和子进程的叙述中,正确的是_____。
A. 撤销子进程时,应该同时撤销父进程;
B. 父进程创建了子进程,因此父进程执行完了,子进程才能运行;
C. 撤销父进程时,应该同时撤销子进程;
D. 父进程和子进程可以并发执行;
答案: D D D
C,撤销父进程时候不一定会撤销子进程。 -
进程在运行过程中,不能自行修改自己的进程控制块,必须操作系统通过相关原语来修改。
-
同一进程和不同进程内的线程都可以并发执行。
-
内核支持线程的切换都需要内核的支持。
-
若有一进程拥有100个线程,这些线程都属于用户级线程,则在系统调度执行时间上占用的时间片是()。
答案:1. -
作业是以用户任务为单位,进程是以操作系统控制为单位。
-
当所有作业同时到达时,短作业优先调度算法才能使得作业的平均周转时间最小。
第三章 进程同步、通信和死锁
- 在操作系统中,要对并发进程进行同步的原因是( )。
A.进程必须在有限的时间内完成
B.进程具有动态性
C.并发进程是异步的
D.进程具有结构性
答案: C C C
进程同步是指进程之间具有一种直接的协同工作的关系,这些进程的并发是异步的,它们相互合作,共同完成一项任务。
我的微信公众号
最后
以上就是俭朴小蜜蜂为你收集整理的【操作系统】操作系统纠错本考研操作系统纠错本的全部内容,希望文章能够帮你解决【操作系统】操作系统纠错本考研操作系统纠错本所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复