购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

3.8 本章例题分析

例题1

操作系统是一种 (1) ,作业管理和进程管理是操作系统的重要组成部分。进程管理可把进程的状态分成 (2) 3种。用户可以通过 (3) 建立和撤销进程。进程的调度实际上是确定 (4) 。在批处理系统,中作业管理可把作业流的状态分成 (5) 4种。

(1)A.专用软件 B.应用软件 C.系统软件 D.实用软件

(2)A.提交、运行、后备 B.阻塞、提交、完成

C.就绪、运行、阻塞 D.阻塞、提交、就绪

(3)A.宏指令 B.过程调用 C.函数调用 D.系统调用

(4)A.处理机的占用 B.内存的分配 C.寄存器状态 D.计算方法

(5)A.后备、进入、就绪、退出 B.进入、后备、运行、退出

C.后备、等待、就绪、退出 D.等待、就绪、运行、退出

分析:

本题主要考查操作系统的概念,以及进程状态转换和作业状态转换方面的知识。

操作系统是计算机系统中最核心的系统软件,负责管理和控制计算机系统中硬件和软件资源,合理地组织计算机工作流程和有效利用资源,在计算机与用户之间起接口的作用。

操作系统的功能分成5大部分,即:处理机管理、存储管理、文件管理、设备管理和作业管理。这5大部分相互配合,协调工作,实现对计算机系统的资源管理和控制程序的执行,为用户提供方便的使用接口和良好的运行环境。

进程管理的对象就是对处理机的调度,所以进程管理也称为处理机管理。进程状态分为就绪、运行、阻塞3种。

进程控制是通过进程控制原语实现的。用于进程控制的原语主要包括:创建原语;阻塞原语;撤销原语;唤醒原语;优先级原语;调度原语。在操作系统中,原语是一个不可分割的基本单位。它们可以被系统本身调用,有的也以软中断形式供用户进程调用。

一个作业从交给计算机系统到执行结束退出系统,一般都要经历提交(进入)、后备、运行和完成4个状态。

答案: (1)C(2)C(3)D(4)A(5)B

例题2

1.分时操作系统的主要特征之一是提高 (1)

2.实现不同的作业处理方式(如:批处理、分时处理、实时处理等),主要是基于操作系统对 (2) 管理采用了不同的策略。

3.一般说来,用户可以通过两类接口请求操作系统的服务,一类是作业一级的接口(如命令语言,JCL等);另一类是编程接口,即提供一组 (3) ,供实用程序、应用程序与用户程序等请求操作系统的服务。

4.通常,文件的逻辑结构可以分为两大类:无结构的 (4) 和有结构的记录式文件。 (5) 组织方式,既适合于交互方式应用,也适合于批处理方式应用。

(1)A.计算机系统的可靠性 B.计算机系统的交互性

C.计算机系统的实时性 D.计算机系统的安全性

(2)A.处理机 B.存储 C.设备 D.文件

(3)A.程序编辑 B.特权操作 C.系统调用 D.进程调度

(4)A.堆文件 B.流式文件 C.索引文件 D.直接(Hash)文件

(5)A.堆文件 B.流式文件 C.索引顺序文件 D.顺序文件

分析:

第1小题考查操作系统分类等概念方面的知识点。

分时操作系统是指一台计算机连接多个终端,系统把CPU时间分为若干时间片,采用时间片轮转的方式处理用户的服务请求。对每个用户能保证足够快的响应时间,并提供交互会话能力。故(1)选B。

第2小题考查处理机管理的概念。

实现不同的作业处理方式(如:批处理、分时处理、实时处理等),主要是基于操作系统对处理机管理采用了不同的策略。故(2)选择A。

第3小题考查作业管理中操作系统的接口方面的知识点。

操作系统的接口又可分成命令接口和程序接口。

命令接口。命令接口包含键盘命令和作业控制命令。

程序接口。程序接口又称为编程接口或系统调用,程序经编程接口请求系统服务,即通过系统调用,程序与操作系统通信。

