当前位置:问答库>考研试题

2017年大连理工大学人文与社会科学学部408计算机学科专业基础综合之计算机操作系统考研仿真模拟题

  摘要

一、选择题

1. 在计算机系统中,操作系统是( )。

A. —般应用软件

B. 核心系统软件

C. 用户应用软件

D. 系统支撑软件

【答案】B

【解析】软件分为系统软件和应用软件,操作系统是系统软件。

2. 在设备管理中,用来实现设备分配的四个数据结构中,每个设备一张,描述设备特性和状态,反映设备的特性、设备和控制器的连接情况的数据结构是( )。

A. 设备控制表(DCT )

B. 系统设备表(SDT )

C. 控制器控制表(COCT )

D. 通道控制表(CHCT )

E. 设备

【答案】A

3. 在支持多线程的系统中,进程P 创建的若干个线程不能共享的是( )。

A. 进程P 的代码段

B. 进程P 中打开的文件

C. 进程P 的全局变量

D. 进程P 中某线程的栈指针

【答案】D

【解析】进程是资源分配的基本单元,进程下的各线程可以并行执行,它们共享进程的资源,包括地址空间、持有资源、相关变量和代码等,但各个线程有自己的栈,这样各线程才能够独立执行程序而不相互干扰,各自的栈指针对其他线程是透明的,因此进程P 中某线程的栈指针是不能共享的。

这里有一个小技巧:线程共享进程的资源,但不能共享线程的资源。因此,只要选择明确归属于某线程的选项即可。选项中只有D 项是明确归属于某线程的,因此为正确答案。

4. 下列选项中,不可能在用户态发生的事件是( )。

A. 系统调用

B. 外部中断

C. 进程切换

D. 缺页

【答案】C

【解析】判断能否在用户态执行的关键在于事件是否会执行特权指令。

首先看A 项,系统调用是系统提供给用户程序调用内核函数的,当用户程序执行系统调用时,会使CPU 状态从用户态切换至系统态并执行内核函数,执行结束之后将控制权还给用户程序,并且CPU 状态从系统态切换至用户态。从这个过程可以看出,虽然系统调用的执行过程中CPU 需要切换至系统态,但系统调用(或者引用、调用)是在用户态发生的,是系统特意为用户态设计的,因此系统调用可以发生在用户态。

B 项为外部中断,很多考生会被中断二字影响,认为涉及中断的都应该是系统态的事情,而不能在用户态执行,因此选错。中断在系统中经常发生,如键盘输入会引发外部中断(外部中断

;进程缺页会产生缺页是指由外部事件引起的中断,比如鼠标单击和键盘输入等操作引起的中断)

中断等,这些都经常发生在用户进程中,自然这些也都是用户态的事件。以键盘输入举例,一个

,用户进程需要用户输入一串命令,当用户用键盘输入时会引发外部中断(此时CPU 还是用户态)

,处理程序处理之后将输此时系统会切换至系统态执行中断处理程序(这时CPU 转变为系统态)

入结果返回给用户程序并将CPU 状态切换为用户态,中断处理结束。由此过程可见,中断的发生和处理与系统调用类似,都是发生在用户态,通过切换至系统态完成对应功能,然后返回至用户态。系统调用和中断的发生是在用户态,处理是在系统态。

,看D 项,缺页与B 项类似,用户态执行进程缺页时会产生缺页中断(中断发生在用户态)

然后系统转入系统态进行缺页中断处理,然后再返回用户态,将控制权交还给用户进程。因此D 项也可以发生在用户态。

根据排除法知道答案是C 项,进程切换实际上是对于程序状态的修改,因此要修改程序状态字,这是特权指令,必须在系统态执行。

5. 在中断周期中,将允许中断触发器置“0”的操作由完成( )。

A. 硬件

B. 关中断指令

C. 开中断指令

D. 软件

【答案】B

6. 有关进程的说法不正确的是( )

A. 操作系统通过PCB 来控制和管理进程,用户进程可从PCB 中读出与本身运行状态相关的

信息。

B. 用户进程被创建时,系统为它申请和构造一个相应的PCB 。

C. 进程的优先级信息是保存在进程的PCB 中的。

D. 同一个程序是不能被创建成多个进程的。

【答案】D

【解析】一个应用程序通常有多个进程组成。程序是构成进程的组成部分之一,一个进程的运行目标是执行它所对应的程序。从静态的角度看,进程是由程序、数据和进程控制块(PCB )三部分组成的。

7. 面向用户的组织机构属于( )。

A. 虚拟结构

B. 实际结构

C. 逻辑结构

D. 物理结构

【答案】C

8. 下列关于进程和线程的叙述中,正确的是( )。

A. 不管系统是否支持线程,进程都是资源分配的基本单位

B. 线程是资源分配的基本单位,进程是调度的基本单位

C. 系统级线程和用户级线程的切换都需要内核的支持

D. 同一进程中的各个线程拥有各自不同的地址空间

【答案】A

【解析】进程始终是操作系统资源分配的基本单位,线程不能直接被系统分配资源。因此A 项是正确的,B 项错误。而且线程可以参与调度,如系统级线程可以被系统直接调度执行。

用户级线程切换不需要通过内核,因为用户级线程只在用户进程的空间内活动,系统并不能感知到用户级线程的存在,所以用户级线程的切换不需要通过内核。系统级线程的切换是需要内核支持的,因此C 项错误。

同一进程下的各线程共享进程的地址空间,并共享进程所持有的资源,但线程有自己的栈空间,不与其他线程共享,因此D 项错误。

9. 文件系统中设立打开(Open )系统调用的主要目的是( )。

A. 把文件从辅存读到内存

B. 把文件的控制信息从辅存读到内存

C. 把文件的FA T 表信息从辅存读到内存

D. 把磁盘文件系统的控制管理信息从辅存读到内存

【答案】A