# 第一周
# 选择
计算机是按照( )模型工作的?C
- A. 布尔
- B. 居里夫人
- C. 图灵
- D. 牛顿
关于操作系统基本概念,正确的是( )D
- A. 操作系统本身是一种硬件程序
- B. 操作系统的基本作用是管理用户的程序
- C. C 编译器是操作系统的一部分
- D. 我们通过操作系统来管理计算机硬件资源
引导程序启动时,为何需要将代码从内存的 0x7c00 拷贝至 0x9000? C
- A. 因为开发的程序员想炫技,这样显得很悬很酷有档次
- B. 因为开发程序员有强迫症,一定要移到整数字节的地方
- C. 为给后面载入操作系统腾出地方
- D. 为了给中断向量表腾出空间
实模式与保护模式的说法正确的是( )B
- A. 保护系统能够保护系统不被修改
- B. 它们对寻址的解释方式不同
- C. 它们都是操作系统启动时使用的寻址方式
- D. 系统开始运行后,操作系统处于实模式
# 填空
程序只有被装入( )中才能被运行。
- 内存
按下电源开关,( )(提示:四个大写字母)从引导扇区将操作系统代码载入到内存。
- BIOS
# 第二周
# 选择
单个用户通常不能总是使得 CPU 和 I/O 设别都忙,通过( )的方式可以保证 CPU 总有作业执行。B
- A. 多核处理
- B. 多道程序设计
- C. 内核并行
- D. 多程序调用
下列哪个不是操作系统关心的问题()?B
- A. 管理计算机裸机
- B. 高级程序设计语言的编译
- C. 设计、提供用户程序与硬件系统的接口
- D. 管理计算机系统资源
下面关于操作系统的说法, 错误的是:C
- A. 管理资源的程序
- B. 管理资源和用户程序执行的程序
- C. 能方便用户编程的程序
- D. 能使系统资源提高效率的程序
下列( )资源不是操作系统应该管理的。C
- A. CPU
- B. 内存
- C. 源程序
- D. 外存
关于内存的说法正确的是( ).C
- A. 内存是程序存放的地方。
- B. 内存和磁盘都是 RAM
- C. 内存是一种 RAM,磁盘是一种 ROM
- D. 内存是用寄存器组成的
# 填空
操作系统的运行是一种( )驱动机制。
- 中断
如果一个进程需要从键盘输入一些字符,则应该在键盘输入之前还是之后发出中断信号?请在括号里填写之前或之后( )。
- 之后
# 判断
多道程序设计的主要目的是提高 CPU 的运行频率。
- 错
计算机中所有的硬件与内存进行数据交换时都需要 CPU 的参与。
- 错
多道程序设计是指有两道以上的程序可以同时使用 CPU。
- 错
当程序运行错误如发生了除零操作,这也会触发中断。
- 对
操作系统是一种软硬件系统,既包括软件也包括一些硬件,离开了硬件操作系统无法工作。
- 错
# 第三周
# 选择
当前操作系统将时间片设为 10 ms,为此,操作系统需要设置时钟为 10 ms,设置时钟的指令应运行在()。 D
- A. 系统模式
- B. 用户模式
- C. 应用模式
- D. 内核模式
操作系统对硬盘进行 I/O 控制时,通常采用 () 方式。D
- A. 直接程序控制
- B. 中断控制
- C. 通道控制
- D. 直接内存访问
执行系统调用的过程包括如下主要操作:
① 返回用户态 ② 执行 trap 指令 ③ 传递系统调用参数 ④ 执行相应的服务程序
正确的执行顺序是 ( )
- 3-2-4-1
DMA 的主要目的是()。A
- A. 提高数据传输效率
- B. 提高 CPU 利用率
- C. 提高系统调度效率
- D. 提高设备利用率
()程序可以执行特权指令。B
- A. 超级用户
- B. 操作系统
- C. 特权用户
- D. ROOT 用户
下列选项中,在用户态执行的是( )D
- A. 内存的缺页处理程序
- B. 进程调度程序
- C. 时钟中断处理程序
- D. 命令解释程序
在操作系统中,一个进程没有运行结束,就可以开始其它进程的运行,这种方式被称为()。B
- A. 并行
- B. 并发
- C. 多线程
- D. 多通道
计算机开机后,操作系统被加载到( )中。B
- A. EPROM
- B. RAM
- C. BIOS
- D. ROM
操作系统提供给编程人员的接口是()A
- A. 系统调用
- B. 子程序
- C. 库函数
- D. API
# 判断
多道程序设计的主要目的是提高 CPU 的运行频率
- 错
Cache 是一种高速缓存,CPU 只能从 Cache 中获取到下一条要执行的指令。
- 错
开机启动时,操作系统处于内核模式。
- 对
计算机中所有的硬件与内存进行数据交换时都需要 CPU 的参与。
- 错
# 第五周
# 选择
下列()不是实时操作系统设计的主要追求目标。B
- A. 及时响应
- B. 资源利用率
- C. 安全可靠
- D. 快速处理
提高单机资源利用率的关键技术是()D
- A. 交换技术
- B. 虚拟技术
- C. 脱机技术
- D. 多道程序设计技术
批处理系统的主要缺点是()B
- A. CPU 利用率不高
- B. 无交互能力
- C. 系统吞吐量小
- D. 资源利用率低
下列()资源不是操作系统应该管理的。C
- A. 外存
- B. CPU
- C. 源程序
- D. 内存
关于批处理系统与分时系统的说法正确的是()A
- A. 批处理系统不具备交互性
- B. 批处理系统一般没有短期调度
- C. 分时系统不具备交互性
- D. 分时系统一般不具备中期调度
使用 vim 编辑文本的时候,退出并保存的命令是:A
- A. :wq
- B. :rq
- C. :+q
- D. ctrl+s
fd=open ("file",O_RDWR|O_CREAT,0666); 关于这句代码的说法正确的是:C
- A. 文件所有者的权限是读、写、执行
- B. 文件所有者的权限是读
- C. 文件所有者的权限是读、写
- D. 该文件的默认访问权限是 0
下列属于 ubuntu 命令的是:D
- A. remove
- B. makedir
- C.rouch
- D.cp
同一进程经过多次创建,运行在不同数据集上,形成了()的进程。B
- A. 同步
- B. 不同
- C. 互斥
- D. 相同
在多道程序设计的计算机系统中,CPU()D
A. 可以被多个进程同时占用
B. 以上说法都不对
C. 只能完成于一个进程后再开始另一个进程
D. 可以被多个进程交替占用
指出下列 C 语言程序中的内容及相关数据结构位于进程的哪一段。进程的优先级是放在( )。C
- A. 数据与正文段
- B. 堆段
- C. PCB
- D. 栈段
关于 gdb 和 gcc 的说法正确的是:D
- A. gcc 是 C 调试器
- B. gdb 是 C 编译器
- C. gcc 是 C++ 编译器
- D.gdb 是 C 调试器
查看当前路径使用的命令是:D
- A.touch
- B.ls
- C.rm
- D.pwd
下列选项中,会导致用户进程从用户态切换到内核态的操作是()A
- A. read 系统调用
- B. 以上都是
- C. 乘法调用
- D. sin 函数调用
若进程所请求的一次 I/O 完成之后,将使其状态 ()。A
- A. 从阻塞变为就绪
- B. 从就绪变为阻塞
- C. 从运行变为就绪
- D. 从阻塞变为运行
gcc -c mycode.c 会输出:B
- A.a.out.o
- B.mycode.o
- C.a.out
- D.mycode
分时系统追求的目标是()A
- A. 比较快速响应用户
- B. 充分利用 IO 设备
- C. 充分利用内存
- D. 提高系统吞吐率
# 判断
用户创建后的文件是具有默认权限的,默认用户创建的文件权限是 644
- 对
PCB 是进程存在的唯一标记。进程的全局变量应该存储在它的 PCB 里。
- 错
操作系统以进程为最小单位进行调度
- 错
num=read(0,buffer,MAX);
是指从 buffer 读出 MAX 长度的字符到当前文件
- 错
# 第六周
# 选择
通常用户进程被建立之后,( )B
- A. 一直运行在系统中,直到被操作人员撤销
- B. 随着进程运行的正常或不正常结束而撤销
- C. 随着时间片轮转而撤销与建立
- D. 随着进程的阻塞或者唤醒而撤销与建立
小明写了一段代码,创建了子进程和父进程,然后编译运行了这段代码。下列说法正确的是:B
- A. 在子进程中使用 wait 函数可以让子进程等待父进程。
- B. 在父进程里使用 wait 函数可以让父进程等待子进程。
- C. 使用 wait 函数并不能让一个进程等待另一个进程
- D. 以上都不对
一个进程在 CPU 上的时间片结束后,进程将进入( )态。B
- A. 结束
- B. 就绪
- C. 阻塞
- D. 开始
在单处理器系统中,若同时存在 10 个进程,则处于就绪队列中的进程最多有( )个。C
- A. 1
- B. 8
- C. 9
- D. 10
shm_fd=shm_open (name,O_CREAT|O_RDWR,0666); 关于这句代码说法错误的是:A
- A. 该代码在当前路径创建共享文件
- B. 该代码创建的文件断电会消失
- C. 该代码创建的文件可以读写
- D. 该代码创建的文件名是 name
指出下列 C 语言程序中的内容及相关数据结构位于进程的哪一段。
函数通过实参传递值是放在( )。C
- A. PCB
- B. 数据与正文段
- C. 栈段
- D. 堆段
( )必会引起进程切换。B
- A. 一个进程创建后进入就绪态
- B. 一个进程从运行态变为就绪态
- C. 一个进程从阻塞态变为就绪态
- D. 以上都不是
分时系统追求的目标是()B
- A. 充分利用 IO 设备
- B. 比较快速响应用户
- C. 提高系统吞吐率
- D. 充分利用内存
支持多道程序设计的操作系统在运行过程中,不断地选择新进程运行来实现 CPU 的共享,但其中( )不是引起操作系统选择新进程的直接原因。D
- A. 运行进程的时间片用完
- B. 运行进程出错
- C. 运行进程需要等待某一时间发生
- D. 有新进程进入就绪态
下面说法正确的是( )C
- A. 操作系统以线程为单位进行资源分配
- B. 进程在运行前必须获得整个进程运行所需要的所有资源,否则不能开始运行。
- C. 操作系统的资源是有限的,所以有些进程的资源请求会无法得到实时响应。
- D. 操作系统是以进程为最小单位进行调度的。
使用了 shm_open、mmap 等函数完成共享内存代码 test.c,编译命令正确的是:D
- A. gcc test.c -o test
- B. gcc -g test.c -o test
- C. gcc test.c -o test -lpthread
- D. gcc test.c -lrt
提高单机资源利用率的关键技术是()C
- A. 脱机技术
- B. 虚拟技术
- C. 多道程序设计技术
- D. 交换技术
下列关于进程的说法,正确的是( )A
- A. 进程获得处理器运行是通过调度得到的
- B. 优先级是进程调度的重要依据,一旦确定不能改动
- C. 在单处理器系统中,任何一个时刻都有一个进程处于运行状态
- D. 进程申请处理器而得不到满足,其状态变为阻塞状态
一个用户进程的 PCB 是放在( )中。C
- A. 心中
- B. 内存的用户空间
- C. 内存的内核空间
- D. 磁盘
关于批处理系统与分时系统的说法正确的是( )B
- A. 批处理系统一般没有短期调度
- B. 批处理系统不具备交互性
- C. 分时系统一般不具备中期调度
- D. 分时系统不具备交互性
进程是( )C
- A. 由处理器处理的一个程序
- B. 一个独立的程序 + 数据集
- C. PCB 结构与程序和数据的组合
- D. 一个独立的程序
# 填空
POSIX 共享内存通信方式下,所用的映射函数 (将所创建的空间映射到内存) 是:
- mmap
一般我们使用 ( ) 函数来创建子进程。
- fork
system V 共享内存通信方式下所用的创建共享内存对象的函数是:
- shmget
# 判断
多个进程在处理器上执行时,进程之间可能是无关的,也可能是有交互性的。
- 对
进程创建时操作系统应该为进程创建一个 PCB。
- 对
父进程创建了子进程之后,操作系统将会继续执行父进程然后执行子进程。
- 错
进程创建时不需要为其分配 CPU。
对
解析: 进程创建两个条件:加载到内存、分配资源。成功创建后进入就绪态等待 CPU 分配。
一般来说,批处理系统不具备交互能力。
- 对
当一个进程在处理器上的时间片用完后,进程进入结束状态。
- 错
子进程可以被赋予新的功能,并且与父进程并发执行。
- 对
若系统中没有运行进程,则表明系统中一定没有就绪进程。
- 对
fork 函数返回值大于 0 时表示当前是父进程,这个大于 0 的数就是当前父进程的 ID。
- 错
父进程创建了子进程之后,必须等待子进程执行完才能执行父进程。
- 错
一个进程占用的内存空间大小是固定的。
- 错
父进程创建的子进程与父进程的代码一样,子进程的代码不能被再次修改。
- 错
一个进程可以通过访问另一个进程的地址空间进行数据共享。
- 错
父进程创建了子进程之后,子进程与父进程共享内存空间。
- 错
fork 函数返回值为 0 时表示当前的进程是子进程。
- 对
分时操作系统一般不具备长期调度
- 对
在一个计算机系统中,进程的最大数目受外部设备数量的限制
- 错(内存大小限制)
操作系统以进程为最小单位进行资源分配。
- 对
# 第八周
# 选择
进程自身决定()D
- A. 从就绪到运行
- B. 从就绪到阻塞
- C. 从运行到就绪
- D. 从运行到阻塞
进程在处理器上执行时,() A
- A. 进程之间可能是无关的,也可能是有交互性的
- B. 进程之间是无关的,具有封闭特性
- C. 具有并发性,即同时执行的特性
- D. 进程之间有交互性,互相依赖,互相制约,具有并发性
下列描述中,() 不是多线程系统的特长 B
- A. Web 服务器利用线程响应 HTTP 请求
- B. 键盘驱动程序为每个正在运行的应用配备一个线程,用以响应应用的键盘输入
- C. 基于 GUI 的调试程序用不同的线程别处理用户输入、计算和跟踪等操作
- D. 利用线程并行地执行矩阵乘法运算
下面的说法,正确的是 () A
- A. 不管系统中是否有线程,进程都是拥有资源的独立单位
- B. 在引入线程的系统中,进程仍然是调度和分派的基本单位
- C. 不论是系统支持的线程还是用户级线程,其切换都需要内核的支持
- D. 线程是资源分配的单位,进程是调度和分派的单位
下列说法不正确的是() A
- A. 一个线程可以创建一个或多个进程
- B. 一个线程可以创建一个或多个线程
- C. 一个进程可以创建一个或多个线程
- D. 一个进程可以创建一个或多个进程
进程之间交换数据不能通过 () 途径进行 C
- A. 共享文件
- B. 访问共享存储区域
- C. 访问进程地址空间
- D. 消息传递
进程创建的时候不需要做的事情是() B
- A. 将该进程插入就绪队列
- B. 为该进程分配 CPU
- C. 分配该进程适当的内存空间
- D. 填写一个该进程的 PCB
下列关于线程的说法,正确的是() D
- A. 每个线程都有自己独立的地址空间
- B. 进程只能包含一个线程
- C. 线程之间的通信必须使用系统调用函数
- D. 线程包括 CPU 现场,可以独立执行程序
下面哪一个不是线程独享的?B
- A. 优先级
- B. 代码
- C. 栈
- D. 寄存器
一个进程的读磁盘操作结束后,操作系统针对进程必做的是() B
- A. 降低进程优先级
- B. 修改该进程状态为就绪态
- C. 增加进程时间片大小
- D. 给进程分配用户内存空间
操作系统是通过() 来对并发执行的进程进行控制和管理 B
- A. 进程的优先级
- B. 进程控制块
- C. 进程的基本状态
- D. 多道程序设计
在一个多线程系统中,下面哪一个是线程之间共享的?C
- A. 栈
- B. 寄存器
- C. 堆
- D. 线程 ID
在多对一的线程模型中,当一个多线程进程中的某个线程被阻塞后,() A
- A. 整个进程都会阻塞
- B. 该阻塞线程将被撤销
- C. 该阻塞线程将永远可能再执行
- D. 该进程的其它线程可以正常运行
关于多线程模型说法正确的是 () D
- A. 刚做了核酸,脑袋有点晕,不会做
- B. 用户 + 核心级线程,也就是多对多模型,线程并发度较低,但用户灵活性高
- C. 核心级线程,也就是一对一模型,并发度较低,灵活性不够高
- D. 用户级线程,也就是多对一模型,不能够很好地利用多核处理器的结构
用信箱时间进程间互相通信的通信机制需要两个通信原语,它们是()
- A. 发送原语和执行原语
- B. 就绪原语和执行原语
- C. 发送原语和接收原语
- D. 就绪原语和接收原语
下列叙述正确的是() A
- A. 进程获得处理器运行是通过调度得到的
- B. 进程申请处理器而得不到满足时,其状态变为阻塞态
- C. 在单处理器系统中,任何时刻都只有一个进程处于运行状态
- D. 优先级是进程调度的重要依据,进程优先级一旦确定不能改动
下面 () 转换是不可能发生的 B
- A. 就绪到运行
- B. 阻塞到运行
- C. 运行到就绪
- D. 运行到阻塞
两个合作进程无法通过 () 交换数据 A
- A. 高级程序设计语言中的全局变量
- B. 消息传递系统
- C. 共享内存
- D. 文件系统
# 第九周
# 选择
下列满足短作业优先且不会发生饥饿现象的是() C
- A. 时间片轮转
- B. 先来先服务
- C. 高响应比优先
- D. 非抢占短作业优先
假设系统中所有进程同时到达,则使进程平均周转时间最短的是 ()
- A. 短作业优先
- B. 时间片轮转
- C. 先来先服务
- D. 优先级调度
下列算法中不可能导致饥饿现象的是()
- A. 优先级调度
- B. 非抢占的短作业优先
- C. 抢占的短作业优先
- D. 时间片轮转
下列进程调度算法中,对短进程不利的是()
- A. 高响应比优先
- B. 先来先服务
- C. 多级反馈队列
- D. 短进程优先
假设系统中所有进程同时到达,则使进程平均周转时间最短的是(a)调度。
- A. 短进程优先
- B. 先来先服务
- C. 时间片轮转
- D. 优先级
设有 4 个作业同时到达,每个作业的平均执行时间是 2h,它们在一台处理器上按照单道式运行,则平均周转时间是 (c)
- A.8h
- B.1h
- C.5h
- D.2.5h
在作业调度算法中,当系统中同时存在 CPU 约束型与 IO 约束型的作业时,下列说法正确的是(a)
- A. 一般来说,IO 约束型的作业优先级较高,应当先执行
- B. 两者优先级不分上下,一般按照短作业优先算法执行
- C. 一般来说,CPU 约束的作业优先级较高,应当先执行
- D. 两者优先级不分上下,一般按照先来先服务算法执行
作业是用户提交的,而进程是系统生成的,两者的区别在于(c)
- A. 前者是批处理的,后者是分时的
- B. 两者执行不同的程序段
- C. 前者以用户任务为单位,后者以操作系统控制为单位
- D. 后者是可并发执行的,前者则不同
一个作业 8:00 到达系统,估计运行时间为 0.5h,若 10:00 开始执行该作业,其响应比是 (b)
- A.4
- B.5
- C.3
- D.2
下面有关进程调度算法的?准则中,不正确的是 (b)。
- A. 尽快响应交互式用户的请求
- B. 适当延长进程就绪队列的等待时间
- C. 尽可能提高系统吞吐量
- D. 尽量提高处理器的利用率
在多对一的线程模型中,当一个多线程进程中的某个线程被阻塞后,(a)
- A. 整个进程都会阻塞
- B. 该阻塞线程将被撤销
- C. 该进程的其它线程可以正常运行
- D. 该阻塞线程将永远可能再执行
设有三个作业,其运行时间分别是 2h , 5h, 3h, 假定它们同时到达,并在同一台处理器上以单道方式运行,则平均周转时间最小的执行顺序是 (a)
- A.J1J3 J2
- B.J1J2J3
- C.J3 J2 J1
- D.J2J1J3
在一个多线程系统中,下面哪一个是线程之间共享的?b
- A. 栈
- B. 堆
- C. 寄存器
- D. 线程 ID
(c)调度有利于 CPU 繁忙型的作业,而不利于 IO 繁忙型的作业。
- A. 时间片轮转法
- B. 优先级调度
- C. 先来先服务
- D. 多级队列
关于优先级调度的论述中,正确的是 (b)
- A. 在动态优先级中,随着进程执行时间的降低,其优先级也不断降低
- B. 在动态优先级中,随着进程执行时间的增加,其优先级降低
- C. 用户进程的优先级应高于系统进程的优先级
- D. 计算型作业的优先级应高于 IO 型作业的优先级
# 判断
时间片轮转法的平均等待时间比先来先服务要长。
- 错
当系统中没有运行进程,也没有就绪进程,这就意味着系统中没有进程。
- 错
进程调度与切换程序属于操作系统内核程序。
- 对
多级队列的优势是可以克服饥饿现象。
- 错
批处理系统通常采用轮转法进行调度。
- 错
# 第十周
# 选择
共享变量是指 (a) 访问的变量.
- A. 可被多个进程
- B. 可被多个进程互斥
- C. 只能被用户进程
- D. 只能被系统进程
可以被多个进程在任意时刻共享的代码必须(c)
- A. 要被放入临界区
- B. 是顺序代码
- C. 是不允许任何修改的代码
- D. 要被进程并发执行
对于两个并发进程,设互斥信号量为 mutex,mutex 初始值是 1,若 mutex=0,则 a
- A. 表示有一个进程进入临界区
- B. 表示有一个进程进入临界区,另一个进程在等待进入
- C. 表示没有进程进入临界区
- D. 表示有两个进程进入临界区
下列关于临界区的说法正确的是(b)。
- A.l 临界区是进程中用于实现进程同步的那段代码
- B. 临界区是进程中用于访问共享变量的那段代码
- C. 临界区是进程中用于实现进程互斥的那段代码
- D. 临界区是进程中用于实现进程通信的那段代码
一个正在访问临界资源的进程由于申请等待 IO 操作而被中断时,它 (c)
- A. 不允许任何进程抢占处理器
- B. 允许其他进程进入与该进程相关的临界区
- C. 允许其他进程抢占处理器,但是不得进入该进程的临界区
- D. 不允许其他进程进入任何临界区
下面哪一个不是解决临界区问题的条件(b)
- A. 互斥
- B. 非抢占
- C. 前进
- D. 有限等待
两个进程 A 与 B 都要修改共享变量,这时使用 Peterson 算法可以实现这种关系,下列关于 Peterson 算法描述正确的是 (c)
- A. 当进程 A 不在临界区时,进程 B 会进入临界区
- B. 当进程 A 想进入临界区时,操作系统会调度进程 A 进入临界区
- C. 某时刻虽然进程 B 想进入临界区,操作系统可能还是会调度进程 A
- D. 进程 A 与 B 会轮流进入临界区
与某资源关联的信号量的初始值是 3,当前值是 1。若 M 表示该资源的可用数,N 表示等待该资源的进程数,则 M 和的值分别是(d)
- A.2、0
- B.0、1
- C.1、2
- D.1、0
关于 test_and_set 指令,正确的是(c)
- A. 该指令需要 3 个 CPU 周期来执行
- B. 该指令无法彻底实现进程互斥
- C. 该指令可以被用来实现进程互斥
- D. 该指令是一种系统调用
关于竞争条件下列正确的是 (b)
- A. 竞争条件与进程的调度顺序无关,而与进程的时间片有关
- B. 竞争条件是因为进程并发执行引起的
- C. 竞争条件是指多个进程竞争使用 CPU 所需要的条件
- D. 竞争条件是不可避免的
如果进程 A 对信号量 S 进行 P 操作,则 S 的值应当(d)。
- A.S>0 时才减 1
- B.S<0 时才加 1
- C. 加 1
- D. 减 1
若系统中有 n 个进程,则阻塞队列中进程的个数最多有 (d)个
- A.n-1
- B.n+1
- C.1
- D.n
若系统中有 n 个进程,则就绪队列中进程的个数最多有() 个
- A. n
- B.n+1
- C.1
- D.n-1
- 我的答案:D 正确答案: D
以下 () 不属于临界资源。
- A. 私有数据
- B. 公用队列
- C. 共享缓冲区
- D. 打印机
- 我的答案:A
- 正确答案: A
关于 PV 操作说法错误的是()
- A.P 操作和 V 操作必须成对
- B.P 操作和 V 操作各含有若干条机器指令
- C.P 操作和 V 操作会触发中断
- D.P 操作和 V 操作都各对应一条机器指令
- 我的答案:D
- 正确答案:D
# 判断
PV 操作不仅可以实现并发进程之间的同步和互斥,而且能够防止系统进入死锁状态。
- 错
硬件原子指令是一种原语
- 错
操作系统需要使用信号量才能够实现进程的并发执行。
- 错
用 V 操作可以唤醒一个等待进程。唤醒之后进程进入运行状态。
- 错
竞争条件的错误结果与进程的并发顺序有关。
- 对
用信号量和 PV 原语操作可解决互斥问题,互斥信号量的初值一定为 1。
- 错
Peterson 算法实现两个进程 AB 的互斥操作时,两个进程会轮流访问临界区。
- 错
执行一次 P 操作可能会导致进程进入阻塞状态。
- 对
执行一次 P 操作可能会导致进程进入阻塞状态。
- 对
原子指令是指操作系统提供的指令。
- 错
临界资源是指只能使用一次的资源。
- 错
使用 Peterson 算法时,当一个进程提出要进入临界区时,操作系统下次将调用该进程进入临界区
- 错
Peterson 算法不能解决进程同步问题。
- 对
Peterson 算法无法实现进程的同步
- 对
在生产者 - 消费者问题中,多个生产者或多个消费者可同时进入临界区,但是生产者和消费者不能同时进入临界区。
- 错
# 第十一周
# 选择
共享变量是指 () 访问的变量.
- A. 只能被系统进程
- B. 可被多个进程
- C. 只能被用户进程
- D. 可被多个进程互斥
- 我的答案:B
正确答案:B
两个进程 A 与 B 都要修改共享变量,这时使用 Peterson 算法可以实现这种关系,下列关于 Peterson 算法描述正确的是
)
- A. 当进程 A 不在 l 临界区时,进程 B 会进入临界区
- B. 进程 A 与 B 会轮流进入临界区
- C. 某时刻虽然进程 B 想进入临界区,操作系统可能还是会调度进程 A
- D. 当进程 A 想进入临界区时,操作系统会调度进程 A 进入临界区
我的答案: C 正确答案:C
一个正在访问临界资源的进程由于申请等待 IO 操作而被中断时,它 ()
- A. 允许其他进程进入与该进程相关的临界区
B. 不允许其他进程进入任何临界区
C. 允许其他进程抢占处理器,但是不得进入该进程的临界区 D. 不允许任何进程抢占处理器
我的答案:C
正确答案:C
以下() 不属于临界资源。
- A. 打印机
B. 公用队列
C. 私有数据 D. 共享缓冲区
我的答案:C 正确答案:C
关于 test_and_set 指令,正确的是()
- A. 该指令需要 3 个 CPU 周期来执行
B. 该指令可以被用来实现进程互斥 C. 该指令是一种系统调用
D. 该指令无法彻底实现进程互斥
我的答案:B 正确答案:B
使用不同方法解决临界区问题时,下列说法错误的是()
- A. Peterson 算法可能会有忙等待现象出现
B. 硬件原子指令使用不当可能会有忙等待现象出现 C.PV 信号量操作可能会有忙等待现象出现
D. 关中断的方式对多处理器系统不友好
我的答案: C
正确答案:C
下列哪个属于临界资源?
- A. 打印机
- B. 私有变量
- C. 共用队列结构
- D. 可重入的程序代码
- 我的答案:A 正确答案: A
关于 PV 操作说法正确的是()
- A.PV 操作是原语,执行过程中不能被中断
- B.PV 操作是系统调用
C.PV 操作是硬件指令 - D.PV 操作是系统接口
- 我的答案: A 正确答案:A
可以被多个进程在任意时刻共享的代码必须()
- A. 是顺序代码
B. 是不允许任何修改的代码
C. 要被放入临界区
D. 要被进程并发执行
我的答案:B
正确答案:B
与某资源关联的信号量的初始值是 3,当前值是 1。若 M 表示该资源的可用数,N 表示等待该资源的进程数,则 M 和 N 的佳分别是()
- A.0、1B.1、0C.1、2D.2、0
我的答案: B
正确答案:B
# 判断
用信号量和 PV 原语操作可解决互斥问题,互斥信号量的初值一定为 1。
- 错
Peterson 算法实现两个进程 AB 的互斥操作时,两个进程会轮流访问临界区。
- 错
PV 操作不仅可以实现并发进程之间的同步和互斥,而且能够防止系统进入死锁状态。
- 错
执行一次 P 操作可能会导致进程进入阻塞状态。
- 对
操作系统需要使用信号量才能够实现进程的并发执行。
- 错
使用 Peterson 算法时,当一个进程提出要进入临界区时,操作系统下次将调用该进程进入临界区。
- 错
# 第十二周
# 选择
在多进程的并发系统中,肯定不会因竞争 () 而产生死锁.
- A. 打印机
B. 磁带机
C.CPU
D. 磁盘
我的答案:D
正确答案:C
如果进程 A 对信号量 S 执行 P 操作,则信号量 s 的值应()
A. 加一
B. 减一
C. 小于 0
D. 等于 0
我的答案:B
正确答案:B
关于破坏死锁发生的必要条件,下列说法错误的是()
- A. 互斥条件是非共享设备所必须的,不仅不能改变,还必须加以保证互斥
- B. 破坏不可抢占这个条件实现起来比较复杂,对某些硬件如打印机、CD 刻录机等不适用。
- C. 通过对系统所有资源进行线性排序,然后规定每个进程必须按照序号递减的顺序请求资源,这种方式可以预防死锁。
- D. 为了能破坏占有并等待条件,要求一个进程在请求资源时只能持有不可抢占资源。
我的答案:C 正确答案:D
下列定义互斥线程锁的代码正确的是()
- A. pthread_mutex_t *mutex;
B. int mutex = 1;
C. wait (mutex);signal (mutex);
D.pthread_mutex _t mutex;
我的答案:D
正确答案:D
下列哪一个不是产生死锁的必要条件 ()
- A. 循环等待
B. 前进
C. 互斥
D. 非抢占
我的答案:B 正确答案:B
若系统中有五台绘图仪,有多个进程均需要使用两台,规定每个进程一次仅允许申请一台,则至多允许 (个进程参于竞争,而不会发生死锁.
- A.4
B.2
C.5
D.3
我的答案:A 正确答案:A
产生系统死锁的原因可能是由于 ()
- A. 多个进程竞争,资源出现了循环等待
B. 多个进程竞争共享型设备
C. 一个进程进入死循环 D. 进程释放资源
我的答案:A
正确答案:A
通常不采用 () 方法来解除死锁
- A. 终止所有死锁进程
B. 从非死锁进程处抢夺资源 C. 终止一个死锁进程
D. 从死锁进程处抢夺资源
我的答案:D
正确答案:B
通常不采用 () 方法来解除死锁
- A. 终止所有死锁进程
B. 从非死锁进程处抢夺资源 C. 终止一个死锁进程
D. 从死锁进程处抢夺资源
我的答案:D
正确答案:B
死锁预防的出发点是()
- A. 保证系统始终处于安全状态
B. 通过算法使进程的推进顺序合理
C. 破坏死锁发生的四个条件之一
D. 同时破坏死锁发生的四个条件
我的答案:C 正确答案: C
# 填空
某系统中有 5 个并发进程,都需要同类资源 9 个,试问该系统不会发生死锁的最少资源数是 ( )。请在括号中只填写数字。
- 41
# 判断
系统发生死锁后,只能通过重启的方式解决。
- 错
银行家算法是一种有效的死锁预防算法。
- 错
如果资源分配图中没有环,则一定不会发生死锁。
- 对
— 个系统可能存在多个安全序列。
- 对
只要系统处于安全状态就不可能发生死锁。
- 对
如果资源分配图中有环,则一定会发生死锁
- 错
信号量 PV 操作使用不当可能会产生死锁问题。
- 对
系统进入不安全状态后就会发生死锁。
- 错
# 第十四周
# 选择
段页式存储管理汲取了页式管理和段式管理的长处,其实现原理结合了页式和段式管理的基本思想。即
- A. 用分段方法来分配和管理用户地址空间,用分页方法来管理物理存储空间
- B. 用分段方法来分配和管理主存空间,用分页方法来管理辅存空间
- C. 用分段方法来分配和管理辅存空间,用分页方法来管理主存空间
- D. 用分段方法来分配和管理物理存储空间,用分页方法来管理用户地址空间
我的答案:B
正确答案:A
逻辑地址是()
- A. 用户地址
B. 物理地址
C. 相对地址 D. 绝对地址
我的答案:C 正确答案: C
在请求分页存储管理方案中,若某用户空间为 16 个页面,页长 IKB, 现有页表如下 (左页号,右帧号) , 则逻辑地址 0A1F (H) 所对应的物理地址为 ()
0 1
1 52 33 74 2
- A.OE1FHB.031FHC.OA1FHD.021FH
我的答案:A
正确答案:A
关于内存碎片的说法正确的是 ()
- A. 内存中的碎片可以通过重定位进行消除,重定位之后碎片可以减少 B. 内存中一旦产生碎片就无法消除
C. 可以通过紧缩减少碎片,例如在编译重定位的情况就可以采用紧缩措施 D. 内存碎片会降低内存利用率
我的答案:A
正确答案:D
关于分段的说法不正确的是()
- A. 分段的内存管理方式会产生外部碎片
B. 分段的内存管理方式从用户视角出发,方便了用户
C. 分段的内存管理方法能够减少内部碎片
D. 分段时可以将各个段区别对待,分别分配地址空间
我的答案:C 正确答案:C
下列哪种内存分配方式不会产生内部碎片?
- A. 动态内存分配
B. 分页
C. 分段
D. 以上都不对
我的答案:B
正确答案:D
存储管理的目的是 ()
- A. 增加内存容量
B. 方便用户和提高内存利用率
C. 提高内存利用率
D. 方便用户编程
我的答案:B
正确答案:B
在分段内存管理中,每个段是 () 的分区
- A. 连续不定长
B. 不连续定长
C. 不连续不定长 D. 连续定长
我的答案:A
正确答案:A
将作业地址空间中的逻辑地址转换为内存中的物理地址的过程称为()
- A. 编译链接
B. 地址计算
C. 重定位
D. 加载
我的答案:C 正确答案:C
关于反向页表,下列说法错误的是()
- A. 反向页表以页号为索引,每个页号都可以在表中找到对应的物理帧 B. 在反向页表查询时有可能需要查找整个页表来寻求匹配
C. 反向页表能够降低页表的内存存储空间
D. 采用反向页表后,整个操作系统只有一个页表
我的答案:D
正确答案:A
分段管理提供()维的地址结构
- A.1
B.4
C.2
D.3
我的答案:C 正确答案: C
在最差适应算法中,按照()顺序形成空闲分区链
- A. 空闲区首地址递减
B. 空闲区大小递增
C. 空闲区首地址递增
D. 空闲区大小递减
我的答案:D
正确答案:D
为支持交换技术,重定位应当发生在()时。
- A. 链接
B. 运行
C. 编译
D. 加载
我的答案:A
正确答案:B
下面哪种内存管理方式不会产生外部碎片?
- A. 分页
B. 动态内存分配
C. 分段
D. 固定分区
我的答案:C 正确答案:A
分页存储管理中,内存管理单元是由 ()完成的。
- A. 地址转换程序
B. 用户程序
C. 操作系统软件代码
D. 硬件
我的答案:C
正确答案:D
若一个系统内存有 64MB,处理器是 32 位地址,则它的虚拟地址空间为 ()字节
- A.64MB
B.16GBC.4GB
D.2GB
我的答案:C 正确答案: C
一个操作系统采用分页内存管理,页表存放在内存中,访问一次内存的时间是 150ns,则从内存中取出一个数据的时间是()
- A.200nsB.150nsC.100nsD.300ns
我的答案:B
正确答案:D
采用二级页表的目的是()
- A. 提高内存访问效率
B. 减少页表内存消耗 C. 提高页表访问速度
D. 保证内存和 CPU 速度均衡
我的答案:A 正确答案:B
下列()存储管理方式能使存储碎片尽可能少,而且使内存利用率较高
- A. 可变分区
B. 分页
C. 分段
D. 段页结合
我的答案:D 正确答案:D
一个操作系统采用动态内存分配,访问一次内存需要 200ns。在这种情况下访问内存的一个数据需要的时间是()
- A. 400nsB.5OnsC.200nsD.100ns
我的答案:C 正确笞案: C
# 填空
一个操作系统采用分页内存管理,并采用快表技术,访问一次内存的时间是 150ns,访问一次快表的时间是 20ns, 设快表的命中率是 90%,则从内存中取出一个数据的时间是()
- 185
# 第十五周
# 选择
在缺页处理过程中,操作系统执行的操作不可能是()
- A. 修改页表
B. 分配叶框
C. 分区合并
D. 磁盘 IO
我的答案:C 正确答案:C
在页面置换算法中,() 可能会引起抖动。
- A. 所有
B.OPT
C.FIFOD.LRU
我的答案:C
正确答案:A
当系统发生抖动时,可采取的有效措施是 ()
- A. 撤销部分进程
B. 提高用户进程的优先级
C. 提高多道程序设计的道数
D. 增大磁盘交换区的容量
我的答案:A
正确答案:A
关于虚拟存储器的说法正确的是()
- A. 作业在运行前必须全部装入内存,在运行过程中也一直驻留内存
B. 作业在运行前必须全部装入内存,在运行过程中不必一直驻留内存 C. 作业在运行前不必全部装入内存,在运行过程中要一直驻留内存 D. 作业在运行前不必全部装入内存,在运行过程中不必一直驻留内存
我的答案:A
正确答案:D
在段式内存管理中,CPU 每次从内存中取一个数据需要访问 ()次内存
- A.3
B.4
C.2
D.1
我的答案:C 正确答案: c
关于页面置换算法中说法错误的是()
- A.FIFO 算法实现简单,选择最先进入主存的页面调出
B.LRU 算法基于局部性原理,首先调出最近一段时间最长时间未被访问过的页面 C.CLOCK 算法首先调出一段时间内被访问次数最多的页面
D. 一个好的页面置换算法应该减少和避免抖动现象
我的答案:C 正确答案:C
某系统采用 CLOCK 置换算法,页表项中字段 A 为访问位,M 为修改位。A=0 表示最近没有被访问,M=0 表示最近有被修改过,按照 (A,M) 所有可能取值,将页分为 (0.0)(O,1)(1,0)(1,1) 四类,则该算法淘汰页的次序为 ()
- A.(1,O)(0,1)(1,1)(0.0)
B.(1,O)(1,1)(0,O)(0,1)C.(0.0)(1.0)(O,1)(1,1)D.(0.0)(0,1)(1,0)(1,1)
我的答案:D
正确答案: D
操作系统采用分页存诸管理方式,要求()
- A. 每个进程拥有一张页表,且进程的页表在内存中
B. 所有进程共享一张页表,页表驻留在内存中
C. 每个进程拥有一张页表,但只有执行的进程的页表驻留在内存中 D. 所有进程共享一张页表,但只有执行的进程的页表驻留在内存中
我的答案:C
正确答案:A
下面 ()的内存管理方法有利于程序的动态链接。
- A. 分页
B. 固定分区管理
C. 动态分区管理
D. 分段
我的答案:D 正确答案: D
在请求分页存储管理中,若采用 FIFO 页面置换算法,当可供分配的帧数增加时,缺页中断次数()
- A. 无影响
B. 增加
C. 减少
D. 可能 t 增加也可能减少
我的答案:D
正确答案:D
某个操作系统对内存的管理采用页式存储管理方法,所划分的页面大小 ()
- A. 根据内存和外存共同确定
B. 必须相同
C. 根据 CPU 地址结构确定 D. 要根据内存大小确定
我的答案:B 正确答案:B
在虚拟分页存储管理中,若进程访问的页面不在主存中,且主存中没有可用的空闲帧时,系统正确的处理顺序是()
- A. 缺页中断 - 决定淘汰页 - 页面调入 - 页面调出 B. 缺页中断 - 决定淘汰页 - 页面调出 - 页面调入 C. 决定淘汰页 - 页面调出 - 缺页中断 - 页面调入 D. 决定淘汰页 - 页面调入 - 页面调出 - 缺页中断
我的答案:B
正确答案:B
采用段式内存管理方式时,一个程序如何分段是在()决定的。
- A. 装入作业
B. 程序执行 C. 用户编程
D. 分配主存时
我的答案:C 正确答案: C
在请求分页存储管理中,若采用 OPT 页面置换算法,当可供分配的帧数增加时,缺页中断次数()
- A. 增加
B. 可能增加也可能减少 C. 减少
D. 无影响
我的答案:B
正确答案: C
下列说法正确的是()
- A. 在进程运行时,若其工作集页面都在虚拟存储器内,则能够使该进程有效地运行,否则会出现频繁的页面调入、调出现象 B. 在进程运行时,若其工作集页面都在磁盘内,则能够使该进程有效地运行,否则会出现频繁的页面调入、调出现象
C. 在进程运行时,若其工作集页面都在主存内,则能够使该进程有效地运行,否则会出现频繁的页面调入、调出现象
D. 在进程运行时,若其工作集页面都在外部存储器内,则能够使该进程有效地运行,否则会出现频繁的页面调入、调出现象
我的答案:D 正确答案:C
请求分页存储管理中,如果把页面尺寸扩大一倍而且可容纳的最大页数不变,则在程序执行过程中缺页次数会()
- A. 可能增加也可能减少
B. 减少
C. 不变
D. 增大
我的答案:B 正确答案:B
下列属于多级页表的优点的是()
- A. 减少页表所占的连续地址空间
B. 减少页表项所占字节数
C. 加快地址变换速度 D. 减少缺页中断次数
我的答案:A
正确答案:A
产生内存抖动的主要原因是()
- A. 内存空间有限
B.CPU 调度算法不合理 C.CPU 运行速度受限 D. 页面置换算法不合理
我的答案:D 正确答案:D
分区分配内存管理方式的主要保护措施是()
- A. 程序代码保护
B. 栈保护
C. 界地址保护
D. 数据保护
我的答案:C 正确答案:C
页式存储管理系统中,页表的首地址放在()中。
- A. 内存
B. 寄存器
C. 存储页表 D. 快表
我的答案:B 正确答案:B
动态分区又称为可变式分区,它是由系统运行过程中()动态建立的。
- A. 作业装入时
B. 作业完成时 C. 作业未装入时 D. 作业创建时
我的答案:A
正确答案:A
下列关于虚拟存储器的说法正确的是 ()
- A. 虚拟存诸只能基于不连续分配技术
B. 虚拟存储只能基于连续分配技术
C. 虚拟存储容量只受内存容量的限制 D. 虚拟存储容量只受外存容量的限制
我的答案:D
正确答案:A
能够加快虚实地址转换的是()
- A. 增加交换区 (SWAP 区)
B. 增大快表容量
C. 将不常用的页表项放入磁盘交换区
D. 增大磁盘容量
我的答案:B
正确答案:B