系统调用是操作系统提供给编程人员的唯一接口。系统调用对用户屏蔽了操作系统的具体动作而只提供有关功能。系统调用大致分为设备管理、文件管理、进程控制、进程通信和存储管理等。故(3)选择C。

第4小题考查文件管理的基本概念。

文件的结构是指文件的组织形式,从用户观点所看到的文件组织形式,称为文件的逻辑结构。一般文件的逻辑结构可以分为两种:无结构的字符流文件和有结构的记录文件。记录文件由记录组成,即文件内的信息划分成多个记录,以记录为单位组织和使用信息。记录文件有顺序文件、索引顺序文件、索引文件和直接文件。其中索引顺序文件既适合于交互方式应用,也适合于批处理方式应用。故(4)、(5)选择B,C。

答案: (1)B(2)A(3)C(4)B(5)C

例题3

1.操作系统为了解决进程间合作和资源共享所带来的同步与互斥问题,通常采用的一种方法是使用 (1) 。若在系统中有若干个互斥资源R,6个并发进程,每个进程都需要5个资源R,那么使系统不发生死锁的资源R的最少数目为 (2)

2.在请求分页管理中,若采用先进先出(FIFO)页面置换算法,可能会产生“FIFO异常”,“FIFO异常”指的是 (3)

(1)A.调度 B.分派 C.信号量 D.通信

(2)A.30 B.25 C.10 D.5

(3)A.频繁地出页入页的现象 B.分配的页面数增加,缺页中断的次数也可能增加

C.进程交换的信息量过大导致系统工作区不足

D.分配给进程的内存空间不足使进程无法正常工作

分析:

第1小题考查进程同步与互斥方面的知识点。

操作系统的重要功能是解决进程间的同步与互斥问题。解决的办法主要有加锁法、信号量机制、管程机制等。信号量是由一个整型变量和一个等待队列构成的,对这个整型变量除了做初始化外,只能实施P-V操作,即P操作和V操作。P-V操作是原子操作,不可分割使用,必须成对出现,属于低级的进程通信原语。故(1)选择C。

进程互斥就是为了保护共享资源(如公共变量等)不被多个进程同时访问,就要阻止这些进程同时执行访问这些资源的代码段,这些代码段称为临界区,这些资源称为临界资源;进程互斥不允许两个以上共享临界资源的并发进程同时进入临界区。

当若干个进程互相竞争对方已占有的资源,无限期地等待,不能向前推进时,会造成“死锁”。死锁是系统的一种出错状态,应该尽量预防和避免。产生死锁的主要原因是提供共享的系统资源不足、资源分配策略和进程的推进顺序不当。

产生死锁的必要条件是:互斥条件、保持和等待条件、不剥夺条件、环路等待条件。只要使上述4个必要条件中的某一个不满足,就可以解决死锁。本题中R为临界资源,要想6个并发进程互斥地访问R而不会死锁,必须是R的数量足以满足至少一个进程可以运行,考虑极端情况,6个并发进程都具有了4个R,只要再多一个R就可以调度其中一个执行,这样就打破了死锁的互斥条件。所以(2)选择B。

第2小题考查存储管理中页面调度方面的知识点。

先进先出(First In First Out,FIFO)算法,又称轮转法(RR)。选择在内存驻留时间最长的页,似乎合理,但可能淘汰掉频繁使用的页。另外,使用FIFO算法时,在未给予进程分配足够的页面数时,有时会出现给予进程的页面数增多,缺页次数反而增加的异常现象。故(3)选择B。

答案: (1)C(2)B(3)B

例题4

操作系统中,可以并行工作的基本单位是 (1) (1) 也是核心调度及资源分配的基本单位,它是由 (2) 组成的,它与程序的重要区别之一是 (3) 。当因资源竞争可能会引起死锁时,可以有两种策略对付: (4) (5) ,其中 (4) 付出的代价较高。

(1)A.作业 B.函数 C.进程 D.过程

(2)A.程序、数据和PCB B.程序、数据和标识符

C.程序、标识符和PCB D.数据、标识符和PCB

