第1章 计算机操作系统概述
学习重点:
(1)什么是操作系统,操作系统在软件层次中的地位;操作系统的设计观点
(2)操作系统的形成和五大类型(批处理操作系统、分时操作系统、 实时操作系统、网络操作系和分布式操作系统)
(3)操作系统的五大功能(作业管理、文件管理、存储管理、设备管理和处理机及进程管理
(4)操作系统的属性:响应比、并发性(共行性)、信息的共享、保密与保护、可扩充性、可移植性、可读性、可“生成”性、可测试性、安全可靠性等
(5)操作系统的“生成”、配置、设置和引导
教学要求:
(1)牢固掌握操作系统的定义:计算机操作系统是方便用户、管理和控制计算机软、硬件资源的系统(或程序集合);清楚地了解操作系统所处的地位:是裸机之上的第一层软件,是建立其他所有软件的基础。
(2)牢固掌握操作系统目前有五大类型(批处理、分时、实时、网络和分布式)和五大主要功能:界面管理、文件管理、存储管理、设备管理、进程管理。
(3)理解衡量操作系统优劣的属性:响应比、并发性(共行性)、信息的共享、保密与保护、可扩充性、可移植性、可读性、可“生成”性、可测试性、安全可靠性等。
(4)在实践方面至少掌握一种实际操作系统的安装、使用和维护。
(5)研究操作系统面对用户的服务观点和系统内部的管理观点。即为用户提供方便而安全的工作环境,体现“用户至上”、“服务至上”的原则;内部管理采用中断、通道、串行、并发、并行和本地远地通信等分设的各种管理部门机构,;里外协作分工组织,力争达到“多快好省”。
(6)考虑到CPU与外部设备在速度方面的差异,采用硬通道、缓冲区、多种队列和多种调度算法,以“小步快跑”等策略管理和控制计算机资源,平衡协调为用户服务。
(7)了解现代操作系统为用户提供的三种使用界面:命令界面、系统调用界面和图形界面。一般用户通过命令、图形方式控制,编程人员通过系统调用方式控制计算机。
(8)初步了解如何认识和解剖操作系统。
(9)了解操作系统(DOS、Windows、UNIX、Linux)版本简况。
习题
1、教材中介绍了学习“操作系统”要记住最精髓的两句话,是什么?
答:计算机操作系统使方便用户、管理和控制计算机软硬件资源的系统软件(或程序集合);操作系统目前有五大类型(批处理、分时、实时、网络和分布式)和五大功能(作业管理、文件管理、存储管理、设备管理和进程管理)。
2、分时系统和实时系统有什么不同?
答:分时系统通用性强,交互性强,及时响应性要求一般(通常数量级为秒);实时系统往往是专用的,系统与应用很难分离,常常紧密结合在一起,实时系统并不强调资源利用率,而更关心及时响应性(通常数量级为毫秒或微秒)、可靠性等。
3、多用户操作系统离开了多终端的硬件支持,能否安装和使用?
答:多用户系统与多终端系统是不同的概念。多用户系统为多个用户使用,是一个软件系统的概念,它强调用户之间的安全保密;而多终端系统是指系统中有多个用户终端,是硬件设备的描述,即使一个终端也可以为多个用户使用。因此,多用户操作系统不一定需要多终端的硬件支持,完全可以安装和使用。
4、多用户操作系统和网络操作系统有什么区别?
答:以单机多用户系统为例,说明它与网络操作系统的比较。
单机多用户系统 | 网络操作系统 | |
CPU | 共用一个或几个 | 多个处理机 |
共享资源 | 共享主存 | 共享服务器 |
终端工作 | 分时方式 | 网址通信链接 |
客户端工作 | 不能工作 | 客户机能工作 |
操作系统 | 集中管理 | 客户机有的操作系统 |
A.程序 B.文件 C.资源 D.进程
6、没有下列( )设备计算机无法工作。
A.硬盘 B.软盘 C.内存 D.打印机
7、操作系统是计算机系统的核心软件。按功能特征的不同,可把操作系统分为[1]、[2]、[3]、网络操作系统和分布式操作系统基本类型。其中[1]的主要目标是提高系统的吞吐率和效率,而[2]是一旦有处理请求和要求处理的数据时,CPU就应该立即处理该数据并将结果及时送回,例如[4]等。
供选择的答案:
[1][2][3]
A、单用户系统 B、批处理系统 C、分时系统
D、微机操作系统 E、实时系统
[4]
A、计算机激光照排系统 B、办公自动化系统
C、计算机辅助设计系统 D、航空订票系统
8、操作系统是一种( )。
A.应用软件 B. 系统软件
C.通用软件 D. 工具软件
9、在下列性质中,哪一个不是分时系统的特征。( )
A. 交互性 B. 多路性 C. 成批性 D. 独占性
10、实时操作系统追求的目标是( )。
A.高吞吐率 B.充分利用内存 C. 快速响应 D. 减少系统开销
11、操作系统是为了提高计算机的[1]和方便用户使用计算机而配置的基本软件。它负责管理计算机系统中的[2],其中包括[3],[4],外部设备和系统中的数据。操作系统中的[3]管理部分负责对进程进行管理。操作系统对系统中的数据进行管理的部分通常叫做[5]。
供选择的答案:
[1] A、速度 B、利用率 C、灵活性 D、兼容性
[2] A、程序 B、功能 C、资源 D、进程
[3][4] A、主存储器 B、虚拟存储器 C、运算器
D、控制器 E、微处理器 F、处理机
[5] A、数据库系统 B、文件系统 C、检索系统
D、数据库 E、数据存储系统 F、数据结构
G、数据库管理系统
12、现代操作系统的两个基本特征是( ) 和资源共享。
A.多道程序设计 B. 中断处理
C.程序的并发执行 D. 实现分时与实时处理
13、以下( )项功能不是操作系统具备的主要功能。
A.内存管理 B.中断处理 C.文档编辑 D.CPU调度
14、批处理系统的主要缺点是( )。
A.CPU的利用率不高 B.失去了交互性
C.不具备并行性 D.以上都不是
15、引入多道程序的目的在于( )。
A、充分利用CPU,减少CPU等待时间
B、提高实时响应速度
C、有利于代码共享,减少主、辅存信息交换量
D、充分利用存储器
16、( )没有多道程序设计的特点。
A.DOS B.UNIX C.Windows D.OS/2
17、DOS是磁盘操作系统的缩写。
18、下列四个操作系统中,是分时系统的为( )。
A.CP/M B.MS-DOS
C.UNIX D.WINDOWS NT
19、在分时系统中,时间片一定,( ),响应时间越长。
A.内存越多 B.用户数越多
C.后备队列 D.用户数越少
20、操作系统是一组( )。
A.文件管理程序 B.中断处理程序
C.资源管理程序 D.设备管理程序
21、( )不是操作系统关心的主要问题。
A、管理计算机裸机
B、设计、提供用户程序与计算机硬件系统的界面
C、管理计算机系统资源
D、高级程序设计语言的编译器
第2章 作业管理
学习重点:
(1)概念和术语:作业、作业步、作业同步、作业流和作业类型。
(2)作业管理的任务和功能。
(3)作业输入方式:联机输入、脱机输入、直接藕合、假脱机(SPOOLing)工作和网络输入等方式。
(4)用户界面的任务和功能。操作系统的三代人机交互界面(第一代用户界面,一维空间的命令行界面和编程人员在程序中的系统调用、第二代用户界面,在二维图形界面空间以及第三代用户界面,在三维虚拟现实的界面元素空间) ;界面管理的功能以及用户界面的设计特点(实现高效的人机通信)
(5)作业调度功能以及作业调度算法(先来先服务、最短作业优先法、最高响应比法、优先数法、定时轮转法、事件驱动法以及各种不同类型作业搭配调度算法)。
(7)操作系统常用命令分类与使用
(8)Shell命令解释和控制语言特点
教学要求:
掌握作业管理的任务和功能。理解关于作业调度的概念和术语。
掌握用户界面的功能及设计特点,能把这种基本设计思想体现在一些人机接口界面的设计中。
理解常用的作业调度算法的实现思想,如FCFS、SJF、HRM等。
理解Shell命令解释和控制语言。
习题
1、作业调度和进程调度有什么区别?
答:作业调度和进程调度属于处理机管理(进程调度在第六章介绍)。处理机调度是操作系统的主要功能之一,它的实现策略决定了操作系统的类型,其调度算法的优劣直接影响整个系统的性能。处理机调度的任务是选出待分派的作业或进程,为之分配处理机。
一般来说,处理机调度可分为三个级别,分别是高级调度、中级调度和低级调度。
高级调度又称作业调度,作业就是用户程序及其所需的数据和命令的集合,作业管理就是对作业的执行情况进行系统管理的程序的集合。作业调度程序的主要功能是审查系统是否能满足用户作业的资源要求以及按照一定的算法来选取作业。
引入中级调度的主要目的是为了提高内存的利用率和系统吞吐量,使得暂时不运行的进程从内存对换到外存上。
低级调度又称进程调度,其主要功能是根据一定的算法将CPU分派给就绪队列中的一个进程。进程调度是操作系统中最基本的一种调度,其调度策略的优劣直接影响整个系统的性能。
2、操作系统用户接口中包含哪几种接口?它们分别提供给谁使用?
答:操作系统的用户界面是操作系统与使用者的接口,现代操作系统通常提供两种界面:命令界面(图形界面)和系统调用界面
DOS操作系统和UNIX操作系统为命令界面的代表(目前UNIX也提供图形界面)。
UNIX命令格式为:命令名 [选项] [参数]
例如:$ ls –l /user 命令中,ls是命令名(列文件目录),–l为一个选项(表示以长格式显示),/user为一个参数(表示显示user下的文件)。
图形界面的代表为微软的Windows操作系统,大多数普通用户使用这两种界面。
系统调用是操作系统提供给编程人员的接口。在UNIX系统中,系统调用以C函数的形式出现的。它只能在C程序中使用,不能作为命令在终端输入。
3、系统调用是( )。
A.一条机器指令 B.中断子程序 C.用户子程序 D.提供编程人员的接口
4、UNIX命令的一般格式是( )。
A、命令名 [选项] [参数] B.[选项] [参数] 命令名
C.[参数] [选项] 命令名 D.[命令名] [选项] [参数]
5、面对一般用户,通过操作命令方式控制操作系统;面对编程人员,通过系统调用控制。
6、作业输入方式有:联机输入、脱机输入、直接耦合、假脱机、网络输入。
7、操作系统用户界面的发展经历了三代:命令行及系统调用界面、图形界面、虚拟现实的界面元素。
8、计算机操作命令可分为联机命令、Shell程序语言命令、脱机作业控制语言命令。
9、用户要在程序一级获得系统帮助,必须通过( )。
A.进程调度 B.作业调度
C.键盘命令 D.系统调用
10、用户在一次计算过程中,或者一次事物处理中,要求计算机完成所做的工作的集合,这是指( )。
A.进程 B.程序 C.作业 D.系统调用
11、操作系统作业管理的主要功能是( )。
A.作业调度与控制 B.作业提交
C.作业准备 D.编制程序
12、用户在自己的用户终端上连续键入组成作业的若干命令,无需等待一条命令是否执行完毕。所键入的命令形成了一道命令串,存储在一个系统缓冲区中,由操作系统自动地对这些命令逐步提取并解释进行,最后向用户提供处理结果。在这样的多用户、多作业、多命令串的系统中,前后台作业的执行调度( )。
A、完全由操作系统自动完成,无需用户干预
B、由用户干预完成
C、由系统和用户干预结合完成
D、全由用户完成
13、在操作系统中,JCB是指( )。
A.作业控制块 B.进程控制块
C.文件控制块 D.程序控制块
14、作业在系统中存在与否的唯一标志是( )。
A.源程序 B.作业说明书
C.作业控制块 D.目的程序
15、操作系统中的作业管理是一种( )。
A.宏观的高级管理 B.宏观的低级管理
C.系统刚开始加电 D.初始化引导完成
16、作业调度的关键在于( )。
A.选择恰当的进程管理程序 B.选择恰当的作业调度算法
C.用户作业准备充分 D.有一个较好的操作环境
17、系统调用的目的是( )。
A.请求系统服务 B.终止系统服务
C.申请系统资源 D.释放系统资源
18、系统调用是由操作系统提供的内部调用,它( )。
A、直接通过键盘交互方式使用
B、只能通过用户程序间接使用
C、是命令接口中的命令使用
D、与系统的命令一样
19、按照作业到达的先后次序调度作业,排队等待时间最长的作业被优先调度,这是指( )调度算法。
A.先来先服务 B. 最短作业优先
C.定时轮转法 D. 优先数法
20、操作系统内核与用户程序、应用程序之间的接口是( )。
A. shell命令 B. 图形界面 C. 系统调用 D. C语言函数
第3章 文件管理
学习重点:
(1)文件管理的任务和功能
(2)操作系统文件的特点。文件的组织机构:文件元素(物理上: 位、字节、块、页、盘等组成;逻辑上:有字、字段、记录、虚拟块、文件、文件目录、文件夹和文件卷等。
(3)文件分类(按文件性质与用途分:系统文件、库文件;按操作保护分:只读文件、可读可写文件、可执行文件;按使用情况分:临时文件、永久文件、档案文件;按用户观点分统:普通文件、目录文件、特殊文件;按存取的物理结构分:顺序(连续)文件、链接文件、索引文件;按文件的逻辑存储结构分:有结构文件和无结构文件;按文件中的数据形式分:源文件和目标文件等
(4)文件的文件的物理结构和逻辑结构:空闲表法、自由链表法和成组链接法
(5)文件的目录结构:一级文件目录、二级文件目录、多级文件目录,文件目录的管理,“活动文件表”
(6)文件的存取控制:存取控制矩阵、用户权限表、使用密码
(7)文件的使用:文件系统的系统调用(创建、打开、读写、关闭、刪除等)
教学要求:
(1)理解文件管理的任务和功能。
(2)牢固掌握文件、文件系统的概念。
(3)掌握文件系统的分类。
(4)掌握文件的逻辑组织和物理组织的概念,以及相应的组织形式。
(5)掌握文件系统的目录分类管理特点。
(6)理解文件存取控制的作用及UNIX系统中采取的办法。
(7)了解文件系统的系统调用,如创建、打开、读写、关闭、刪除等。
(8)了解:文件系统的编程设计
习题
1、一个文件系统能否管理两个以上物理硬盘?
答:一个文件系统能够管理两个以上的物理硬盘。
2、对文件的主要操作使用内容是什么?它的系统调用内容是什么?
答:对文件系统的主要操作为:
(1)文件管理:包括目录管理,实现按名存取。
(2)文件存储空间的管理:文件的组织形式——逻辑结构和物理结构,分配与管理外部存取器。
(3)文件的存取控制:解决文件保护、保密和共享。
(4)提供方便的用户接口——系统调用。系统调用的主要内容有:文件的创建、打开、读、写、关闭、删除等。
3、试说明文件系统中对文件操作的系统调用处理功能。
答:系统调用是操作系统提供给编程人员的唯一接口。利用系统调用,编程人员在源程序中动态请求和释放系统资源,调用系统中已有的功能来完成那些与机器硬件部分相关的工作以及控制程序的执行速度等。系统调用如同一个黑匣子,对使用者屏蔽了具体操作动作,只是提供了有关功能。
有关文件系统的系统调用是用户经常使用的,包括文件的创建(create)、打开(open)、读(read)、写(write)、关闭(close)等。下面是一个有关文件系统的系统调用的例子。
main(argc,argv)
int argc;
char *argv[];
{
int fd1,fd2,fd3,n;
char buf[512],ch=’\\n’;
fd1=open(argv[1],0); /*打开argv[1]对应的文件,返回标识符fd1*/
fd2=open(argv[2],0); /*打开argv[2]对应的文件,返回标识符fd2*/
fd1=create(argv[3],04); /*创建argv[3]对应的文件,返回标识符fd3*/
while((n=read(fd1,buf,512))>0) /*从fd1中读n<=512字节入buf*/
write(fd3,buf,n); /*将buf中n个字节写入fd3*/
write(fd3,&ch,1); /*将换行符号写入fd3*/
while((n=read(fd2,buf,512))>0) /*从fd2中读n<=512字节入buf*/
write(fd3,buf,n); /*将buf中n个字节写入fd3*/
close(fd1); /*关闭文件*/
close(fd2); /*关闭文件*/
close(fd3); /*关闭文件*/
}
4、从用户观点看,UNIX或Lunix操作系统将文件分为如下三类:普通文件、目录文件、特殊文件。
5、按操作系统中文件的性质与用途分,文件分为:系统文件、库文件、用户文件。
6、按使用情况,文件可分为临时文件、永久文件、档案文件。
7、在UNIX系统中,文件分为普通文件、目录文件、特殊文件。
8、按文件的逻辑存储结构分,文件分为有结构文件,又称为记录式文件和无结构文件,又称流式文件。
9、文件的三种物理结构是顺序文件、链接文件、索引文件。
10、文件的三种物理结构(磁盘空间管理方法):空闲表法、空闲链表法、成组链接法。
11、UNIX的文件物理结构采用成组链接法。
12、文件系统在创建一个文件时,为它建立一个( )。
A.文件目录 B.目录文件
C.逻辑结构 D.逻辑空间
13、如果文件系统中有两个文件重名,不应采用( )。
A.一级目录结构 B.树型目录结构
C.二级目录结构 D.A和C
14、文件系统采用二级文件目录可以( )。
A.缩短访问存储器的时间 B.实现文件共享
C.节省内存空间 D.解决不同用户间的文件命名冲突
15、文件代表了计算机系统中的( )。
A.硬件 B.软件
C.软件资源 D.硬件资源
16、在UNIX系统中,用户程序经过编译之后得到的可执行文件属于( )。
A.ASCII文件 B.普通文件 C.目录文件 D.特别文件
17、特殊文件是与( )有关的文件。
A.文本 B.图象
C.硬件设备 D.二进制数据
18、文件的存储方法依赖于( )。
A.文件的物理结构 B.存放文件的存储设备的特性
C.A和B D.文件的逻辑
19、树型目录结构的第一级称为目录树的( )。
A.分支节点 B.根节点 C.叶节点 D.终节点
20、使用绝对路径名访问文件是从( )开始按目录结构访问某个文件。
A.当前目录 B.用户主目录 C.根目录 D.父目录
21、目录文件所存放的信息是( )。
A、某一文件存放的数据信息
B、某一文件的文件目录
C、该目录中所有数据文件目录
D、该目录中所有子目录文件和数据文件的目录
22、( )是指有关操作系统和其他系统程序组成的文件。
A.系统文件 B.档案文件
C.用户文件 D.顺序文件
23、按文件用途来分,编辑程序是( )。
A.系统文件 B.档案文件
C.用户文件 D.库文件
24、由字符序列组成,文件内的信息不再划分结构,这是指( )。
A.流式文件 B. 记录式文件
C.顺序文件 D.有序文件
25、Autoexec.bat文件的逻辑结构形式是( )。
A.字符流式文件 B. 库文件
C.记录式文件 D.只读文件
26、数据库文件的逻辑结构形式是( )。
A.字符流式文件 B. 档案文件
C.记录式文件 D.只读文件
27、逻辑文件是( )的文件组织形式。
A.在外部设备上 B.从用户观点看
C.虚拟存储 D.目录
第4章 存储管理
学习重点:
(1)存储管理的任务和功能。
(2)概念:逻辑(相对)地址、物理(绝对)地址、重定位、虚拟存储、分区分配存储管理(固定分区分配、可变式动态分区分配、可重定位分区分配、多重分区分配)。
(3)动态分区分配的分配算法:首次适应法、循环适应法、最佳适应法和最坏适应法。
(4)内存“扩充”技术:交換与覆盖;内存保护技术:存储保护键和界限寄存器。
(5)请求页式存储管理:实现原理、页表的设计、请求淘汰換页算法(先进先出算法、循环检测法、LRU最近最少使用页面先淘汰、LFU最不经常使用的页面先淘汰、NUR最近没有使用页面先淘汰、OPT最优淘汰算法replacement 和随机数淘汰页面算法);页式存储管理优缺点。
(6)段式存储管理特点;段页式存储管理特点。
教学要求:
(1)理解内存管理的任务和功能。
(2)理解三级存储器结构:高速缓存、内存、外存。
(3)掌握分区存储器管理方法:内存分配、内存扩充、内存保护。
(4)掌握分页和分段概念,二者的主要区别。
(5)掌握页式存储管理技术的实现思想,如何实现从逻辑地址到物理地址的转换。
(6)掌握解分段存储管理技术的实现思想。
(7)理解页面置换的先进先出法、循环检测法和最近最少使用置换法(LRU)等。
(8)牢固掌握以下概念:逻辑地址、物理地址、可重定位地址、重定位、虚拟存储器。
习题
1、存储管理的主要功能是什么?
答:存储管理的主要功能是解决多道作业的主存空间的分配问题。主要包括:
(1)内存区域的分配和管理:设计内存的分配结构和调入策略,保证分配和回收。
(2)内存的扩充技术:使用虚拟存储或自动覆盖技术提供比实际内存更大的空间。
(3)内存的共享和保护技术。除了被允许共享的部分之外,作业之间不能产生干扰和破坏,须对内存中的数据实施保护。
2、解释下列与存储管理有关的名词:
(1)地址空间与存储空间
答:目标程序所在的空间称为地址空间,即程序员用来访问信息所用的一系列地址单元的集合;存储空间是指主存中一系列存储信息的物理单元的集合。
(2)逻辑地址与物理地址
答:在具有地址变换机构的计算机中,允许程序中编排的地址和信息实际存放在内存中的地址有所不同。逻辑地址是指用户程序经编译后,每个目标模块以0为基地址进行的顺序编址。逻辑地址又称相对地址。物理地址是指内存中各物理存储单元的地址从统一的基地址进行的顺序编址。物理地址又称绝对地址,它是数据在内存中的实际存储地址。
(3)虚地址与实地址
答:虚地址同逻辑地址,实地址同物理地址。
(4)地址重定位
答:重定位是把逻辑地址转变为内存的物理地址的过程。根据重定位时机的不同,又分为静态重定位(装入内存时重定位)和动态重定位(程序执行时重定位)。
(5)虚拟存储器
答:虚拟存储器是一种存储管理技术,用以完成用小的内存实现在大的虚空间中程序的运行工作。它是由操作系统提供的一个假想的特大存储器。但是虚拟存储器的容量并不是无限的,它由计算机的地址结构长度所确定,另外虚存容量的扩大是以牺牲CPU工作时间以及内、外存交换时间为代价的。
3、什么是请求页式管理?能满足用户哪些需要?
答:请求页式管理的基本原理是将逻辑地址空间分成大小相同的页,将存储地址空间分块,页和块的大小相等,通过页表进行管理。页式系统的逻辑地址分为页号和页内位移量。页表包括页号和块号数据项,它们一一对应。根据逻辑空间的页号,查找页表对应项找到对应的块号,块号乘以块长,加上位移量就形成存储空间的物理地址。每个作业的逻辑地址空间是连续的,重定位到内存空间后就不一定连续了。
此外,页表中还包括特征位(指示该页面是否在内存中)、外存地址、修改位(该页的内容在内存中是否修改过)等。
页式存储管理在动态地址转换过程中需要确定某一页是否已经调入主存。若调入主存,则可直接将虚地址转换为实地址,如果该页未调入主存,则产生缺页中断,以装入所需的页。
页式存储管理将不常用的页面调出内存,使内存的利用率高;虚拟的容量大,用户不必担心内存不够;不要求作业连续存放,有效地解决了“碎片”问题。
4、简述什么是内存的覆盖和交换技术?两者有什么区别?
答:在多道系统中,对换是指系统把内存中暂时不能运行的某部分作业写入外存交换区,腾出空间,把外存交换区中具备运行条件的指定作业调入内存。对换是以时间来换取空间,减少对换的信息量和时间是设计时要考虑的问题 。
由于CPU在某一时刻只能执行一条指令,所以一个作业不需要一开始就全装入内存,于是将作业的常驻部分装入内存,而让那些不会同时执行的部分共享同一块内存区,后调入共享区的内容覆盖前面调入的内容,这就是内存的覆盖技术。
两者的区别主要有:交换技术由操作系统自动完成,不需要用户参与,而覆盖技术需要专业的程序员给出作业各部分之间的覆盖结构,并清楚系统的存储结构;交换技术主要在不同作业之间进行,而覆盖技术主要在同一个作业内进行;另外覆盖技术主要在早期的操作系统中采用,而交换技术在现代操作系统中仍具有较强的生命力。
5、分页式和分段式内存管理有什么区别?怎样才能实现共享和保护?
答:段式与页式存储管理的比较如下表所示。
段式 | 页式 |
分段由用户设计划分,每段对应一个相应的的程序模块,有完整的逻辑意义。 | 分页用户看不见,由操作系统为内存管理划分。 |
段面是信息的逻辑单位 | 页面是信息的物理单位 |
便于段的共享,执行时按需动态链接装入。 | 页一般不能共享 |
段长不等,可动态增长,有利于新数据增长。 | 页面大小相同,位置不能动态增长。 |
二维地址空间:段名、段中地址;段号、段内单元号 | 一维地址空间 |
管理形式上象页式,但概念不同 | 往往需要多次缺页中断才能把所需信息完整地调入内存 |
2、常用的内存管理方法有分区管理,页式管理,段式管理,段页式管理。
3、动态存储分配时,要靠硬件地址变换机构实现重定位。
4、在存储管理中常用虚拟存储器方式来摆脱主存容量的。
5、在页式管理中,页式虚地址与内存物理地址的映射是由页表和硬件地址变换机构 完成的。
6、在请求页式管理中,当硬件变换机构发现所需的页不在内存时,产生缺页中断信号,中断处理程序作相应的处理。
7、置换算法是在内存中没有空闲页面时被调用的,它的目的是选出一个被淘汰的页面。如果内存中有足够的空闲页面存放所调入的页,则不必使用置换算法。
8、在页式管理中,页表的作用是实现从页号到物理块号的地址映射,存储页表的作用是记录内存页面的分配情况。
9、段式管理中,以段为单位分配内存,每段分配一个连续的内存区。由于各段长度不等,所以这些存储区的大小不一,而且同一进程的各段之间不要求连续。
10、在段页式存储管理系统中,面向用户的地址空间是段式划分,面向物理实现 的地址空间是页式划分。
11、文件的存储器是分成大小相等的物理块,并以它为单位交换信息。
12、存储管理的目的是( )。
A.方便用户 B.提高内存利用率
C.方便用户和提高内存利用率 D.增加内存实际容量
13、存储分配解决多道作业地址空间的划分问题。为了实现静态和动态存储分配,需采用地址重定位,即把[1]变成[2],静态重定位由[3]实现,动态重定位由[4]实现。
供选择的答案:
[1]、[2]: A 页面地址 B 段地址 C 逻辑地址
D 物理地址 E 外存地址 F 设备地址
[3]、[4]: A 硬件地址变换机构 B 执行程序 C 汇编程序
D 连接装入程序 E 调试程序 F 编译程序 G 解释程序
(说明:汇编程序、解释程序、编译程序的作用是将源程序变为机器语言指令;调试程序是进行程序调试的一种工具。执行程序是可被计算机直接执行的机器代码程序。)
14、在请求页式存储管理中,若所需页面不在内存中,则会引起( )。
A.输入输出中断 B. 时钟中断
C.越界中断 D. 缺页中断
15、若处理器有32位地址,则它的虚拟地址空间为( )字节。
A.2GB B.4GB C.100KB D.0KB
16、虚拟存储技术是( )。
A.补充内存物理空间的技术 B.补充相对地址空间的技术
C.扩充外存空间的技术 D.扩充输入输出缓冲区的技术
17、虚拟内存的容量只受( )的。
A.物理内存的大小 B.磁盘空间的大小
C.数据存放的实际地址 D.计算机地址位数
18、( )是指将作业不需要或暂时不需要的部分移到外存,让出内存空间以调入其他所需数据。
A.覆盖技术 B.交换技术
C.虚拟技术 D.物理扩充
19、外存(如磁盘)上存放的程序和数据( )。
A.可由CPU直接访问 B.必须在CPU访问之前移入内存
C.是必须由文件系统管理的 D.必须由进程调度程序管理
20、分区管理要求对每一个作业都分配( )的内存单元。
A.地址连续 B.若干地址不连续
C.若干连续的帧 D.若干不连续的帧
21、段页式存储管理汲取了页式管理和段式管理的长处,其实现原理结合了页式和段式管理的基本思想,即( )。
A、用分段方法来分配和管理物理存储空间,用分页方法来管理用户地址空间。
B、用分段方法来分配和管理用户地址空间,用分页方法来管理物理存储空间。
C、用分段方法来分配和管理主存空间,用分页方法来管理辅存空间。
D、用分段方法来分配和管理辅存空间,用分页方法来管理主存空间。
22、( )存储管理支持多道程序设计,算法简单,但存储碎片多。
A.段式 B.页式
C.固定分区 D.段页式
23、( )存储管理方式提供一维地址结构。
A.固定分区 B.分段
C.分页 D.分段和段页式
24、分段管理提供( )维的地址结构。
A.1 B.2 C.3 D.4
25、( )实现了段式、页式两种存储方式的优势互补。
A.请求分页管理 B.可变式分区管理
C.段式管理 D.段页式管理
26、从下列有关存储管理的叙述中,选出四条正确叙述。
A、在页式存储管理方案中,为了提高内存的利用效率,允许同时使用不同大小的页面;
B、在虚拟存储方式下,程序员编制程序时不必考虑主存的容量,但系统的吞吐量在很大程度上依赖于主存储器的容量;
C、固定分区式管理是针对单道系统的内存管理方案;
D、可重定位分区管理可以对作业分配不连续的内存单元;
E、利用交换技术扩充内存时,设计时必须考虑的问题是:如何减少信息交换量、降低交换所用的时间;
F、在现代操作系统中,不允许用户干预内存的分配;
G、采用动态重定位技术的系统,目标程序可以不经任何改动,而装入物理内存;
H、页式存储管理中,一个作业可以占用不连续的内存空间,而段式存储管理,一个作业则是占用连续的内存空间。
27、以下存储管理技术中,支持虚拟存储器的技术是( )。
A.动态分区法 B.可重定位分区法 C.请求分页技术 D.对换技术
28、在请求分页系统中,LRU算法是指( )。
A、最早进入内存的页先淘汰
B、近期最长时间以来没被访问的页先淘汰
C、近期被访问次数最少的页先淘汰
D、以后再也不用的也先淘汰
29、请求分页存储管理中,若把页面尺寸增加一倍,在程序顺序执行时,则一般缺页中断次数会( )。
A.增加 B.减少 C.不变 D.可能增加也可能减少
30、碎片是指( )。
A、存储分配完后所剩的空闲区
B、没有被使用的存储区
C、不能被使用的存储区
D、未被使用,而又暂时不能使用的存储区
31、碎片现象的存在使得( )。
A.内存空间利用率降低 B. 内存空间利用率提高
C.内存空间利用率得以改善 D. 内存空间利用率不影响
32、当内存碎片容量大于某一作业所申请的内存容量时,( )。
A、可以为这一作业分配内存
B、不可以为这一作业分配内存
C、拼接后,可以为这一作业分配内存
D、一定能够为这一作业分配内存
33、下列( )存储管理方式能使存储碎片尽可能少,而且使内存利用率较高。
A.固定分区 B.可变分区
C.分页管理 D.段页式管理
34、 1、某虚拟存储器的用户编程空间共32个页面,每页为1KB,内存为16KB。假定某时刻一用户页表中已调入内存的页面的页号和物理块号的对照表如下:
页号 | 物理块号 |
1 | 5 |
2 | 10 |
3 | 4 |
4 | 7 |
答:逻辑地址0A5C(H)所对应的二进制表示形式是:0000 1010 0101 1100 ,由于1K=210,下划线部分前的编码为000010,表示该逻辑地址对应的页号为3。查页表,得到物理块号是4(十进制),即物理块地址为:0001 0010 0000 0000 ,拼接块内地址0000 0000 0101 1100,得0001 0010 0101 1100,即125C(H)。
35、某段表内容如下:
段号 | 段首地址 | 段长度 |
0 | 120K | 40K |
1 | 760K | 30K |
2 | 480K | 20K |
3 | 370K | 20K |
答:逻辑地址(2,154)表示段号为2,即段首地址为480K,154为单元号,则实际物理地址为480K+154。
36、考虑下述页面走向:
1,2,3,4,2,1,5,6,2,1,2,3,7,6,3,2,1,2,3,6
当内存块数量分别为3时,试问FIFO、LRU、OPT这三种置换算法的缺页次数各是多少?
答:所有内存块最初都是空的,所以第一次用到的页面都产生一次缺页。
当内存块数量为3时:
FIFO 1,2,3,4,2,1,5,6,2,1,2,3,7,6,3,2,1,2,3,6
1 1 1 4 4 4 6 6 6 3 3 3 2 2 2 6
2 2 2 1 1 1 2 2 2 7 7 7 1 1 1
3 3 3 5 5 5 1 1 1 6 6 6 3 3
发生缺页中断的次数为16。
在FIFO算法中,先进入内存的页面被先换出。当页6要调入时,内存的状态为4、1、5,考查页6之前调入的页面,分别为5、1、2、4,可见4为最先进入内存的,本次应换出,然后把页6调入内存。
LRU 1,2,3,4,2,1,5,6,2,1,2,3,7,6,3,2,1,2,3,6
1 1 1 4 4 5 5 5 1 1 7 7 2 2 2
2 2 2 2 2 6 6 6 3 3 3 3 3 3
3 3 1 1 1 2 2 2 2 6 6 1 6
发生缺页中断的次数为15。
在LRU算法中,最近最少使用的页面被先换出。当页6要调入时,内存的状态为5、2、1,考查页6之前调入的页面,分别为5、1、2,可见2为最近一段时间内使用最少的,本次应换出,然后把页6调入内存。
OPT 1,2,3,4,2,1,5,6,2,1,2,3,7,6,3,2,1,2,3,6
1 1 1 1 1 1 3 3 3 3 6
2 2 2 2 2 2 7 2 2 2
3 4 5 6 6 6 6 1 1
发生缺页中断的次数为11。
在OPT算法中,在最远的将来才被访问的页面被先换出。当页6要调入时,内存的状态为1、2、5,考查页6后面要调入的页面,分别为2、1、2、…,可见5为最近一段时间内使用最少的,本次应换出,然后把页6调入内存。
为什么要引入缓冲技术?设置缓冲区的原则是什么?
答:引入缓冲技术的主要目的是:(1)解决信息的到达率和离去率不一致的矛盾;(2)换存起中转站的作用;(3)使得一次输入的信息能多次使用。
设备缓冲区的原则是:如果数据到达率与离去率相差很大,则可采用单缓冲方式;如果信息的输入和输出率相同(或相差不大)时,则可用双缓冲区;对于阵发性的输入、输出,可以设立多个缓冲区。
第5章 输入输出设备第6章管理
学习重点:
(1)设备管理的任务和功能。
(2)设备分类和使用特点:按输入输出传送方式分为字符型设备和块设备;按资源特点分为独享设备、共享设备和虚拟设备;按设备硬件物理特性分为顺序存取设备、直接存取设备;按设备使用分为物理设备、逻辑设备和伪设备。
(3)设备I/O方式:询问、中断和通道技术。
(4)设备分配技术和管理:设备分配算法按先来先服务和优先级队列。
(5)缓冲技术:单缓冲、双缓冲、多缓冲和缓冲池等。
(6)虚拟设备的技术(SPOOLing技术):共享打印机实例。
(7)设备处理程序的功能。
(8)设备处理程序特点和编制内容(设备标题、数据存储和局部过程、策略过程、中断过程、命令处理子程序)。
教学要求:
(1)理解设备管理的任务和功能。
(2)熟练掌握设备分类及其特点,设备的I/O方式。
(3)了解外部设备的安装。
(4)掌握输入输出设备的分类设计方法。
(5)理解使用缓冲技术的目的和缓冲区的设置方式。
(6)了解SPOOLing系统的功能和实现思想。
(7)了解输入输出设备处理程序的编程要点。
(8)了解I/O控制过程。
习题
1、 从资源分配的角度看,可以把设备分为独占设备和共享设备。打印机属于独占设备,而磁盘属于共享设备。
2、 虚拟设备是通过SPOOLing技术把独占设备变成能为若干用户共享的设备。
3、 通道是一个于CPU的专管输入输出的处理机,它控制外设或外存与内存之间的信息交换。
4、 缓冲区的设置可分为单缓冲,双缓冲,多缓冲和缓冲池。
5、 在UNIX系统中,键盘、终端、打印机等以字符为单位组织和处理信息的设备称为字符设备;而磁盘、磁带等以块为单位组织和处理信息的设备称为块设备。
6、 在多道程序环境中,用户程序的相对地址与装入内存后的实际物理地址不同,把相对地址转换为物理地址,这是操作系统的地址重地位功能。
7、 用户编写的程序与实际使用的物理设备无关,而由操作系统负责地址的重定位,我们称之为设备无关性(设备性)。
8、 在设备管理中,为了克服独占设备速度较慢、降低设备资源利用率的缺点,引入了虚拟分配技术,即用共享设备模拟独占设备。
9、 CPU输出数据的速度远远高于打印机的打印速度,为了解决这一矛盾,可采用( )。
A.并行技术 B. 通道技术
C.缓冲技术 D. 虚存技术
10、 设备管理的目的是为了合理地利用外部设备和[1],设备按照信息的传递特性可分为[2]和[3]。设备管理的主要程序之一是设备分配程序,当进程请求在内存和外设之间传送信息时,设备分配程序分配设备的过程通常是[4]。
供选择的答案:
[1]: A、提高CPU利用率 B、提供接口 C、方便用户 D、实现虚拟设备
[2]: A、块设备 B、存储设备 C、设备 D、虚拟设备
[3]: A、共享设备 B、输入输出设备 C、系统设备 D、字符设备
[4]: A、先分配设备,再分配控制器,最后分配通道
B、先分配控制器,再分配设备,最后分配通道
C、先分配通道,再分配设备,最后分配控制器
D、先分配通道,再分配控制器,最后分配设备
11、 通道是一种( )。
A.I/O端口 B.数据通道
C.I/O专用处理机 D.软件工具
12、 操作系统中采用缓冲技术的目的是为了增强系统( )的能力。
A.串行操作 B. 控制操作
C.重执操作 D.并行操作
13、 操作系统采用缓冲技术,能够减少对CPU的( )次数,从而提高资源的利用率。
A.中断 B. 访问 C. 控制 D. 依赖
14、 缓冲技术用于( )。
A、提高主机和设备交换信息的速度
B、提供主、辅存接口
C、提高设备利用率
D、扩充相对地址空间
15、 SPOOLing技术利用于( )。
A.外设概念 B.虚拟设备概念
C.磁带概念 D.存储概念
16、 采用SPOOLing技术的目的是( )。
A.提高独占设备的利用率 B.提高主机效率
C.减轻用户编程负担 D.提高程序的运行速度
17、 采用假脱机技术的目的是[1]。假脱机技术是将输入输出控制工作大部分交由相应的通道来承担,利用磁盘作为后援存储器,实现了外设同时联机操作,使得[2]成为[3],减少了对频繁使用外设的压力,但假脱机技术一般不适用于[4]。
供选择的答案:
[1]: A、提高外设和主机的利用率 B、提高内存和主机效率
C、减轻用户编程负担 D、提高程序的运行速度
[2][3]: A、块设备 B、字符设备 C、独占设备 D、虚拟设备
[4]: A、分时系统 B、多道批处理系统
C、网络操作系统 D、多处理机系统
18、 在操作系统中,用户在使用I/O设备时,通常采用( )。
A.物理设备名 B.逻辑设备名
C.虚拟设备名 D.设备牌号
19、 利用虚拟设备达到输入输出 要求的技术是( )。
A. 利用外存作为缓冲,将作业与外存交换信息和外存与物理设备交换信息两者起来,并使它们并行工作的过程。
B. 把I/O要求交给多个物理设备分散完成的过程
C. 把I/O信息先放在外存,然后由一台物理设备分批完成I/O要求的过程
D. 把共享设备K. 改为某作业的独占设备,集中完成I/O要求的过程
20、 为什么要引入缓冲技术?设置缓冲区的原则是什么?
答:引入缓冲技术的主要目的是:(1)解决信息的到达率与离去率不一致的矛盾;(2)缓存起中转站的作用;(3)使得一次输入的信息能多次使用。
设备缓冲区的原则是:如果数据到达率与离去率相差很大,则可采用单缓冲方式;如果信息的输入和输出率相同(或相差不大)时,则可用双缓冲区;对于阵发性的输入、输出,可以设立多个缓冲区。
21、 SPOOLing技术如何使一台打印机虚拟成多台打印机?
答:将一享打印机改造为可供多个用户共享的打印机,是应用SPOOLing技术的典型实例。具体做法是:系统对于用户的打印输出,但并不真正把打印机分配给该用户进程,而是先在输出井中申请一个空闲盘块区,并将要打印的数据送入其中;然后为用户申请并填写请求打印表,将该表挂到请求打印队列上。若打印机空闲,输出程序从请求打印队首取表,将要打印的数据从输出井传送到内存缓冲区,再进行打印,直到打印队列为空。
22、 按资源分配管理技术,输入输出设备类型可分为哪三类?
答:按资源分配管理的特点,输入输出设备可分为独享设备、共享设备和虚拟设备三类。
独享设备:即不能共享的设备,一段时间只能由一个作业独占。如打印机、读卡机、磁带机等。所有字符型输入输出设备原则上都应是独享设备。
共享设备:可由若干作业同时共享的设备,如磁盘机等。共享分配技术保证多个进程可以同时方便地直接存取一台共享设备。共享提高了设备的利用率。块设备都是共享设备。
虚拟设备:利用某种技术把独享设备改造成多台同类型独享设备或共享设备。虚拟分配技术就是利用独享设备去模拟共享设备,从而使独占设备成为可共享的、快速I/O的设备。实现虚拟分配的最有名的技术是SPOOLing技术,即假脱机技术。
23、 设备驱动程序是什么?为什么要有设备驱动程序?用户进程怎样使用驱动程序?
答:设备驱动进程(I/O进程,进程是并发环境下程序的一次执行,详细说明见教材第6章117页)与设备控制器之间的通信程序称为设备驱动程序。
设备驱动程序是控制设备动作的核心模块,如设备的打开、关闭、读、写等,用来控制设备上数据的传输。它直接与硬件密切相关,处理用户进程发出的I/O请求。
用户进程使用设备驱动程序时,设备驱动程序的处理过程为:将用户进程抽象的I/O要求转换为具体的要求,检查I/O请求的合法性,读出和检查设备的状态,传送必要的参数,设置设备工作方式,启动I/O设备。
24、 UNIX系统中将设备分为块设备和字符设备,它们各有什么特点?
答:字符设备是以撟址麛为单位进行输入、输出的设备,即这类设备每输入或输出一个字符就要中断一次主机CPU请求进行处理,故称为慢速设备。
块设备是以撟址 閿为单位进行输入输出的设备,在不同的系统或系统的不同版本中,块的大小定义不同。但在一个具体的系统中,所有的块一旦选定都是一样大小,便于管理和控制,传送效率较高。
25、 什么叫通道技术?通道的作用是什么?
答:通道是一个于CPU的专管输入/输出控制的处理机,它控制设备与内存直接进行数据交换。它有自己的通道指令,这些通道指令受CPU启动,并在操作结束时向CPU发中断信号。
通道方式进一步减轻了CPU的工作负担,增加了计算机系统的并行工作程度。
26、SPOOLing的含义是什么?试述SPOOLing系统的特点、功能以及控制过程。
答:SPOOLing是Simultaneous Peripheral Operation On-Line (即外部设备联机并行操作)的缩写,它是关于慢速字符设备如何与计算机主机交换信息的一种技术,通常称为“假脱机技术”。
SPOOLing技术是在通道技术和多道程序设计基础上产生的,它由主机和相应的通道共同承担作业的输入输出工作,利用磁盘作为后援存储器,实现外围设备同时联机操作。
SPOOLing系统由专门负责I/O的常驻内存的进程以及输入井、输出井组成;它将独占设备改造为共享设备,实现了虚拟设备功能。
参考教材108页第五章输入输出设备管理部分。
第7章 进程及处理机管理
学习重点
(1)操作系统“核心”功能和特点
(2)程序的顺序执行与并发执行
(3)进程的定义,进程的五个基本特征,进程控制块,程序与进程的对比,进程与线程
(4)进程的描述;进程的基本状态及转換(就绪、执行、等待)
(5)进程调度算法(先来先服务、RR轮转法、多级反馈轮转法和优先数法)
(6)进程通信:同步与互斥、临界区、原语(加锁/开锁原语、信号量及P-V操作)、消息缓冲
(7)什么是死锁?产生死锁的四个必要条件(互斥使用、保持和等待、非剥夺性、循环等待和处理)
教学要求:
(1)牢固掌握进程的概念。
(2)熟练掌握操作系统核心功能、核心形式。
(3)掌握顺序执行与并发执行的比较。
(4)熟练掌握进程的五个基本特征,掌握进程与程序的主要区别。理解进程与线程的关系。
(5)掌握进程的基本状态:执行态、就绪态、等待态。在什么条件下发生状态转换?
(6)理解进程的一般组成,应深入理解进程控制块的作用。每个进程有惟一的进程控制块。
(7)理解常用的进程调度算法。
(8)掌握进程同步与互斥的比较,简单理解为同步是伙伴,互斥是竞争。
(9)理解信号量概念,P、V操作执行的动作。
(10)掌握死锁的概念、死锁的必要条件、解决死锁的基本方法。
习题
1、什么是进程?
答:进程是一个具有一定功能的程序关于某个数据集合的一次运行活动。它是操作系统动态执行的基本单元,在传统的操作系统中,进程既是基本的分配单元,也是基本的执行单元。(在Windows NT等采用微内核结构的现代操作系统中,进程的功能发生了变化:它只是资源分配的单位,而不再是调度运行的单位,其调度运行的基本单位是线程。)
2、进程的互斥和同步有什么异同点?
答:同步与互斥特点比较见教材127页表6-4。
同步 | 互斥 |
进程-进程 | 进程-资源-进程 |
时间次序上受到某种 | 竞争到某一物理资源时不允许其他进程工作 |
相互清楚对方的存在及其作用,交换信息 | 不一定清楚其他进程情况 |
往往指有几个进程共同完成一个任务 | 往往指多个任务多个进程间通讯制约,故更广泛 |
举例:生产与消费之间,发送与接收之间,作者与读者之间,供者与用者之间。 | 举例:交通十字路口,单轨火车的拨道岔。 |
答:一个进程入睡是指该进程由于缺乏资源不能占用CPU,进入等待状态。一个进程由程序、数据集合和进程控制块(PCB)组成。PCB是进程存在的唯一标志。PCB中包括如下内容:进程标志号、进程状态(执行/就绪/等待)、进程标志、进程优先数、程序地址、现场保护区(通常被保护的信息有程序计数器、程序状态字、各个工作寄存器等)、通信机构、其他信息等。
处于睡眠状态的进程,它的断点在它的PCB中的现场保护区中保护起来。保存程序运行的CPU现场,以便在将来的某一时刻恢复并继续原来的运行。它被唤醒后,把它从等待进程队列中摘下,将进程状态改为就绪,然后将它插入到就绪队列中;等它占用CPU进入执行状态时,从断点处继续执行。
4、什么是临界区?
答:每个进程中访问临界资源的那段程序称为临界区(临界资源是一次仅允许一个进程使用的共享资源)。每次只准许一个进程进入临界区,进入后不允许其他进程进入。
5、试说明进程互斥、同步和通信三者之间的关系。
答:进程的同步与互斥是指进程在推进时的相互制约关系。在多道程序系统中,由于资源共享与进程合作,这种进程间的制约称为可能。为了保证进程的正确运行以及相互合作的进程之间交换信息,需要进程之间的通信。
进程之间的制约关系体现为:进程的同步和互斥。
进程同步:它主要源于进程合作,是进程间共同完成一项任务时直接发生相互作用的关系。为进程之间的直接制约关系。在多道环境下,这种进程间在执行次序上的协调是必不可少的。
进程互斥:它主要源于资源共享,是进程之间的间接制约关系。在多道系统中,每次只允许一个进程访问的资源称为临界资源,进程互斥就是保证每次只有一个进程使用临界资源。
进程通信是指进程间的信息交换。PV操作作为进程的同步与互斥工具因信息交换量少,效率太低,称为低级通信。而高级通信则以较高的效率传送大批数据。
6、考虑一个理发店,只有一个理发师,只有n张可供顾客等待理发的椅子,如果没有顾客,则理发师睡觉;如果有一顾客进入理发店发现理发师在睡觉,则把他叫醒,写一个程序协调理发师和顾客之间的关系。
答:考虑一下理发师(barber)重复的下列活动:(1)睡觉;(2)为顾客理发;
顾客(customers)重复的下列活动:(3)在椅子上等候;(4)理发;离开;
显然,理发师在(1)处要考察是否有顾客等候理发,如果没有,理发师睡觉;在(2)处理发师等待最先进入理发店的顾客唤醒,开始理发。
顾客在(3)处先看是否有座位,没有则离开;等候理发的顾客在(4)处被理发师唤醒(最先理发的顾客要唤醒理发师);理发结束后离开。
在这两个活动中,从资源的角度来看,理发师是顾客争用的资源,用信号量barber表示,初值为0;除此以外,顾客还要争用n张椅子,信号量customers表示等候理发的顾客数,初值为0;最后设置信号灯变量mutex用于这两个活动对资源barber、customers的互斥,初值为1。详细算法见教材131页。
7、有一个阅览室,共有100个座位,读者进入时必须先在一张登记表上登记,该表为每一座位列一表目,包括座号和读者姓名等,读者离开时要消掉登记的信息,试问:
(1)为描述读者的动作,应编写几个程序,设置几个进程?
(2)试用PV操作描述读者进程之间的同步关系。
答:读者的动作有两个,一是填表进入阅览室,这时要考虑阅览室里是否有座位;一是读者阅读完毕,离开阅览室,这时的操作要考虑阅览室里是否有读者。读者在阅览室读书时,由于没有引起资源的变动,不算动作变化。
算法的信号量有三个:seats——表示阅览室是否有座位(初值为100,代表阅览室的空座位数);readers——表示阅览室里的读者数,初值为0;用于互斥的mutex,初值为1。
读者进入阅览室的动作描述getin:
while(TRUE){
P (seats); /*没有座位则离开*/
P(mutex) /*进入临界区*/
填写登记表;
进入阅览室读书;
V(mutex) /*离开临界区*/
V(readers)
}
读者离开阅览室的动作描述getout:
while(TRUE){
P(readers) /*阅览室是否有人读书*/
P(mutex) /*进入临界区*/
消掉登记;
离开阅览室;
V(mutex) /*离开临界区*/
V(seats) /*释放一个座位资源*/
}
8、进程之间有哪些基本的通信方式?它们分别有什么特点?适用于哪些场合?
答:进程通信根据交换信息量的多少分为高级通信和低级通信。低级通信一般只传送一个或几个字节的信息,以达到控制进程执行速度的作用(如PV操作);高级通信则要传送大量数据,目的不是为了控制进程的执行速度,而是为了交换信息。
高级进程通信方式有很多种,大致可归并为三类:共享存储器、管道文件和消息传递。
共享存储器:在内存种分配一片空间作为共享存储区。需要进行通信的进程把它附加到自己的地址空间中,不需要时则把它取消。
管道文件:它是连接两个命令的一个打开文件。一个命令向该文件中写入数据,为写者;另一个命令从该文件中读出数据,为读者。
消息传递:它以消息为单位在进程间进行数据交换。具体说明见教材133页的“消息缓冲”。
9、 程序的并发执行是现代操作系统的基本特征之一,为了更好地描述这一特征而引入了进程这一概念。
10、 进程存在的标志是进程控制块PCB。
11、 进程的静态实体由程序,数据集合和进程控制块PCB三部分组成。
12、 用于进程控制的原语主要有建立原语、撤消原语,挂起原语和激活原语。
13、 进程被创建后,最初处于就绪状态,然后经进程调度程序选中后进入执行 状态。
14、 进程创建工作主要完成的是创建进程控制块(PCB),并把它挂到就绪队列中。
15、 如果系统中有n个进程,则在就绪队列中进程的个数最多为n-1。
16、 进程的同步和互斥反映了进程间直接制约和间接制约的关系。
17、 死锁产生的四个必要条件是互斥使用,保持和等待,非剥夺性和循环等待四种。
18、 操作系统中信号量的值与相应资源的使用情况有关,它的值仅能由P、V操作来改变。
19、 进程至少有三种基本状态:执行态,就绪态和等待态。
20、 每执行一次P操作,信号量的数值S减1。若S3 0,则该进程继续执行;若S<0,则该进程等待 。
21、 每执行一次V操作,信号量的数值S加1。若S>0 ,则该进程继续执行;否则,从对应的等待队列中移出一个进程并将就绪状态赋予该进程。
22、 利用信号量实现进程的互斥,应为临界区设置一个信号量mutex,其初值为1,表示该资源尚未使用,临界区应置于P(mutex)和V(mutex)原语之间。
23、 Windows NT是采用微内核结构的操作系统,它的进程的功能发生了变化,它只是资源分配的单位,不是调度运行的单位,后者的功能由线程完成。
24、 通常,线程的定义是是进程中执行运算的最小单位。在现代操作系统中,资源的分配单位是进程,而处理机的调度单位是线程,一个进程可以有多个线程。
25、 计算机系统一般都设计有两种运行状态:用户态和核心态。
26、 操作系统中,可以并行工作的基本单位是[1],[1]也是系统核心调度及资源分配的基本单位,它是由[2]组成的,它与程序的主要区别是[3]。
供选择的答案:
[1]: A.作业 B. 函数 C. 进程 D.过程
[2]: A.程序、数据和PCB B. 程序、数据和标识符
C.程序、标识符和PCB D. 数据、标识符和PCB
[3]:A.程序有状态,而它没有 B. 它有状态,而程序没有
C.程序可占用资源,而它不可 D.它可占用资源,而程序不可
27、 下列进程状态的转换中,哪一个是不正确的( )。
A.就绪®执行 B. 执行®就绪
C.就绪®等待 D. 等待®就绪
28、 下列各项步骤中,哪一个不是创建进程所必须的步骤( )。
A. 建立一个进程控制块PCB B. 由CPU调度程序为进程调度CPU
C.为进程分配内存等必要的资源 D.将PCB链入进程就绪队列
29、 在下列特性中,哪一个不是进程的特性( )。
A.异步性 B. 并发性 C. 静态性 D. 动态性
30、 在操作系统中,对信号量S的P原语操作定义中,使进程进入相应等待队列等待的条件是( )。
A.S>0 B. S=0 C. S<0 D. S≠0
31、 为了对紧急进程或重要进程进行调度,调度算法应采用( )。
A.先进先出调度算法 B. 优先数法
C.最短作业优先调度 D. 定时轮转法
32、 进程就是可与其他程序共行执行的程序段的一次执行过程,它是系统进行资源分配和调度的一个基本单位。进程具有[1]、[2]、调度性、异步性和结构性5个基本特征。进程是一次执行过程,具有生命期体现了进程的[1]特征。进程由程序段、[3]、[4]组成,其中[4]是进程在系统中存在的唯一标识。
供选择的答案:
[1][2] A、动态性 B、静态性 C、共行性
D、并发性 E、可执行性 F、易用性
[3] A、过程 B、数据 C、进程标识符 D、函数
[4] A、FCB B、FIFO C、PCB D、JCB
33、 进程执行时的间断性,决定了进程可能具有多种状态。进程的基本状态有三种,在分时系统中,当一个进程拥有的时间片到时,则该进程即由[1]进入[2]。
如果出现因某种原因使得处理机空闲时,则需要从就绪队列中选择一进程,并将处理机分配给它,此时该进程进入[3],这个过程是由[4]来完成。
供选择的答案:
[1][2][3] A、就绪状态 B、静止状态 C、等待状态 D、执行状态
[4] A、进程控制程序 B、资源分配程序
C、进程调度程序 D、处理机分配程序
34、 为了描述进程的动态变化过程,采用了一个与进程相联系的( )系统,根据它而感知进程的存在。
A.进程状态字 B. 进程优先数 C.进程控制块 D. 进程起始地址
35、 已经获得除( )以外的所有运行所需资源的进程处于就绪状态。
A.存储器 B. 打印机 C.CPU D. 磁盘空间
36、 进程调度的关键问题是选择合理的( ),并恰当地进行代码转换。
A.时间片间隔 B. 调度算法
C.CPU速度 D. 内存空间
37、 采用时间片轮转法进行进程调度是为了( )。
A. 多个终端都能得到系统的及时响应
B. 先来先服务
C. 优先级较高的进程得到及时响应
D.需要CPU最短的进程先做
38、 在一段时间内,只允许一个进程访问的资源称为( )。
A.共享资源 B. 临界区
C.临界资源 D. 共享区
39、 进程是( )。
A.与程序等效的概念 B. 并发环境中程序的执行过程
C.一个系统软件 D. 存放在内存中的程序
40、 进程具有并发性和( )两大重要属性。
A.动态性 B. 静态性
C.易用性 D. 封闭性
41、 操作系统在控制和管理进程过程中,涉及到( )这一重要数据结构,这是进程存在的唯一标103、 志。
A.FCB B. FIFO
C.FDT D. PCB
42、 从下列有关进程管理的叙述中,选出五条正确叙述。
A、进程之间同步,主要源于进程之间的资源竞争,是指对多个相关进程在执行次序上的协调;
B、临界资源是指每次仅允许一个进程访问的资源;
C、信号量机制是一种有效的实现进程同步与互斥的工具。信号量只能由P-V操作来改变;
D、V操作是对信号量执行加1操作,意味着释放一个单位资源,加1后如果信号量的值小于等于零,则从等待队列中唤醒一个进程,现进程变为等待状态,否则现进程继续进行;
E、消息通信、信箱通信都属于高级通信方式;
F、死锁是指因相互竞争资源使得系统中有多个阻塞进程的情况;
G、若系统中并发运行的进程和资源之间满足互斥使用、保持和等待、非剥夺性和循环等待,则可判定系统中发生了死锁;
H、在对付死锁的策略中,解除死锁通常都是和检测死锁配套使用;
I、产生死锁的原因可归结为竞争资源和进程推进顺序不当;
J、在死锁的解决方法中,由于避免死锁采用静态分配资源策略,所以对资源的利用率不高。
43、 并发性是指若干事件在( )发生。
A.同一时刻 B. 同一时间间隔内
C.不同时刻 D. 不同时间间隔内
44、 顺序程序和并发程序的执行相比,( )。
A.基本相同
B. 有点不同
C.并发程序执行总体上执行时间快
D. 顺序程序执行总体上执行时间快
45、 在单一处理机上,将执行时间有重叠的几个程序称为( )。
A.顺序程序 B. 多道程序
C.并发程序 D. 并行程序
46、 引入多道程序技术后,处理机的利用率( )。
A.降低了 B. 有所改善
C.大大提高 D. 没有变化,只是程序的执行方便了
47、 在单一处理机上执行程序,多道程序的执行是在( )进行的。
A.同一时刻 B. 同一时间间隔内
C.某一固定时刻 D. 某一固定时间间隔内
48、 在单处理机系统中,处于运行状态的进程( )。
A.只有一个 B. 可以有多个
C.不能被挂起 D. 必须在执行完后才能被撤下
49、 如果某一进程获得除CPU外的所有所需运行资源,经调度,分配给它CPU,该进程将进入( )。
A.就绪状态 B. 运行状态
C.等待状态 D. 活动状态
50、 如果某一进程在运行时,因某种原因暂停,此时将脱离运行状态,而进入( )。
A.自由状态 B. 停止状态
C.等待状态 D. 静止状态
51、 一个进程被唤醒意味着( )。
A.该进程重新占有了CPU B.进程状态变为就绪
C.它的优先权变为最大 D.其PCB移至就绪队列的队首
52、 进程从运行状态变为等待状态的原因是( )。
A.输入或输出事件发生 B.时间片到
C.输入或输出事件完成 D.某个进程被唤醒
53、 在操作系统中同时存在多个进程,它们( )。
A.不能共享系统资源
B.不能调用同一段程序代码
C.可以共享允许共享的系统资源
D.可以共享所有的系统资源
54、 操作系统中有一组常称为特殊系统调用,它不能被系统中断,在操作系统中称为( )。
A.初始化程序 B. 原语
C.子程序 D. 控制模块
55、 进程间的基本关系为( )。
A.相互与相互制约 B.同步与互斥
C.并行执行与资源共享 D. 信息传递与信息缓冲
56、 进程间的同步与互斥,分别表示了各进程间的( )。
A.相互与相互制约 B.协调与竞争
C.不同状态 D. 动态性与性
57、 两个进程合作完成一个任务,在并发执行中,一个进程要等待其合作伙伴发来信息,或者建立某个条件后再向前执行,这种关系是进程间的( )关系。
A.同步 B. 互斥
C.竞争 D. 合作
58、 系统出现死锁的原因是( )。
A.计算机系统发生了重大故障
B.有多个封锁的进程同时存在
C.若干进程因竞争资源而无休止地等待着,不释放已占有的资源
D.资源数大大少于进程数,或进程同时申请的资源数大大超过资源总数
59、 两个进程争夺同一个资源( )。
A.一定死锁 B.不一定死锁
C.不会死锁 D.以上说法都不对
60、 解决死锁的途径是( )。
A.立即关机排除故障
B.立即关机再重新开机
C.不要共享资源,增加独占资源
D.设计预防死锁方法,运行检测并恢复
61、 进程P1使用资源情况:申请资源S1,申请资源S2,释放资源S1;进程P2使用资源情况:申请资源S2,申请资源S1,释放资源S2,系统并发执行进程P1,P2,系统将( )。
A.必定产生死锁 B. 可能产生死锁
C.会产生死锁 D. 无法确定是否会产生死锁
62、 进程和程序的本质区别是( )。
A.存储在内存和外存 B.顺序和非顺序执行机器指令
C.分时使用和独占使用计算机资源 D.动态和静态特征
63、 操作系统为什么要引入进程?进程与程序的关系是怎样的?
答:现代计算机系统中程序并发执行和资源共享的需要,使得系统的工作情况变得非常复杂,而程序作为机器指令集合,这一静态概念已经不能如实反映程序并发执行过程的动态性,因此,引入进程的概念来描述程序的动态执行过程。这对于我们理解、描述和设计操作系统具有重要意义。
进程定义为程序在并发环境中的执行过程,它与程序是完全不同的概念。主要区别是:(1)程序是静态概念,是永久性软件资源;而进程是动态概念,是动态生亡的暂存性资源。(2)进程是一个能运行的单位,能与其他进程并发执行,系统是以进程为单位分配CPU的;而程序则不能作为一个能运行单位。(3)程序和进程没有一一对应关系。一个程序在工作时可以由多个进程工作,一个进程在工作时至少对应有一个程序。(4)各个进程在并发执行时会产生制约关系,使各自推进的速度不可预测;而程序作为静态概念,不存在这种异步特征。
进程和程序关系类似生活中的炒菜与菜谱。菜谱相同,而各人炒出来的菜的味道却差别很大。原因是菜谱基本上是一种静态描述,它不可能把所有执行的动态过程中,涉及的时空、环境等因素一一用指令描述清楚。
、 如何理解进程的顺序性与并发性?
答:进程的顺序性与并发性:
1、顺序性
顺序性包括两层含义:(1)内部顺序性,对于一个进程来说,它的所有指令是按序执行的;(2)外部顺序性,对于多个进程来说,所有进程是依次执行的。
例如,假如有P1和P2两个进程,其活动分别为:
P1活动:a1 a2 a3 a4
P2活动:b1 b2 b3 b4
顺序执行时,有如下两种情形:
情形1:a1 a2 a3 a4 b1 b2 b3 b4
情形2:b1 b2 b3 b4 a1 a2 a3 a4
2、并发性
并发性包括如下两层含义:(1)内部顺序性,对于一个进程来说,它的所有指令是按序执行的;(2)外部并发性,对于多个进程来说,所有进程是交叉执行的。
例如,对于上面P1和P2两个进程来说,并发执行有许多情形,如:
情形1:a1 b1 b2 a2 a3 b3 a4 b4
情形2:b1 b2 a1 a2 a3 b3 b4 a4
并发进程在其执行过程中,出现哪种交叉情形是不可预知的,这就是并发进程的不确定性,操作系统应当保证:无论出现何种交叉情形,每个进程运行的结果都应当是唯一的,正确的。
65、 什么是进程的同步与互斥?
答:进程的同步与互斥是指进程在推进时的相互制约关系。在多道程序系统中,由于进程合作与资源共享,这种进程间的制约称为可能。我们把前者称为进程同步,后者称为进程互斥。
进程同步是进程间共同完成一项任务时直接发生相互作用的关系。为进程之间的直接制约关系。在多道环境下,这种进程间在执行次序上的协调是必不可少的。同步进程之间的关系如同接力赛跑中的运动员,或生产流水线的每一道工序。
进程互斥是进程之间的间接制约关系。在多道系统中,每次只允许一个进程访问的资源称为临界资源,进程互斥就是保证每次只有一个进程使用临界资源。互斥进程之间的关系如同汽车在交叉路口争用车道,篮球比赛中双方争抢篮板球。
66、 什么叫原语?
答:在操作系统中,往往设计一些完成特定功能的、不可中断的过程,这些不可中断的过程称为原语。如P、V操作原语。
67、 什么是线程?它与进程有什么关系?
答:线程是进程中执行运算的最小单位,即处理机调度的基本单位。它与进程的关系是:一个线程只能属于一个进程,而一个进程可以有多个线程;资源分配给进程,同一进程的所有线程共享该进程的所有资源;处理机分给线程,即真正在处理机上运行的是线程;线程在运行过程中,需要协作同步,不同进程的线程间要利用消息通信的办法实现同步。
特别注意的是:传统操作系统中的进程概念与现代操作系统中的进程概念不同——简单说,传统操作系统中进程具有分配资源、调度运行两大功能,而现代操作系统中进程只作为分配资源单位,线程才作为调度运行单位。
第8章 操作系统结构和程序设计
学习重点:
(1)操作系统的编程概念和特点。
(2)结构设计的目标;分层原则:自底向上或自顶向下的有序分层(全序或半序);分块原则;模块接口法的设计步骤;模块接口法的优缺点;
(3)层次模块化结构设计:层次模块模型、整体内核模型、内核进程模型、对象模型。
(4)微内核体系结构主要优点。
教学要求:
(1)理解计算机操作系统的内结构和外结构、用户态和核心态运行的特点:给系统以特殊权限,以利于计算机操作系统的安全可靠。
(2)理解操作系统的编程特点:模块化结构、层次化结构、内核结构和有序结构。
(3)了解现代计算机操作系统的基本设计思想和方法
习题
1、如何尽快熟悉一个计算机操作系统?
答:熟悉一个操作系统,可以从以下几种不同的角度:
(1)用户的角度
这是从操作系统向用户提供服务的角度来观察操作系统。从操作系统的外部特性来看,它提供了使用的语言,如命令语言、图形语言、菜单语言等。一般的操作系统向用户提供了命令一级、系统调用一级以及作业控制一级的服务。这些服务涉及到设备控制、文件管理、进程的建立和撤消、内存管理等。此外,操作系统作为计算机硬件功能的扩充,为它的上一层(应用软件)提供了虚拟机环境。
(2)资源管理的角度
从这种静态角度认识操作系统,它是各种资源的管理者。它负责它们的登记、记录状况、分配、回收以及维护其完整性,并操纵其使用,同时向用户提供方便的使用界面。根据资源的分类,操作系统分成处理机管理、存储管理、文件管理、设备管理和作业管理等五个部分。这几个部分相对又互相关联,协调配合运行,一起完成用户的服务要求。
(3)进程的角度
这是从动态的、运行的观点来熟悉操作系统。操作系统要通过组织对资源的共享来提高资源的利用率,必然要引入并行机制。在这个意义上,操作系统由若干个可以同时运行的程序(即进程)和一个对它们进行管理、协调的系统核心组成。在系统核心的管理下,各个进程此起彼伏地运行,完成用户的服务工作。
2、新一代操作系统采用微内核技术,有什么优缺点?
答:微内核技术的主要优点:
(1)统一的接口,在用户态和核心态之间无需进程识别;
(2)可伸缩性好,能适应硬件更新和应用变化;
(3)可移植性好,所有与具体机器特征相关的代码,全部隔离在微内核中,如果操作系统要移植到不同的硬件平台上,只需修改微内核中极少代码即可;
(4)实时性好,微内核可以方便地支持实时处理;
(5)安全可靠性高,微内核将安全性作为系统内部特性来进行设计,对外仅使用少量应用编程接口;
(6)支持分布式系统,支持多处理器的体系结构和高度并行的应用程序;
(7)真正面向对象的操作系统。
由于操作系统核心常驻内存,而微内核结构精简了操作系统的核心功能,内核规模比较小,一些功能都移到了外存上,所以微内核结构十分适合嵌入式的专用系统,对于通用性较广的系统,将使CPU的通信开销增大,从而影响到计算机的运行速度。
3、在大程序的编程过程中,模块大小如何选择?分块原则是什么?
答:模块是指执行某一特定任务(或实现某一特定的抽象数据类型)的数据结构和程序代码。专家建议,一个模块最好只包含50~60条语句(即可打印在一页打印纸上)。这是考虑到开发人员只需坐着就能方便地进行阅读和研究。
划分模块的原则是:各个模块尽可能具有较大的性,换句话说,希望这样设计软件结构,使得每个模块完成一个相对的特定子功能,并且和其他模块之间的关系很简单,以便能方便地把不同场合下写成的程序模块组合成软件系统。衡量模块性的定性标准是内聚(一个模块内各个元素彼此结合的紧密程度)和耦合(一个软件结构内不同模块之间互连程度的度量)。高内聚、低耦合的模块是设计时追求的目标。(此题的内容涉及到计算机软件设计的知识,若需要进一步了解,可以参考“软件工程”方面的相关教材。)
4、目前,在操作系统设计中采用的结构模型主要有四种:层次模块模型,整体内核模型,进程模型,对象模型。
二.本课程复习方法和考试形式
1、复习方法
(1)抓住重点,掌握课程的主要内容,注意知识的前后连贯。
计算机操作系统课程的基本要求是记住两句话:
第一句话是:计算机操作系统是方便用户,管理和控制计算机软硬件资源的系统软件(或程序集合)。第二句话是:操作系统目前有五大类型(批处理、分时、实时、网络和分布式)和五大功能(作业管理、文件管理、存储管理、设备管理和进程管理)。
在复习时围绕操作系统的五大功能这一主线领会各章的主要内容,分别进行总结。操作系统中概念很多,要突出掌握重点概念,如:操作系统定义,进程、重定位、死锁等概念,要结合主教材教学要求及教材中使用的黑体字。首先对每一章讲的问题是什么要搞清楚。然后,总结一下:针对该问题引入什么概念,该概念用来解决什么基本问题,采用什么基本方法予以解决。如果能把各章知识连贯起来、并结合上机体会进行复习,效果会更好。
在对于基本概念理解的基础上,掌握解决问题的方法。要注意总结自己的学习方法和效果。
(2)注重上机实验和平时作业
操作系统的上机实验很重要,它不仅可以加深对课本知识的理解,而且可以学到很多实际工作的经验,这对于增强动手技能和分析解决实际问题的能力、提高专业素质很有帮助。大家应尽量做全、做好实验。实验前要进行预习:准备做什么,用到哪些知识,大致会出现什么结果,心中应有数。实验时应注意出现的结果,并分析原因,特别是不正常的情况,对现象、解决办法、原因都最好记下来。解决一个问题,就增长一份才干。
平时应认真、地完成自测题、作业。根据教学大纲要求,考试难度不会超出规定范围。对基本内容应牢固掌握,并能进行适当地灵活应用。
2、考试形式
操作系统期末考试是闭卷考试,实行百分制。试题将覆盖全部所学的内容(小号字内容为扩展知识面部分,不在考核范围内)。在题目安排上,以需要“掌握”和“理解”的内容为主,一般“了解”的内容为辅。
试题类型包括:是非题、选择题、填空题和应用题。具体考核要求参见该课程的考核说明。
三.模拟试题
是非题
( )1.进程的互斥和同步总是因相互制约而同时引起
( )2.操作系统“生成”,是可以按用户的任意要求,装配成各种应用核心。
( )3.多用户操作系统离开了多终端硬件支持,无法使用。
( )4.作业同步就是进程同步的条件控制。
选择题
引入进程概念的关键在于:
( )独享资源.( )共享资源.( )顺序执行.( )便于调试。
操作系统核心部分的主要特点是:
( )一个程序模块.( )常驻内存.( )有头有尾的程序.( )串行执行。
系统调用是:
( )一条机器指令.( )提供编程人员的接口.( )中断子程序.( )用户子程序。
4. 操作系统中用得最多的数据结构是:
( )堆栈.( )队列.( )表格.( )树。
填充题
按资源分配,设备类型分为以下三类:
___________________,___________________和__________________。
2. 文件的三种物理结构是_________________,_________________和___________________。
3. 常用的进程调度算法有_________________,_________________和___________________。
4. 作业I/O方式有如下三种:______________,______________和______________。
回答题
试以某航空公司为两旅行社A和B的顾客预订飞机票为例,说明互斥的含义。
试以生产者——消费者问题为例,用PV操作说明进程同步问题的实质。
模拟试题答案
是非题
1.(╳) 2.(╳) 3.(╳) 4.(╳)
选择题
1.(√ )共享资源
2.(√ )常驻内存
3.(√ )提供编程人员的接口
4.(√ )表格
填充题
1.独享 共享 虚拟
2. 顺序 链接 索引
3. 先来先服务 时间片轮转 优先数法
4. 脱机 联机 假脱机(SPOOLing)
回答题
1.一个生产者,一个消费者和一个产品之间关系是典型的进程同步问题。设信号量S为仓库内产品,P-V操作配对进行缺一不可。生产者进程将产品放入仓库后通知消费者可用;消费者进程在得知仓库有产品时取走,然后告诉生产者可继续生产。
2.某航空公司为两旅行社A和B的顾客预订飞机票,飞机票是互斥内容。假设为A订完了飞机票,B就不能再订票。
http://wcw.zjtvu.edu.cn:07/module/temp/fxzl/fxzl.htm