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

2018年中国科学技术大学信息科学技术学院834软件工程基础[专业硕士]之计算机操作系统考研核心题库

  摘要

一、选择题

1. 用户可以通过( )两种方式来使用计算机。

A. 命令方式和函数方式

B. 命令方式和系统调用方式

C. 命令方式和文件管理方式

D. 设备管理方式和系统调用方式

【答案】B

【解析】用户可以通过以下两种方式来使用计算机:

①命令方式。这是指由0S 提供的一组联机命令(语言),用户可通过键盘键入有关的命令,来直接操纵计算机系统。

②系统调用方式。0S 提供了一组系统调用,用户可在应用程序中通过调用相应的系统调用来操纵计算机。

2. 下列陈述中,正确的是( )。

A. 磁盘是外部存储器,和输入/输出系统没有关系

B. 对速度极慢或简单的外围设备可以不考虑设备的状态直接进行接收数据和发送数据

C. 从输入/输出效率分析,DMA 方式效率最高、中断方式次之、程序查询方式最低,所以才有DMA 方式淘汰中断方式、中断方式淘汰程序查询方式的发展过程

D. 在程序查询方式、中断方式中需要组织I/O接口,而DMA 方式和通道方式就不需要了

【答案】B

3. 采用DMA 方式传送数据时,每传送一个数据就要占用一个时间( )。

A. 指令周期

B. 机器周期

C. 存储周期

D. 总线周期

【答案】C

4. 批处理操作系统的目的是( )。

A. 提高系统与用户的交互性能

B. 提高系统资源利用率

C. 降低用户作业的周转时间

D. 减少用户作业的等待时间

【答案】B

【解析】在批处理系统中,操作人员将作业成批地装入计算机中,由操作系统在计算机某个特定区域(一般称为输入井)将其组织好并按一定的算法选择其中的一个或几个作业,将其调入内存使其运行。运行结束后,把结果放入“输出井”,由计算机统一输出后,交给用户。批处理系统的主要优点是系统吞吐量大、资源利用率高。批处理系统的主要缺点是交互能力比较差、作业周转时间长。

5. 支持多道程序设计的操作系统在运行过程中,不断地选择新进程运行,来实现CPU 的共享,但其中( )不是引起操作系统选择新进程的直接原因。

A. 运行进程的时间片用完

B. 运行进程出错

C. 运行进程要等待某一事件发生

D. 有新进程进入就绪状态

【答案】D

【解析】A 项、B 项、C 项中,操作系统必须立即调度其他进程,而有新的进程进入就绪状态,如果CPU 正在处理其他进程的请求,则该就绪进程仍然需要等待,不会引起操作系统选择新进程。

二、综合题

6. 在动态分区分配方式中,应如何将各空闲分区链接成空闲分区链?

【答案】动态分区分配是根据进程的实际需要,动态地为之分配内存空间。为了实现对空闲分区的分配和链接,在每个分区的起始部分,设置一些用于控制分区分配的信息,以及用于链接各分区所用的前向指针;在分区尾部则设置一后向指针,通过前、后向链接指针,可将所有的空闲分区链接成一个双向链。当分区分配出去后,把状态位由“0”改为“1”,此时前后向指针已无意义。

7. 试说明系统调用的处理步骤。

【答案】系统调用的处理步骤:

(1)在设置了系统调用号和参数后,便可执行一条系统调用命令。不同的系统可采用不同的执行方式。在UNIX 系统中,是执行CHMK 命令,而在MS-DOS 中则是执行INT21软中断;

(2)系统调用的处理过程可分成以下三步:首先将处理机状态由用户态转为系统态,之后由硬件和内核程序进行系统调用的一般性处理,即首先保护被中断进程的CPU 环境,将处理机状态字PSW 、程序计数器PC 、系统调用号、用户栈指针以及通用寄存器内容等,压入堆栈,然后将

用户定义的参数传送到指定的地址保存起来;

(3)分析系统调用类型,转入相应的系统调用处理子程序;

(4)在系统调用处理子程序执行完后,应恢复被中断的或设置新进程的CPU 现场,然后返回被中断进程或新进程,继续往下执行。

8. 为什么要引入读一拷贝一修改锁(Rcu )? 它对读者和写者分别有何影响?

【答案】(1)RCU 的引入

读写自旋锁允许多个进程同时读,但只要有一个写进程在写,便禁止所有读进程去读,使读者进入阻塞状态。如果写的时间非常长,将严重影响到多个读进程的工作。解决上述问题的方法是改变写进程对文件(共享数据结构)进行修改(写)的方式。此即,当某写进程要往某文件中写入数据时,它先读该文件,将文件的内容拷贝到一个副本上,以后只对副本上的内容进行修改。修改完成后,在适当时候再将修改完后的文件全部写回去。

(2)对读者和写者的影响

①读者不会被阻塞。读者在访问被RCU 保护的共享数据时不会被阻塞。这一方面极大地提高

了读进程的运行效率,另一方面也使读者所在的CPU 不会发生上下文切换,减少了处理机的开销。

②无需为共享文件(数据)设置同步机构。在采用该机制时,允许多个读者和一个或多个写者同时访问被保护的数据,无需为共享数据设置同步机构,因而读者没有什么同步开销,也不需要考虑死锁等问题。但是写者的同步开销却比较大,需要复制被修改的数据结构,延迟数据结构的释放,还必须使用某种锁机制,与其它写者的修改操作同步并行。尽管RCU 锁对读者带来了很大的好处,但RCU 并不能完全替代读写自旋锁。如果读操作较多,而写操作很少,用RCU 的确是利大于弊;反之,如果写比较多,对读者的性能提高可能不足以弥补给写者带来的损失,此时还是应当采用读写自旋锁。

9. 试说明基于病毒数据库的病毒检测方法。

【答案】基于病毒数据库的病毒检测方法可描述如下:

(1)建立病毒数据库

为了建立病毒数据库,首先应当采集病毒样本,为此,设计了一个称为诱饵文件的程序,它能让病毒感染,但不执行任何操作。用它来获取病毒的完整内容,然后将病毒的完整代码输入到病毒数据库中,病毒数据库中所收集的病毒样本的种类越多,利用它去检测病毒的成功几率也就越高;

(2)扫描硬盘上的可执行文件

将反病毒软件安装到计算机上之后,便可对硬盘上的可执行文件进行扫描,检查盘上的所有可执行文件,看是否有与病毒数据库中的病毒样本相同的,如发现有,则将它清除。