(3)A.程序有状态,而它没有 B.它有状态,而程序没有

C.程序可占有资源,而它不可 D.它能占有资源,而程序不能

(4)~(5)A.死锁的避免和预防 B.修改控制字

C.死锁的检测和修复 D.撤销锁

E.改写Config文件 F.重新启动

分析:

本题主要考查进程管理的基本概念和死锁的解决方法。

进程是可以与其他程序并发执行的段程序的一次执行过程,是系统进行资源分配和调度的基本单位。进程是一个程序关于某个数据集的一次运行。也就是说,进程是运行中的程序,是程序的一次运行活动。相对于程序,进程是一个动态的概念,而程序是静态的概念,是指令的集合。因此,进程具有动态性和并发性。

从静态的角度看,进程实体由程序块、进程控制块(简称PCB)和数据块3部分组成。程序块描述该进程所要完成的任务;数据块包括程序在执行时所需要的数据和工作区。进程控制块包括进程的描述信息、控制信息、资源管理信息和CPU现场保护信息等,反映了进程的动态特性。

当若干个进程互相竞争对方已占有的资源,无限期地等待,不能向前推进时,会造成“死锁”。死锁是系统的一种出错状态,应该尽量预防和避免。产生死锁的主要原因是提供共享的系统资源不足、资源分配策略和进程的推进顺序不当。产生死锁的必要条件是:互斥条件、保持和等待条件、不剥夺条件、环路等待条件。

解决死锁有两种策略,一种是在死锁发生前采用的预防和避免策略,另一种是在死锁发生后采用的检测与恢复策略。

答案: (1)C(2)A(3)B(4)A(5)C

例题5

在操作系统中处理机管理部分由作业管理和进程管理两部分组成。作业管理把流分成提交、后备、运行、完成4个状态,进程管理把进程分成就绪、执行、阻塞3个基本状态。作业由提交状态到后备状态由 (1) 完成。由后备状态到运行状态由 (2) 完成; 进程由就绪状态到执行状态由 (3) 完成,由执行状态到阻塞状态或就绪状态由 (4) 完成;用户进程的祖先进程是由 (5) 建立的。

(1)~(5)A.作业调度程序 B.进程调度程序 C.存储管理程序

D.输入输出程序 E.假脱机(spooling)处理程序

F.交通控制程序 G.设备管理程序 H.文件管理程序

分析:

本题主要考查作业管理的状态转换和进程管理的知识点。

本题主要考查操作系统的概念,以及进程状态转换和作业状态转换方面的知识。

操作系统是计算机系统中最核心的系统软件,负责管理和控制计算机系统中硬件和软件资源,合理地组织计算机工作流程和有效利用资源,在计算机与用户之间起接口的作用。

操作系统的功能分成5大部分,即:处理机管理、存储管理、文件管理、设备管理和作业管理。这5大部分相互配合,协调工作,实现对计算机系统的资源管理和控制程序的执行,为用户提供方便的使用接口和良好的运行环境。

进程管理的对象就是对处理机的调度,所以进程管理也称为处理机管理。进程状态分为就绪、执行、阻塞3种。

进程控制是通过进程控制原语实现的。用于进程控制的原语主要包括:创建原语;阻塞原语;撤销原语;唤醒原语;优先级原语;调度原语。在操作系统中,原语是一个不可分割的基本单位。它们可以被系统本身调用,有的也以软中断形式供用户进程调用。

一个作业从交给计算机系统到执行结束退出系统,一般都要经历提交(进入)、后备、运行和完成4个状态。参见例题1分析。

答案: (1)E(2)A(3)B(4)F(5)A

例题6

某些操作系统,将一条命令的执行结果输出给下一条命令,作为其输入并加以处理,这是系统的 (1) 机制。使命令所需要的信息不从键盘接收,而取自另一个文件,这是系统的 (2) 机制。使命令的执行结果直接引向另一个文件,而不在屏幕上显示,这是系统的 (3) 机制。操作系统不从键盘逐条接收命令并执行,而调用一个正文文件,执行其中的一系列命令,这种方式称为 (4) 方式,编写这样的文件应符合 (5) 语言的语法规则。

