操作系统概述 - 1

1.单处理机系统中,可并行的是 () 。

Ⅰ.进程与进程; Ⅱ.处理机与设备; Ⅲ.处理机与通道; Ⅳ.设备与设备

  • Ⅰ,Ⅱ和Ⅲ
  • Ⅰ,Ⅱ和Ⅳ
  • Ⅰ,Ⅲ和Ⅳ
  • Ⅱ,Ⅲ和Ⅳ

解析:此处要理解并行的概念
并行性:是指两个或两个以上的事件在同一时刻运行。
并发性:是指两个或两个以上的事件在同一时间间隔运行。
对于单处理机,2个进程之间只能并发,而不能并行。

2. 下列选项中,操作系统提供给应用程序的接口是()。

  • 系统调用
  • 中断
  • 库函数
  • 原语

解析:

操作系统提供的接口主要有两类:命令接口和系统调用。系统调用是能完成特定功能的子程序,当应用程序请求操作系统提供某种服务时,便调用具有相应功能的系统调用。库函数则是高级语言中提供的与系统调用对应的函数(也有些库函数与系统调用无关),目的是隐藏访管指令的细节,使系统调用更为方便、抽象。但要注意,库函数属于用户程序而非系统调用,是系统调用的上层。下图是Linux中的分层关系。

 3.下列选项中,在用户态执行的是()。 

  • 命令解释程序
  • 缺页处理程序
  • 进程调度程序
  • 时钟中断处理程序

解析:选A。

A:命令解释程序属于命令接口,在用户态执行。

B:缺页中断,也就是要访问的页不存在主存中,需要操作系统来通过某种策略将页调用主存,它是一种中断,中断都需要在核心态执行。

C:进程调度,进程都需要操作系统内核的参与支持。

D:时钟中断,是一种中断,同B。

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

  • 系统调用
  • 外部中断
  • 进程切换
  • 缺页

解析:
本题关键是对“在用户态发生”(与上题的“执行”区分)的理解。对于A,系统调用是操作系统提供给用户程序的接口,系统调用发生在用户态,被调用程序在核心态下执行。对于B,外部中断是用户态到核心态的“门”,也发生在用户态,在核心态完成中断过程。对于C,进程切换属于系统调用执行过程中的事件,只能发生在核心态;对于D,缺页产生后,在用户态发生缺页中断,然后进入核心态执行缺页中断服务程序 

4.中断处理和子程序调用都需要压栈以保护现场,中断处理一定会保存而子程序调用不需 要保存其内容的是()。 

  • 程序计数器
  • 程序状态字寄存器
  • 通用数据寄存器
  • 通用地址寄存器

解析:
本题考查中断处理过程与子程序调用压栈时的区别。无论中断处理和子程序调用都不需要保存通用数据寄存器和通用地址寄存器的内容,因此排除选项C和D。在中断处理过程中程序计数器(PC)和程序状态字(PSW)寄存器的内容都要压栈保存。在子程序调用时,由系统硬件限制只保存程序计数器的内容,不保存PSW的内容;如果需要保存PSW内容可由软件来实现。因此应选择B 

5.若一个用户进程通过read 系统调用读取一个磁盘文件中的数据,则下列关于此过程的叙述中,正确的是( )。

Ⅰ. 若该文件的数据不在内存中,则该进程进入睡眠等待状态
Ⅱ. 请求 read 系统调用会导致 CPU 从用户态切换到核心态
Ⅲ. read 系统调用的参数应包含文件的名称

  • 仅Ⅰ、 Ⅱ
  • 仅Ⅰ、 Ⅲ
  • 仅Ⅱ、 Ⅲ
  • Ⅰ、 Ⅱ和Ⅲ

解析:

对于Ⅰ,当所读文件的数据不在内存时,产生中断(缺页中断),原进程进入阻塞状态,直到所需数据从外存调入内存后,才将该进程唤醒。对于Ⅱ,read系统调用通过陷入将CPU从用户态切换到核心态,从而获取操作系统提供的服务。对于Ⅲ,要读一个文件首先要用open系统调用打开该文件。open中的参数包含文件的路径名与文件名,而read只需要使用open返回的文件描述符,并不使用文件名作为参数。read要求用户提供三个输入参数:①文件描述符fd;②buf缓冲区首址;③传送的字节数n。read的功能是试图从fd所指示的文件中读入n个字节的数据,并将它们送至由指针buf所指示的缓冲区中。

6.下列选项中,会导致用户进程从用户态切换到内核态的操作是()。
I.整数除以零   II. sin()函数调用   III. read 系统调用

  • 仅 I、 II
  • 仅 I、 III
  • 仅 II、 III
  • I、 II 和 III

解析: sin不是系统函数

用户态切换到内核态的三种方式:

1. 系统调用

2. 异常

3. 外围设备中断

 7.下列指令中,不能在用户态执行的是 

  • trap指令
  • 跳转指令
  • 压栈指令
  • 关中断指令

解析:trap指令、跳转指令和压栈指令均可以在用户态执行,其中trap指令负责由用户态转换成为内核态。而关中断指令为特权指令,必须在核心态才能执行,选D。

8.假定下列指令已装入指令寄存器。则执行时不可能导致CPU从用户态变为内核态(系统态)的是

  • DIV R0,R1           ; (R0)/(R1)→R0
  • INT n                     ; 产生软中断
  • NOT R0                ; 寄存器R0的内容取非
  • MOV R0,addr      ; 把地址addr处的内存数据放入寄存器R0中

解析:考虑到部分指令可能出现异常(导致中断),从而转到核心态。指令A有除零异常的可能,指令B为中断指令,指令D有缺页异常的可能,指令C不会发生异常。

9.下列关于批处理系统的叙述中,正确的是

Ⅰ.批处理系统允许多个用户与计算机直接交互

Ⅱ.批处理系统分为单道批处理系统和多道批处理系统

Ⅲ.中断技术使得多道批处理系统和I/O设备可与CPU并行工作

  • 仅Ⅱ、Ⅲ
  • 仅Ⅱ
  • 仅Ⅰ、Ⅱ
  • 仅Ⅰ、Ⅲ

 解析:
批处理系统中,作业执行时用户无法干预其运行,只能通过事先编制作业控制说明书来间接干预,缺少交互能力,也因此才发展出分时系统,I错误。批处理系统按发展历程又分为单道批处理系统、多道批处理系统,Ⅱ正确。多道程序设计技术允许同时把多个程序放入内存,并允许它们交替在CPU中运行,它们共享系统中的各种硬、软件资源,当一道程序因I/O请求而暂停运行时,CPU便立即转去运行另一道程序,即多道批处理系统的I/O设备可与CPU并行工作,这都是借助于中断技术实现的,Ⅲ正确

 10.某单CPU系统中有输入和输出设备各1台,现有3个并发执行的作业,每个作业的输入、计算和输出时间均分别为2ms、3ms和4ms,且都按输入、计算和输出的顺序执行,则执行完3个作业需要的时间最少是

  • 15ms
  • 17ms
  • 22ms
  • 27ms

 解析:

这类调度题目最好画图。因CPU、输入设备、输出设备都只有一个,因此各操作步骤不能重叠,画出运行时的甘特图后就能清楚地看到不同作业间的时序关系,如下图所示。

 

猜你喜欢

转载自blog.csdn.net/u011587070/article/details/82848617