# 第一周

# 选择

计算机是按照( )模型工作的?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
更新于 阅读次数