(1)A.链接 B.输入重定向 C.管道 D.输出重定向

(2)A.输入重定向 B.管道 C.读保护 D.批处理

(3)A.管道 B.输出重定向 C.清屏 D.显示屏蔽

(4)A.初始装入 B.批处理 C.管道 D.系统生成

(5)A.命令定向 B.机器指令 C.人机会话 D.作业控制

分析:

本题主要考查UNIX系统Shell中提供的管道和重定向命令操作的方法。

一些操作系统(例如UNIX)采用管道(线)的概念实现两个进程之间信息流的传递。管道是能够连接一个读进程和一个写进程,使两者进行通信的共享文件。通过把一个进程产生的信息流同管道传递给另一个进程,可以实现把一条命令的执行结果输出给下一条命令处理。某些操作系统具有让命令的执行结果不显示在屏幕上而引向另一个文件的机制,称为输出重新定向;让命令所需的处理信息不从键盘接收,而取自另一个文件的机制,称为输入重新定向。

用户一般通过键盘键入命令,启用操作系统。有时为了提高使用效率,按命令语言的语法规定一系列命令保存在一个正文文件内,让操作系统调用这个批处理文件,成批地执行其中的命令,就是所谓的批处理方式。

答案: (1)C(2)A(3)B(4)B(5)D

例题7

操作系统是一种 (1) 。在操作系统中采用多道程序设计方式能提高 CPU 和外部设备的 (2) 。一般来说,为了实现多道程序设计,计算机需要有 (3) 。操作系统 (4) 已经成为工作站上的主流操作系统。对于使用 (4) 操作系统的计算机系统来说, (5) 语言是主要的高级语言。

(1)A.通用软件 B.系统软件 C.应用软件 D.软件包

(2)A.利用效率 B.可靠性 C.稳定性 D.兼容性

(3)A.更大的内存 B.更快的外部设备 C.更快的CPU D.更先进的终端

(4)A.VMS B.DOS C.MVS D.UNIX

(5)A.Pascal B.Ada C.C D.Fortran

分析:

本题主要考查操作系统的基本概念和常识。

操作系统是一种系统软件。操作系统(Operating System,OS)是计算机系统中的核心系统软件,负责管理和控制计算机系统中硬件和软件资源,合理地组织计算机工作流程和有效利用资源,在计算机与用户之间起接口的作用。

多道程序设计是指计算机内存中同时存放几道相互独立的程序,同时运行。多道程序设计可以提高计算机的处理机和外部设备的利用率。由于多道程序同时存放在内存中,会比单道程序占用更多的内存(当然还和每道程序占用内存大小有关),所以为了实现多道程序设计,计算机需要有更大的内存。

对于使用UNIX操作系统的计算机系统来说,C语言是主要的高级语言。其实,到目前为止,C语言仍然是多种操作系统(包括UNIX,Windows,Linux)的高级语言。

答案: (1)B(2)A(3)A(4)D(5)C

例题8

操作系统是一种系统软件,它有许多种类,PC-DOS是一种 (1) 操作系统,Windows是具有图形界面的 (2) 运行方式的操作系统。Windows应用程序之间可以方便地通过 (3) 交换数据。将正在运行的应用程序窗口最小化后,该应用程序处于 (4) 状态。 (5) 是在体系结构上采用了客户机/服务器模式的网络操作系统。

(1)A.分时 B.多用户 C.单用户 D.分布式

(2)A.单任务 B.多任务 C.单用户 D.多用户

(3)A.邮箱 B.文本区 C.对话框 D.剪贴板

(4)A.运行 B.挂起 C.停止 D.退出

(5)A.Windows 95 B.Windows NT C.Windows 98 D.Windows 3.2

分析:

本题主要考查PC-DOS和Windows操作系统的概念和应用方面的知识。

PC-DOS是一种单用户单任务操作系统,Windows是图形化界面的单用户多任务操作系统,UNIX和Linux是多用户多任务操作系统。

Windows应用程序之间可以方便地通过剪贴板交换数据,它是通过一块公用内存空间实现的。最小化的程序仍然处于运行状态,只是在后台运行,我们看不到运行情况罢了。

Windows NT是微软公司于1993年推出的支持对称多处理结构,支持多线程并行,支持多种硬件平台和多种网络协议的网络操作系统,它采用20世纪90年代操作系统技术(即微内核技术),在体系结构上采用客户机/服务器模式。

答案: (1)C(2)B(3)D(4)A(5)B

例题9

在Windows系统中,如果用户要整理D盘上的碎片,可选中D盘, (1) ,单击“开始整理”按钮,在弹出的对话框中单击“碎片整理”按钮即可;通过设置文件的, (2) ,可以使其成为“隐藏”文件。

(1)A.双击鼠标左键,选择“属性”对话框中的常规选项卡

B.单击鼠标右键,选择“属性”对话框中的常规选项卡

C.双击鼠标左键,选择“属性”对话框中的工具选项卡

D.单击鼠标右键,选择“属性”对话框中的工具选项卡

(2)A. 类型 B. 格式 C. 属性 D. 状态

分析

答案: (1)D(2)C

例题10

Windows NT的结构可分为保护子系统和NT执行体两部分,其中保护子系统的结构为 (1) 。它有 (2) 等两种类型。在Windows NT中,网络功能 (3) ,它是一种 (4)

(1)A.客户机/服务器模式 B.单块模式 C.层次模式 D.集成模式

(2)A.环境子系统和应用子系统 B.环境子系统和集成子系统

C.集成子系统和服务子系统 D.应用子系统和服务子系统

(3)A.附加在操作系统上 B.由独立的软件完成

C.由操作系统生成 D.内置于操作系统中

(4)A.分布式结构 B.开放式结构 C.对等式结构 D.独立式结构

分析:

本题考察Windows NT的系统结构体系。Windows NT的系统结构体系可分为系统用户态部分(NT保护子系统)和系统核心态部分(NT执行体)。用户态模式,即NT保护子系统的结构为客户/服务器模型。由环境子系统和集成子系统组成。环境子系统诸如OS/2子系统,POSIX子系统,当然还有最常用的Win32子系统等,NT都称其为服务器。集成子系统是完成重要操作系统功能的服务器,包括安全子系统、网络软件中的若干部件。Windows NT的系统模型有客户/服务器模型、对象模型和对称多处理器模型,是一种开放式结构的网络操作系统。在Windows NT中,网络功能是内置于操作系统中的。

答案: (1)A(2)B(3)D(4)B

例题11

客户机/服务器(Client/Server)模式产生于20世纪 (1) 年代,它是基于 (2) 的要求而发展起来的。客户机/服务器模式的第一个软件产品是 (3) 系统,客户机/服务器模式通常在 (4) 环境下运行,客户端的软件具有 (5)

(1)A.60 B.70 C.80 D.90

(2)A.操作系统 B.网络通信 C计算机硬件 D.数据库系统

(3)A.Sybase B.Informix C.SQL Server D.DB2

(4)A.以大型机为中心的分时系统 B.以服务器为中心的网络系统

C.对等网络 D.智能网络

(5)A.专用性 B.通用性 C.浏览易操作性 D.快速搜索特性

分析:

这是考察数据库系统结构分类的知识。数据库系统的体系结构可分为单用户、主从式结构、分布式结构和客户/服务器结构等4大类。客户/服务器结构(C/S)将数据库管理系统的功能和应用分开,把在网络中来专门用于执行数据库管理系统功能的计算机,称为数据库服务器,简称服务器;将安装数据库管理系统的外围应用专用开发工具,支持用户应用的计算机,称为客户机。在服务器端存放存取结构、查询优化、并发控制、恢复等系统程序,完成事务处理和数据访问控制,服务端上的软件系统实际上就是一个DBMS;在客户端存放一些用户专用的应用程序,例如格式处理、报表输出、数据输入、图形界面等,用于实现前端处理和用户界面。这种结构是基于数据库技术的发展,于20世纪80年代产生的。它的第一个软件产品是Sybase系统。这种模式主要是在以服务器为中心的网络系统环境下运行。

答案: (1)C(2)D(3)A(4)B(5)A

例题12

开发微型嵌入式应用系统,采用 (1) 更合适。

(1)A. C语言或汇编语言 B. HTML或XML语言 C. 脚本程序语言 D. C++或SQL语言

分析

编写微型嵌入式应用系统要求采用的语言具有高性能,需要选择尽量面向机器的语言,C 语言或汇编语言更为合适。

答案: (1)A

例题13

与Linux操作系统兼容性最好的是 (1) 操作系统。Linux操作系统中默认的超级用户名是 (2) 。在Linux操作系统中安装Apache Web服务器,默认的WWW侦听端口是 (3) ;默认的Web站点存放在 (4) 目录中;默认的最大并发用户数为255。为了使ApacheWeb服务器的并发用户数扩大到1024,应该将“src/include/httpd.h”文件中的HEAD_SERVER_LIMIT参数配置为1024,并重新编译Linux内核,最后还应将“httpd.conf”文件中的 (5) 参数配置为1024。

(1)A.NetWare B.UNIX C.Windows D.DOS/2

(2)A.boot B.root C.supervisor D.administrator

(3)A.21 B.23 C.80 D.81

(4)A./etc/httpd B./var/log/httpd C./etc/home D./home/httpd

(5)A.MaxClient B.ServerRoot C.ServerCapacity D.ClientCapacity

分析:

根据Linux操作系统的来历可知,与Linux兼容性最好的只能是UNIX;Linux操作系统中默认的超级用户名是root;在Linux操作系统中安装Apache Web服务器,默认的WWW侦听端口是80;/etc/home是Linux默认的Web站点存放目录;要把ApacheWeb服务器的并发用户数扩大到1024,则httpd.conf文件中的MaxClient参数应该配置为1024。

答案: (1)B(2)B(3)C(4)D(5)A

例题14

操作系统是一种 (1)

(1)A.应用软件 B.系统软件 C.工具软件 D.杀毒软件

分析:

软件的类型包括系统软件、实用软件、应用软件等,操作系统是一种系统软件。工具软件和杀毒软件属于应用软件。操作系统是计算机系统中的核心系统软件,负责管理和控制计算机系统中硬件和软件资源,合理地组织计算机工作流程和有效利用资源。

答案: (1)B

例题15

在进程管理中,当 (1) 时,进程从阻塞状态转换到就绪状态。

(1)A.进程被进程调度程序选中 B.等待某一事件

C.等待的事件发生 D.时间片用完

分析:

进程最基本的状态有3种:运行、就绪、阻塞。要判断其状态很简单,具体状态说明如下。

运行态:占用CPU时的状态,表示正在运行。

就绪态:万事俱备,只欠CPU资源这一东风。

阻塞态:进入阻塞态通常是因为在等待I/O完成或等待分配到所需资源。

进程状态从“阻塞”到“就绪”的条件是“等待的事件发生、产生或者完成”。

答案: (1)C

例题16

操作系统的功能不包括 (1)

(1)A.提供用户操作界面 B.管理系统资源 C.提供应用程序接口 D.提供HTML

分析:

操作系统的功能如下。

(1)处理机管理(进程管理))):实质上是对处理机执行“时间”的管理,即如何将CPU真正合理地分配给每个任务的进程控制、进程同步、进程通信、调度。

(2)存储管理:实质是对存储“空间”的管理,主要指对内存的管理、内存分配、内存保护、内存扩充、地址映射、逻辑地址、物理地址的定义。

(3)设备管理。实质是对硬件设备的管理,其中包括对输入输出设备的分配、启动、完成和回收、缓冲管理、设备分配、设备处理、设备独立性和虚拟设备。

(4)信息管理(文件管理)。文件存储空间的管理、目录管理、文件的读、写管理和存取控制。

(5)用户接口(作业管理)。命令接口、图形接口、系统调用是操作系统提供给软件开发人员的唯一接口,开发人员可利用它使用系统功能。OS核心中都有一组实现系统功能的过程(子程序),系统调用就是对上述过程的调用,包括任务管理、 界面管理、人机交互、图形界面、语音控制和虚拟现实等。

答案: (1)D

例题17

作业J1,J2,J3,J4的提交时间和运行时间如表3-1所示。若采用短作业优先调度算法,则作业调度优先次序为 (1) ,平均周转时间为 (2) (这里不考虑操作系统的开销)。

表3-1 作业提交时间和运行时间

(1)A.J3→J4→J2→J1 B.J1→J2→J3→J4 C.J1→J3→J4→J2 D.J4→J3→J2→J1

(2)A.45 B.58.5 C.64.5 D.72

分析:

短作业优先调度算法:以运行时间的长短进行调度,即启动要求运行时间最短的作业。

优点:易于实现,强调了资源的充分利用,保证了系统的最大吞吐量(单位时间里处理作业的个数)。

缺点:不公平,会造成长作业长期等待。

结论:假设系统中所有作业同时到达,可以证明采用SJF能得到最短的作业平均周转时间。

从4个选项中,没有调度次序中出现相同的两个Ji(1<=i<=4)进程,我们可以得出短作业优先调度算法为不剥夺方式,即一经选中就运行完成。

表3-2 作业调度分析

调度次序为:J1→J3→J4→J2

周转时间=完成时间-提交时间(或等待时间+执行时间)

平均周转时间=(J1周转时间+ J2周转时间+ J3周转时间+ J4周转时间)/4

答案: (1)C(2)A

例题18

(1) 技术是在主存中同时存放若干个程序,并使这些程序交替执行,以提高系统资源的利用率。

(1)A.多道程序设计 B.Spooling C.缓冲 D.虚拟设备

分析:

多道程序设计的基本思想是在计算机内存中同时存放若干道已开始运行且尚未结束的程序,它们交替运行,共享系统中的各种软、硬件资源,从而使处理机得到充分利用。

答案: (1)A

例题19

某系统中有一个缓冲区,进程P1不断地生产产品送入缓冲区,进程P2不断地从缓冲区取产品消费。假设该缓冲区只能容纳一个产品。进程P1与P2的同步模型如图3-4所示:

图3-4 进程同步模型

为此,应设信号量S1的初值为 (1) ,信号量S2的初值为 (2)

(1)A.-2 B.-1 C.0 D.1

(2)A.-2 B.-1 C.0 D.1

分析:

这是经典的“生产者-消费者”问题,它不仅要解决生产者进程与消费者进程的同步关系,还要处理缓冲区的互斥关系,因此通常需要3个信号量来实现。

Empty,用于管理同步,说明空闲的缓冲区数量,最早没有产生东西,因此其初始值应为缓冲区的最大值。

Full,用于管理同步,说明已填充的缓冲区数量,其初始值应为0。

Mutex,用于管理互斥,保证同时只有一个进程在写缓冲区(因此其初始值应为1)。

其算法如下所示:

但由于本例中“缓冲区只能容纳一个产品”,因此可以使用empty、full两个变量组合控制生产者、消费者对缓冲区放、取产品的控制。当缓冲区为空的时候,empty变量为1,full变量为0,表明缓冲区只能用于生产者“将新产品放入缓冲区”;当缓冲区为满的时候,empty变量为0,full变量为1,表明缓冲区只能用于消费者“从缓冲区中取一个产品”。

因此,可以得知信号量S1就是相当于这里的empty,S2则是相当于full。由于empty需说明空闲的缓冲区数量,而本题中缓冲区数量一开始应该是空闲的,因此应该取值1。而full显然应该取值为0。

答案: (1)D(2)C gxgT4ALvMagNGKKr44WB60cuEH5KxiYQzAWg9c5H1KEjWU+M3KNoGTTsU1hayADb

点击中间区域
呼出菜单
上一章
目录
下一章
×