操作系统课后部分习题及答案_第1页
操作系统课后部分习题及答案_第2页
操作系统课后部分习题及答案_第3页
操作系统课后部分习题及答案_第4页
操作系统课后部分习题及答案_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第2章操作系统的运行环境

2.2现代计算机为什么设置目态/管态这两种不同的机器状态?现在的lntel80386设置

了四级不同的机器状态(把管态又分为三个特权级),你能说出自己的理解吗?

答:现在的Intel80386把执行全部指令的管态分为三个特权级,再加之只能执行非特

权指令的目态,这四级不同的机器状态,按照系统处理器工作状态这四级不同的机器状态也

被划分管态和目态,这也完全符合处理器的工作状态。

2.6什么是程序状态字?主要包括什么内容?

答:如何知道处理器当前处于什么工作状态,它能否执行特权指令,以及处理器何以知

道它下次要执行哪条指令呢?为了解决这些问题,所有的计算机都有若干的特殊寄存器,如

用一个专门的寄存器来指示一条要执行的指令称程序计数器PC,同时还有一个专门的寄存

器用来指示处理器状态的,称为程序状态字PSW。

主要内容包括所谓处理器的状态通常包括条件码-反映指令执行后的结果特征;中断屏

蔽码-指出是否允许中断,有些机器如PDP-11使用中断优先级;CPU的工作状态-管态还

是目态,用来说明当前在CPU上执行的是操作系统还是•般用户,从而决定其是否可以使

用特权指令或拥有其它的特殊权力。

2.11CPU如何发现中断事件?发现中断事件后应做什么工作?

答:处理器的控制部件中增设一个能检测中断的机构,称为中断扫描机构。通常在每条

指令执行周期内的最后时刻中扫描中断寄存器,询为是否有中断信号到来。若无中断信号,

就继续执行下一条指令。若有中断到来,则中断硬件将该中断触发器内容按规定的编码送入

程序状态字PSW的相应位(IBM-PC中是第16-31位),称为中断码。

发现中断事件后应执行相中断处理程序,先由硬件进行如下操作:

1、将处理器的程序状态字PSW压入堆栈

2、将指令指针IP(相当于程序代码段落的段内相对地址)和程序代码段基地址寄存器

CS的内容压入堆栈,以保存被子中断程序的返回地址。

3、取来被接受的中断请求的中断向量地址(其中包含有中断处理程序的IP,CS的内

容),以便转入中断处理程序。

4、按中断向量地址把中断处理程序的程序状态字取来,放入处理器的程序状态字寄存

器中。

2.16有四个作业A,B,C,D,要求定时唤醒运行,其要求如下:

A20秒后运行,经过40秒后再次运行。

B30秒后运行。

C30秒后运行,经过25秒后再次运行。

D65秒后运行。

答:请建立相应原时钟队列。

ABCCAD

201002555

2.18什么叫重定位?有哪几种重定位技术?有何区别?

答:故重定位是把程序中相对地址变换为绝对地址。

对程序进行重定位的技术目前按重定位的时机区分为两种:静态重定位和动态重定位。

静态重定位是要把程序中所胡与地址有关的项在程序运行前(确切地说是在程序装入主

存时)修改好,它是在程序装入主存时由连接装入程序进行重定位

动态重定位不是在程序装入过程中进行。在处理器每次访问主存时,由动态地址变换机

构(硬件)自动进行把相对地址转换为绝对地址。

2.20对比绝对装入程序和连接装入程序。

答:在个人计算机中用户能使用的主存起始地址是可以知道的。这种机器上的编译和汇

编程序往往把源程序翻译成绝对地址形式的目标程序(以该机器的用户可用的起始地址作为

基准地址)。因此当需要再次装入目标程序时,就十分简单-,没有什么重定位问题。只要按

其给出的起始地址依次地将程序读入即可。

在对多数多道程序系统使用相对装程序(连接装入程序)。其主要功能是把主程序同被

其调用的的各子程序连接装配成一个大的完整的程序,并装入主存运行。

第3章进程管理

P.57页

3.1为什么要引入进程概念?进程的基本特征是什么?它与程序有何区别。

答:进程的概念是操作系统中最基本、最重要的概念。为了核画系统内部出现的情况,

描述系统内部各作业的活动规律而引进的一个新的概念,山于处在这样一个多道程序系统所

带来的更为复杂的环境中,程序具有了并行、制约、动态的特征,使得原来的程序概念已难

以刻画和反映系统中的情况了。

进程的基本特征是动态性,并行性;

进程与程序的区别:

1、进程是程序的执行,故进程属于动态概念,而程序是一组指令的有序集合,是静态

的概念。

2、进程既然是程序的执行,或者说是“一次运行活动”,因而它是有生命过程的。从

投入运行到运行完成,或者说是进程存在诞生(建立进程)和死亡(撤消进程)。换言之,

进程的存在是暂时,而程序的存在是永久的。

3、进程是程序的执行,因此进程的组成应包括程序和数据。除此之外,进程还山记录

进程状态信息的“进程控制块”组成。

4、一个程序可能对应多个进程。

5、一个进程可以包含多个程序。

3.2定义以下术语:程序、过程、处理器、进程、用户、任务和作业。

答:程序-是完成某个功能的指令的集合;

过程-计算机处理一次事件的整个流程

处理器-计算机的核心硬件部份,负责处理用户要求的各种运算任务。

进程-是一个具有••定独立功能的程序关于某个数据集合的一次运行活动。

用户-是指计算机为他工作的人;

任务-是用户要求计算机处理的事情。

作业-是用户要求计算机给予计算(或处理)的一个相对独立的任务。

3.3为什么为什么说PCB是进程存在的惟一标志?

答:操作系统用一个称为进程控制块PCB的数据结构来记录本进程的属性。进程控制

块PCB是操作系统中最重要的数据结构。PCB的作用不但是记录进程的属性信息,以便操

作系统对进程进行控制和管理。而且PCB标志进程的存在,操作系统根据系统中是否有该

进程的进程控制块PCB而知道该进程的存在与否。系统在建立进程的同时就建立该进程的

PCB,在撤消一个进程时也就撤消其PCB。所以说进程的PCB对进程来说是它存在的具体

的物理标志和体现。PCB对操作系统来说,也是调度进程的主要原因的数据基。

3.10试列举出进程状态转换的典型原因,详细列出引起进程调度的因素。

答:(1)系统有时可能出故障或某些功能受到破坏。这时就需要暂时将系统中的进程挂起,

以便系统把故障消除后,再把这些进程恢复到原来状态。

(2)用户检查自己作业的中间执行情况和中间结果时,因同预期想法不符而产生怀疑。这

时用户要求挂起他的进程,以便进行某些检查和改正。

(3)系统中有时负荷过重(进程数过多),资源数相对不足,从而造成系统效率下降。此时

需要挂起一部分进程以调整系统负荷,等系统中负荷减轻后再将被挂起进程恢复运行。

如果一个进程原来处于运行状态或活动就绪状态,此时可因挂起命令而由原来状态变为挂起

就绪状态,此时它不能参与争夺处理器,即进程调度程序不会把处于挂起就绪状态的进程挑

选来运行。当处于挂起就绪状态的进程接到解除挂起命令后,它就由原状态变为活动就绪状

态。如果一个进程原来处于活动阻塞状态,它可因挂起命令而变为挂起等待状态,直到解除

挂起命令才能把它重新变为活动等待状态。处于挂起等待状态的进程,其所等待的事件(如

正在等待输入输出工作完成,等待别的进程发给它一个消息)在该进程挂起期间并不停止这

些事件的进行。因而当这些事件发生后(输入输出完成,消息已发送来了),该进程就由原

来挂起阻塞状态变为挂起就绪状态。

第4章多线程

P78

4.3进程和线程的关系是什么?线程是由进程建立的,是吗?线程对实现并行性比进程机制

有何好处?

答:线程是进程中相对独立的一个控制流序列;线程也称为轻质进程。

不是,好处有:(1)用于创建和撤消线程的开销比创建和撤消进程的系统开销(CPU时间)

要少得多。(2)CPU在线程之间开关时的开销也远比进程之间开关的开销小。(3)线程机

制也增加了通讯的有效性。(4)方便作简化了用户的程序结构工作。

4.4什么是线程,它有哪些性质?

答:线程是进程内一个相对独立的、可调度的执行单位。

它有以下性质:

(1)线程是进程内的一个相对独立的可执行单元。因此不妨把线程看作是应用中的一个子

任务的执行。

(2)线程是操作系统中基本高度单元,因此线程中应包含有调度所需的必要信息。

(3)由于线程是被调度的基本单位,而进程不是调度的单元。所以每个进程在创建时,至

少需要同时为该进程创建一个线程。也就是说进程中至少要有一个或一个以上线程,否则该

进程无法被调度执行。

(4)需要时,线程可以创建其他线程。

(5)进程是被分给并拥有资源的基本单元,同一进程内的多个线程共享该进程的资源。但

线程并不拥有资源,只是使用它们。

(6)由于共享资源(包括数据和文件),所以线程间需要通信和同步机制。

(7)线程有生命期,有诞生和死亡。在生命期中有状态的变化。

第3章操作系统

3.1概述

3.1.1本章的特点及学习建议

操作系统是计算机系统中最基本的系统软件,目的是为了方便用户和管理、控制计算机硬、

软件资源,因此有人把它形容为计算机系统的“管家”。我们学习操作系统,并不是为了去

开发、编制操作系统软件,主要是了解它的各部分构成及工作原理,以便能更合理、有效地

使用它。

操作系统是计算机技术与管理技术的结合,因此它是一个独立完整的管理软件,在其中应用

了数据结构中的栈、队、表、树等结构形式,我们在学习过程中应与前面学过的数据结构知

识联系起来,以加深对它的理解。

当今操作系统的种类很多,建议大家能多上机操作,体会操作系统的作用。如有可能,希望

能在多种不同的操作系统上进行操作,比较其异同,这样可以大大增加对操作系统的感知认

识,更进一步体会操作系统在计算机中所发挥的作用。

3.1.2重点和难点

操作系统的出现及发展过程是随着计算机技术的发展以及用户对计算机使用的要求而不断

改进的。为了充分利用计算机系统的资源,多道程序设计是当前操作系统的重要核心技术之

一,也就是允许在一台计算机上同时运行多道程序,因而出现了很多与多道程序有关的概念,

如并发性、共享性、不确定性、虚拟性等。为使多道程序能协调有序地工作,一定要有多种

技术措施来保证,从而提出为解决多道程序并发运行同步、互斥、死锁等问题的方法。这些

都是操作系统中比较重要但又是比较难理解的部分。

3.1.3有关的概念及特性

1.操作系统发展的几个阶段

(1)手工操作阶段:没有操作系统

(2)早期批处理阶段:分为早期联机批处理与早期脱机批处理阶段。它们节省了用户操作

时间并发挥了主机的高速计算能力。

(3)执行系统阶段:借助通道和中断技术,可以使CPU和各种外设并行操作。

(4)多道程序系统阶段:实现多道程序在一台机器上同时运行,可以实现资源的最佳利用。

2.操作系统的分类

(1)多道批处理操作系统

成批处理作业,提高了作业的吞吐量,也提高了系统资源的利用率。缺点是用户以脱机

方式使用计算机,在计算过程中无法与机器交互。

(2)分时系统

一台计算机与多台终端相连接,终端上的用户可以同时使用计算机。具有同时性与交互性特

点。

(3)实时系统

对于外来信息具有瞬时响应的能力,多用于实时控制和实时信息处理领域。具有及时性和高

可靠性特点。

以上是三种最基本的操作系统类型。自20世纪80年代开始,微型机的普及以及计算机网络

的发展,出现了网络操作系统及分布式操作系统,这里不再详述。

3.操作系统的功能及特性

(1)操作系统的功能

操作系统的功能概括起来就是方便用户和充分利用计算机资源。具体的就是存储管理、处

理器管理、设备管理、文件管理及用户接口几部分。

(2)操作系统的特性

•并发性

系统内部具有并发机制,能协调多个终端用户同时使用计算机资源,能控制多道程序同时

运行。

•共享性

由于操作系统具有并发性,整个系统的软、硬件资源可以由多个程序共同使用。并发性与共

享性相辅相成,是操作系统的两个基本特性。

•不确定性

在多道程序设计中,由于运行环境的影响,程序的运行时间、运行顺序等均具有不确定性。

•虚拟性

“虚拟”是指把一个物理客体变为若干个逻辑上的对应物,从而扩展了它的功能。它体现在

操作系统的方方面面。如多道程序在单CPU的计算机上同时运行,使得多个程序好像独占了

一个CPU:若干终端用户分时使用一台主机,好像每人独占了一台计算机;虚拟存储器使得

比存储器容量大得多的程序能在其上运行;虚拟设备可以把一台独占的输入、输出设备变成

多道程序共享的设备等。这些都体现了操作系统的虚拟性,希望大家能在后面几节中加以体

会。

3.2存储管理

3.2.1基本功能和相关的概念

1.存储管理的基本功能

(1)内存空间的分配和去分配

(2)地址转换

(3)存储空间保护

(4)内存空间的扩充

2.有关存储管理的概念

(1)绝对地址与相对地址

绝对地址又称物理地址或实地址,是指程序在主存储器中的地址编码。

相对地址又称逻辑地址或虚地址,是指程序本身的地址编码,一般从零地址开始。

(2)存储空间与地址空间

存储空间又称物理地址空间,由绝对地址对应的主存空间组成。

地址空间又称逻辑地址空间,由逻辑地址的集合组成。

(3)重定位

可执行程序装入内存时,逻辑地址与绝对地址一般是不相符的,必须通过地址转换机构将

逻辑地址转换成绝对地址,称为重地位。重定位的方式有静态重定位和动态重定位两种。

静态重定位是在程序装入时完成的,而动态定位是在程序运行时完成的。

存储管理的形式很多,致使很多同学感到内容很多又很零碎,因此建议大家在学习这部分

内容时.,不要把各种方式孤立起来,而应用连贯、发展的眼光来看待,因为各种形式之间是

有联系的,一般来说,后者是前者的改进与补充。

3.2.2实存储管理

失存储管理方式要求把每一个作业放在主存的一片连续区域中,为了满足多道程序的要

求,必须把主存的用户区分成若干个连续分区。根据不同的分区划分方式,可以有以下几种

管理形式:

固定分区分配

把主存用户区划分成若干大小不等的分区,按作业的大小选择合适的分区。

问题:作业地址空间不可能与分区大小绝对相等,因而出现了“碎片”,浪费了存储空间。

2.可变分区分配

根据作业实际需求量对用户区进行动态分割,系统设置一张链表或数组,用来登记当时用户

区的空闲块,作为动态分配和回收主存空间的依据。可变分区常用的存储空间分配策略有三

种。

(1)首次适应算法:选择所碰到的第一个满足作业存储量要求的块分配给用户。

(2)最佳适应算法:选择满足作业需求块中最小的一块分配给用户。

(3)最差适应算法:在空闲块中选出满足作业要求的最大块分配给用户。

问题:经过多次分配和回收以后,用户区中可能会出现很多零碎的空间,不足以放入一个作

业,也称为“碎片”,使新作业无法进入内存。

3.可重定位分区分配

为解决可变分区分配的碎片问题,在适当时候对内存进行“紧缩”,即将内存中的作业移向

存储区一端,而将空闲块集中到另一端,构成较大的空闲块以便新的作业进入。

由于紧缩工作是在程序执行过程中进行的,因此要对内存中的程序重新定位,称为动态重定

位,它需要借助一些硬件设备来完成。

问题:紧缩过程需要耗费时间,不宜频繁进行。

4.内存“扩充”技术

在上述分区分配方式下,当内存空间小于作业所需的空间时,作业就无法进入内存运行。在

不增加物理内存容量时,一般采用“覆盖”和“交换”技术来“扩充”内存。

(1)覆盖

系统提供用户覆盖机构,它将整个作业分为常驻内存和覆盖两部分,用户只要将最大的子程

序作为覆盖区告诉系统,即可运行。

问题:要求用户把作业如何分段和作业的可覆盖情况写成覆盖描述文件,同作业一起交给操

作系统。

(2)交换

当内存不够时,系统按一定的策略设法腾空•些内存空间,也即采用强制方法把内存中部分

内容暂时放到外存中去。

问题:以整个作业进行内外存交换,代价较大。

3.2.3虚拟存储管理

虚拟存储管理是通过把内、外存统一起来管理,给用户造成一种仿佛系统内具有巨大内存供

用户使用的假象。

虚拟存储管理与实存储管理在理念上的差别是:虚拟存储管理认为作业在内存空间中不一定

要求连续存放,其次作业在运行时不必全部都同时放在内存中,可以允许有一部分放在外存

中,只要保证当时被执行的那部分在内存即可。

虚拟存储管理把作业的相对地址称为“虚拟地址”,作业的地址空间为“虚拟地址空间”;把

分配给该作业的物理地址称为“实在地址”,该存储空间为“实在地址空间”。作业在运行时,

只要时时保证作业的实在地址与虚拟地址的对应关系,而并不在乎虚拟地址空间与实在地址

空间大小是否相等,实际上实在地址空间远比虚拟地址地址空间小。虚拟存储器的容量取决

于内存与外存的容量。一个虚拟存储器的最大容量由计算机的地址结构确定。

1.分页存储管理

(1)基本思路

•页把作业的逻辑地址空间分成若干个长度相等的区域,称为页。

•页架(块)把内存空间划分成若干个与页面长度相等的区域,称为页架。程序装入内存

时,每页对应一个页架,这些页架可以是不连接的,也不要求所有页面同时装入内存中。

•页表系统为每道作业建立一张页血映射表,筒称页表,记录相应页在内存中对应的页架

号。

(2)地址转换

采用动态重定位。

・地址变换机构自动将逻辑地址分解为页号P和页内位移do

•以页号为索引去检索页表,得到该页对应的页架号p'。

•将页内位移d拼接在页架号后,得到相应的物理地址。

•检索页表时,若对应该页的状态为“0”,说明该页当时不在内存中,则发出缺页中断,把

该页血调入内存后再进行地址转换工作。

(3)页面更换

当系统将缺页从外存调入内存时,发现一无可用的物理空间时,则须从内存中淘汰一个页面

以腾出空间装入缺页。若被淘汰的页面选择不当,可能会出现刚被淘汰的页面马上又要被访

问,使系统花费大量的时间忙于进行频繁的页面交换,降低系统效率,甚至导致系统瘫痪,

这种现象称为抖动现象。

常用的淘汰算法有:

•先进先出法(FIFO)

选择在内存中驻留时间最久的页面予以淘汰。

•最近最久未使用法(LRU)

选择离当前时间最久未使用过的页面淘汰。

(4)优缺点

•优点虚存量大,用户不必担心内存不够;不要求作业连续存放,有效地解决了“碎片”

问题。

•缺点要求硬件支持,增加了成本;要处理页面中断,系统开销较大,处理不当还可能产

生“抖动”。

2.分段存储管理

(1)基本思路

•段作业中每一个模块称为段,每段占有连续的地址空间,其逻辑地址是二维的,由段号

和段内地址组成。

•段表系统为每个作业建立一张段表,记录该段在内存中的起始地址和段长。各段可存放

在内存不同的分区中,也不要求所有的段同时调入内存中。

(2)地址转换

采用动态重定位

•地址转换机构取出逻辑地址的段号和段内地址。

•根据段号检索段表,找到该段的对应表目。

•将该段的起始地址与段内地址想加得到绝对地址。

•若对应该段状态为“0”,说明该段不在内存,需要通过中断调入。

(3)段的共享

由于段是有完整的逻辑意义,可以提供给多个作业共享。若多个作业段表中的某一项指向内

存的同一地址,则内存中以该地址为起始地址的那一段便被共享了。

(4)优缺点

•优点方便用户编程,便于共享与保护,便于动态链接和增长。

•缺点增加硬件成本,由于段的长度不等,会出现与分区管理相同的“碎片”问题。

3.段页式存储管理

(1)基本思路

将段式与页式管理结合起来,克服各自存在的一些问题。它把作业分成若干段,每个段分成

若干页。为了实现地址转换,必须为每个作业配置一张段表和若干张页表。

(2)地址转换

作业的逻辑地址是二维的,包括段号和段内地址,其中段内地址又包含页号和页内地址。

•地址转换机构取出逻辑地址,再将段内地址细分为页号和页内地址。

•根据段号检索段表,取出相应的页架号。

•把页架号与页内地址合并得到物理地址。

(3)优缺点

•优点具有分段分页的优点。

•缺点更增加硬件成本与软件复杂性。

3.3处理器管理

中央处理器(CPU)是计算机系统中负责运算与控制的部件,调入内存中的作业只有占有了

CPU才能运行。在单CPU的系统中,要实现多道程序并发运行,一定要合理地分配CPU,使

得从宏观上看各个程序都在随着时间向前推进。在这一部分将讨论三个问题:

(1)当多个用户把各自的作业提交给计算机后,操作系统如何对它们进行调度管理。

(2)已进入内存中的作业,如何对它们合理地分配CPU。

(3)如何解决多道程序并发运行时出现的同步、互斥与死锁问题。

3.3.1基本概念与术语

1.作业

作业是用户交给计算机运行的程序、数据及说明。一个作业可以分解成若干个作业步。

2.进程

当系统将某一个用户程序调入内存运行时,称为进程。这是由于多道程序环境下实现资源共

享和程序并发运行的需要,它具有以下的基本特性:

(1)动态特性进程是程序的一次执行过程,具有“创建一执行一撤消”的生存周期。

(2)并发特性内存中众多进程不仅可随机地并发产生和消亡,同时可以并行地活动。

(3)独立性进程在逻辑上是独立的,在获得必须的资源后,可以按照各自目的,以不可

预知的速度向前推行。

(4)相互制约性由于共享资源和进程之间某些协同动作,有些进程间会有相互制约的关

系。

因此程序是一种静态的观点,进程则反映了操作系统动态活动的内在本质。

3.管态、目态

(1)管态此时系统只执行造作系统的特权指令,不允许执行用户指令。

(2)目态系统处于用户执行状态。

3.3.2作业调度

作业调度主要是实现对作业的组织、输入/输出、调度和运行控制。不同的操作系统对

作业有不同的处理方式,主要分为批处理作业和交互方式处理作业两类。

1.批处理作业的管理

在批处理系统中,由于用户不能直接与计算机交互,因此在进入计算机系统之前,除了要准

备好源程序和初始数据外,还必须用该操作系统提供的作业控制语言来书写作业控制说明

书,规定如何控制作业运行。

(1)作业状态及转换

一个作业在它的生命周期内要经过提交、收容、执行、完成四个阶段,每一个阶段称为作业

的一种状态。

为了描述和管理系统内的作业,还必须为每道作业建立一个专门的数据结构,称为作业捽制

块(JCB)它包含了系统对作业进行管理所必需的信息,作业管理就是对作业各个阶段进行

宏观控制。

(2)作业调度

在批处理系统中,作业调度程序按照某种调度策略从收容状态队列中选择某些作业进入内

存。调度的关键是在于确定调度算法,以获得一个较好的作业搭配,使得系统资源得到高效

的利用。

衡量算法的性能指标有:

•周转时间作业从进入系统直到完成所经历的时间。

•平均周转时间被测定作业数(n)的周转时间平均值。

•系统吞吐量系统在单位时间内平均完成的作业数。

(3)调度算法

作业调度算法很多,这里介绍几种常用的算法:

•先来先服务(FCFS)

按作业到达系统的先后次序调度它们运行。

•短作业优先(SJF)

选择运行时间较短的作业先运行。这样可使作业流的平均周转时间取值最小,但对长作业不

公平。

・最高响应比优先(HRF)

响应比=等待时间/运行时间

优先选择响应比最大的作业,他兼顾了短作业与等待时间长的作业。

•优先数法

按操作员或用户指定的作业优先级高的作业首先运行。

实际系统中往往采用几种算法的组合形式,以提高系统的整体效率。

2.交互式作业管理

在分时系统中,用户通过终端和系统提供的终端命令语言向系统提供作业。作业的提交方式

是由用户动态地提交,即每完成一个作业步动作后,系统给出相应的回答信息,用户继续提

交下一个作业步,知道作业全部完成。山于系统对终端用户提交的每一作业步必须加以识别

并立即解释执行,因此系统不再设置作业的收容状态,也不存在作业调度等问题。

有些系统同时支持批处理和分时功能,则用户可以提供任意一种类型的作业,其中交互式作

业称为“前台”作业,批处理作业称为“后台”作业。

3.3.3进程调度

进程调度的任务是控制、协调进程对CPU的竞争,按照一定的调度算法,使某一个就绪的进

程得到CPU,转成运行状态。

1.进程的状态及转换

一个进程在它的生命期内有三种基本状态:

就绪进程具备运行条件,但尚未占用CPU;

运行进程正在占用CPU;

等待(阻塞)进程由于等待某一事件不能享用CPU。

当进程处于运行状态时,它是微观意义下的运行,而不管进程处于何种状态,只要它已开始

执行而尚未结束执行,都是宏观意义下的运行。

和作业管理相似,当作业一旦进入内存构成进程后,系统为每个进程建立一个进程控制块

(PCB),记录有关该进程的固有信息以及动态信息。

2.进程控制

操作系统必须提供一组与进程控制有关的原语(系统调用)供用户编程时调用。

(1)创建进程为调用者动态创建一个进程。

(2)撤消进程停止该进程运行,释放它所占有的资源。

(3)挂起进程把该进程暂时置为阻塞状态。

(4)激活进程把该进程从阻塞态改为就绪态。

3.进程调度

按照一定的调度算法,使某一就绪进程得到CPU,转换成运行状态。衡量调度算法的指标主

要有:

•CPU利用率CPU处于忙状态的时间与开机运行总时间的比值。

•等待时间指在就绪状态中进程的等待时间。

•响应时间指在分时系统中,用户在终端上发一条命令直到系统作出回答所需的时间。

4.调度算法

进程调度算法有些和作业调度相似,如先来先服务(FCFS)、短进程优先(SPF)、优先级调

度等。还有适用于分时系统的轮转调度法。

•先来先服务按进入就绪队列先后次序获取CPU,这是一种不可抢占的方式。

•短进程优先根据下一次所需时间的长短,从就绪队列中选择运行时间最短的进程首先占

有CPU。

•优先级调度按进程的优先级高低确定占有CPU的次序。

•轮转调度法进程先按FIFO规则排成队列,每次从队首取出个进程分配CPU,并规定

执行完一个时间片后便被剥夺,并被送到队尾,如此反复。

实际系统会根据不同的系统目标,结合各种算法特点采用相应的调度算法。

3.3.4多道程序并发运行出现的问题

1.进程的同步与互斥

进程的同步:完成同一任务的进程间,山于需要在某些位置上协调它们的工作而互相等待与

相互交换信息所产生的制约。

进程的互斥:进程之间因相互竞争使用独占型资源而产生的制约。

(1)临界区问题

一次仅允许一个进程使用的资源称为临界资源,各个进程必须互斥地执行的那种程序段称为

临界区。对临界区的调度原则为:当没有进程在临界区时,允许•个进程立即进入;若已有

一进程在临界区内,则其他需进入的进程必须等待,且必须在有限的时间内得到满足。

(2)原语

原语本身不是一条机器指令,而是山若干条指令组成的程序段,它是机器指令的扩充。它在

进程管理中能完成某些特定的功能,例如前面提到的进程控制原语,以及后面将提到的P.V

操作等。原语是在管态下运行,因此在执行中一次完成不能被打断。

(3)P.V操作

用常规的程序来实现进程间的同步和互斥关系需要复杂的算法,因此引入P.V操作,P.V操

作都是原语,在执行期间是不可分割的。

(4)用P.V操作实现进程之间的互斥和同步

•实现互斥:令S初值为1,进程A,B竞争临界区的程序,可以写成:

进程A进程B

P(S)P(S)

临界区临界区

V(S)V(S)

•实现同步:设Si初值为n,表示缓冲区中有n个位置等待装入信息;S2初值为0,表示缓

冲区中无信息可取。

进程A进程B

P(S|)P(S2)

把信息送入缓冲区从缓冲区取走信息

V(S2)V(Sj)

在练习题中将提供一些采用P.V操作解决同步与互斥的习题,希望能通过分析这些例子,对

解决操作系统内的同步、互斥问题有所启发。

2.死锁

(1)死锁的定义和必要条件

•死锁的定义在一个进程集合中,若每个进程都在等待某些时间的发生,而这些事件又必

须由这个进程集合中的某些进程来产生,则称该进程集合处于死锁状态。

•产生死锁的四个必要条件

①互斥系统中必须存在互斥使用的资源。

②占有等待进程已分配到了某些资源,但还须等待另外的资源,而对已分配到的资源并不

释放。

③非剥夺在出现死锁的系统中,一定存在有不可剥夺的资源,即在该进程未主动释放之前,

其他进程不可夺走该资源。

④循环等待形成一个处于等待状态的进程集合{P。,P”…,Pn},其中Pi等待的资源被

P/D占有,Pn等待的资源被P。占有。

(2)死锁的预防

只要使死锁产生的四个必要条件之一不成立,死锁就不会出现。

(3)死锁的避免

死锁的避免是在系统运行过程中小心地避免死锁的最终发生。最著名的是银行算法。

安全状态:安全状态是指如果存在一个由系统中所有进程构成的序列{P。,P”…,Pn},如

果对于其中每一个进程Pi(IWiWn),它以后要申请的资源数量不超过系统中当前剩余的

资源数量与所有进程B(jWi)当前占有的资源量之和,则该进程序列称为安全序列,此状

态为安全状态,安全状态是没有死锁的状态,而不安全状态不一定是死锁状态。

银行家算法是对系统中每一个进程发出的资源申请命令加以动态检查,如果发现若分配资源

后系统将进入不安全状态,则不予分配。

(4)死锁的检测与解除

死锁的检测通常采用化简资源分配图的方法,其过程为:

•在图中找一个进程R,R的请求边均能立即满足。

•将R与其相连的边全部删去,继续寻找请求边满足的进程进行化简。

如果化简后所有进程都成了孤立点,就称为完全化简,无死锁现象;反之称为不完全化简,

非孤立点的进程处于死锁状态。

一旦发生死锁应立即排除,以确保系统正常运行,常采用资源剥夺法和撤消进程法。

3.4设备管理

3.4.1基本概念

1.设备管理的功能与目标

设备管理的功能是按用户需求制定分配和使用设备的策略,为I/O操作的进程分配一条传输

信息的通路,最大程度地实行并行操作。

要求达到的目标是:

(1)方便性用户无须了解物理设备的细节,方便地使用设备。

(2)并行性使CPU与设备,设备与设备之间并行操作。

(3)均衡性使CPU和I/O设备操作的忙闲程度保持相对平衡。

(4)独立性用户程序与设备相对独立,用户在程序中只须用相对设备代号。

2.设备分类

可以从不同的角度将设备划分成不同的类型。这里主要提出:

(1)按使用性质分

•独享设备

•共享设备

•虚拟设备

(2)按使用方法分

•物理设备

•逻辑设备

3.I/O控制方式的改进

(1)循环测试I/O方式

(2)程序中断I/O方式

(3)通道I/O方式

4.缓冲技术

缓解CPU与外设之间速度不匹配的矛盾。

3.4.2设备管理的工作过程

1.通道、控制器和设备

通道、控制器和设备可以采用各种不同的连接形式构成传输信息的通路。系统为每个通道、

控制器与设备建立各自的控制块。

2.设备分配程序

当用户进程提出对某I/O设备的请求后,设备分配程序根据当时设备、控制器、通道的忙闲

情况选择相应设备组合;若当时没有找到,则把该进程按•定的调度算法插入到申请该设备

的队列中等待。对设备的调度算法也有先请求先服务、优先数法等。在分配时还要考虑防止

由于分配不当而产生死锁。

3.设备处理程序

主要的功能为:

(1)发出I/O命令,启动分配到的I/O设备,完成指定的I/O操作。

(2)及时响应中断请求,调用相应的中断处理程序。

(3)根据用户的I/O请求,自动构成通道程序。

3.4.3虚拟设备--假脱机系统

它是一种预输入、缓输出和转储的管理技术,实现外部设备联机并行操作。它必须有高速随

机外存储设备的支持,统称采用磁盘。

1.组成

主要有以下三部分:

(1)输入井和输出井

在磁盘上开辟两个存储空间:输入井模拟脱机输入时的磁盘,用于收容外部设备输入的数据;

输出井模拟脱机输出时的磁盘,用于收容用户程序的输出数据。

(2)输入缓冲区和输出缓冲区

在内存中开辟两个缓冲区;输入缓冲区用于暂存由输入设备送来的数据,以后再传送到输入

井;输出缓冲区用于暂存从输出井送来的数据,以后再传送给输出设备。

(3)输入进程和输出进程

输入进程模拟脱机输入时的卫星机,它将用户要求的数据从输入机通过输入缓冲区再送到输

入井(输入收存),当CPU需要输入数据时,直接从输入并读入内存(输入发出);输出进程

模拟脱机输出时的卫星机,把用户需要输出的数据先从内存送到输出井(输出收存),待输

出设备空闲时,再将输出井中数据,经过输出缓冲区送到输出设备上(输出发送)。

2.效果

(I)提高了I/O的速度

从对低速I/O设备进行的I/O操作演变为对输入井或输出井数据的存取,如同脱机输出/输

入一样,提高了I/O速度,缓和了CPU与低速I/O设备之间速度不匹配的矛盾。

(2)将独占设备改造为共享设备

伪脱机系统实际上并没有为任何进程分配设备,它只是在输入井或输出井中为进程分配一个

存储区和建立一张I/O请求表,这样就把独占设备改造为共享设备。

(3)实现虚拟设备的功能

在宏观上看,虽然是多个进程在同时使用一台独占设备,但对每一个进程而言,他们都认为

自己是独占了一个设备,实际上这只是个逻辑上的设备,因此伪脱机系统实现了将独占设备

变换为若干台对应的逻辑设备的功能。

3.5文件管理

3.5.1基本概念与术语

文件管理是操作系统中管理文件和数据的软件,它负责文件的组织、存取、控制和使用。

1.文件

逻辑上具有完整意义的数据或字符的集合,每个文件都有一个文件名,文件由若干个记录组

成。

2.文件系统

文件系统即文件管理系统。它的基本功能为:

(1)实施文件存储空间(磁盘)的分配和回收。

(2)提供文件共享及保护、保密措施。

(3)实现用户要求的各种操作。

3.文件的分类

可以有多种分类方式,主要有:

(1)按文件性质和用途分为系统文件、库文件和用户文件。

(2)按存储控制属性分为执行文件、只读文件和读写文件。

(3)按文件中数据形式分为源文件、目标文件和可执行文件。

4.文件的存储介质

文件是存储在外存空间中,它的存储介质可以有多中,目前使用最普通的为磁盘。

3.5.2文件的结构及存取方式

1.文件的逻辑结构

文件的逻辑结构是指用户概念的文件形式。一般来说一个文件是由若干条等长或不等长的记

录组成。

2.文件的物理结构

文件的物理结构是指文件在存储介质上的组织方式,它与具体的存储介质有关。常用的文件

物理结构有:

(1)顺序结构

把文件按逻辑记录顺序存放到连续的物理块中。特点:存取速度快,空间利用率地低,文件

的插入或删除操作只能在文件末尾进行。

(2)链接结构

把文件信息存放在非连续的物理块中,每个物理块中设有一个指针,指向其后续块。

特点:空间利用率高易于文件扩充,但搜索效率低。

(3)索引结构

为每个文件建立一个索引表,其中每一表项指出文件记录所在的物理块好,表目按记录中某

一关键字顺序排列。

特点:可以满足文件动态增长要求,存取方便,但建立索引表增加了存储空间的开销。

3.5.3文件目录

1.文件目录与目录文件

文件目录与目录文件是两个不同的概念。文件目录中记录了该文件的管理信息,又称文件控

制块。目录文件是全部文件目录组成的文件,它可以像其他文件一样进行读写等处理。

2.文件目录的结构

(1)一级目录结构

把系统中所有文件构成一个目录表。

特点:管理简单,但检索效率低,不允许文件重名,不便于文件共享,只适用于单用户系统。

(2)二级目录结构

把文件目录分成主目录和若干个用户文件目录两级。

特点:克服了一级目录结构的缺点,提高了检索效率,不同用户的文件允许重名,多个用户

可共享一个文件。

(3)多级目录结构

又称树形目录结构,其中主文件目录称为根目录,其下层可设置各级子目录。从根目录出发

到某文件的道路上各级子目录名构成该文件的“路径名北

特点:检索效率高,允许重名,利于文件分类,能进行存取权限控制。

3.5.4文件存储空间的管理

文件中以物理块为单位交换信息,因此文件存储空间的管理实质上是空闲块的组织与管理问

题。常见的有:

1.空白文件目录

系统为存储区中空闲空间建立一个目录,它的分配与回收与内存管理中的动态分区管理方式

相似,此方法易产生空闲块碎片。

2.位示图

系统为每个文件建立一张位示图,反映每个文件存储设备物理块的使用情况。位示图较小,

可以保存在内存中。

3.空白块链

把存储设备上所有空闲块用指针链接在一起,此方法简单可靠,但空间开销大,I/O操作较

多,效率低。

3.5.5文件的共享与文件的安全性

1.文件的共享

(1)通过文件路径实现共享

只要用户已知欲共享文件的文件路径,而且该文件的主人允许使用该文件。

(2)通过连接操作实现共享

用户在自身的文件目录表中建立一个欲共享文件的表目,通过操作系统提供的连接操作命令

(系统调用),实现文件共享。

2.文件的存取控制

(1)存取控制矩阵

用一个二维矩阵出每个用户对每个文件的存取权限。

(2)按用户分类存取控制

系统用9位二进制数表示对三类不同用户设置不同的存取权限。

(3)口令

用户为自身文件设置保密口令。

3.5.6文件的操作使用命令及文件系统的一般模型

1.文件的操作使用

文件系统为用户提供系统调用命令来使用和控制文件,最基本的操作有:建立与撤消文件,

打开与关闭文件,读写文件。

(1)文件的建立与撤消

•建立文件系统为该文件建立一个目录表目。

•撤消文件清除该文件目录表目。

(2)打开与关闭文件

•打开文件将欲访问文件表目调入内存的活动文件表中。

•关闭文件把用户要写入文件中的记录写入文件中区相应位置。

2.文件系统的一般模型

一个文件系统要完成上述各种功能,就要有若干个主要的功能模块来实现。模块之间具有层

次关系。可以通过教材中提供的例题,了解各模块要完成的功能及整个工作流程。

3.6操作系统的用户接口

3.6.1用户接口的任务和功能

任何一种软件首先涉及的是人机交互界面,计算机应用离不开操作系统的接口,又称界面。

它已成为计算机系统的一个重要组成部分,也是计算机领域中的一个竞争焦点,它极大地影

响了最终用户的使用,影响着计算机的推广应用,也影响着人的工作与生活。界面管理的功

能主要有:

(1)实现高效的人机通信。

(2)改善计算机的可用性、可学性和有效性。

3.6.2两种用户接口

1.操作命令接口

这是用户表示作业执行步骤的一种手段,常用的有作业控制语言和操作控制命令两种。

(1)作业控制语言用于批处理系统中,用户在提交作业之前,用作业控制语言编写一份

作业控制说明书,连同作业一起交给系统。

(2)操作控制命令用于分时系统中,用户可以从键盘上输入操作控制命令或从“命令菜

单”中选择命令指出作业的执行步骤。用户每输入一条命令,操作系统就按命令要求进行控

制,当一条命令的控制要求完成后,通知用户执行下一条,直到作业执行结束。

2.程序一级接口-一系统调用

系统调用是用户在程序中调用操作系统所提供的一些子功能。凡是与资源相关的操作都必须

通过这种方式向操作系统提出服务请求,并由操作系统代为完成。

操作系统的程序与用户程序是分别在管态和目态卜运行的,当用户程序需要操作系统为其服

务时.,通过中断系统将操作系统中具体的服务程序转为用户服务,服务程序结束后返回,退

出中断。

不同的操作系统提供的系统调用不全相同,大致可分为如下几类:

(1)文件操作例如打开/关闭文件、读/写文件以及建立/撤消文件等。

(2)资源申请例如申请/释放存储空间,申请/释放外围设备等。

(3)控制例如正常/异常结束,返回断点/指定点等。

(4)信息维护例如设置日期、时间、设置或获取文件属性等。

3.6.3用户界面的发展

1.第一代用户界面——维界面

操作员记忆、敲击键盘。例如常用的DOS操作系统和UNIX操作系统,用户操作使用计算机,

首先要熟悉一整套操作命令,而且不同的操作系统命令是不相同的。它的优点是对于一些专

用系统中反复使用的复杂操作,使用命令实现一次性有条件的复杂操作,反而显得快捷方便。

2.第二代用户界面-一二维空间界面

用户观看、点击图符进行操作。以美国微软公司为代表的Windows操作系统界面是这方面的

一个里程碑,已被用户广泛接纳和使用。图形界面便于用户操作使用计算机,在显示屏上可

以建立起很多缩微型形象化的图标,用户用鼠标器一点就能调出所需程序工作。

3.第三代用户界面一-三维空间界面

随着计算机技术发展,利用三维计算机图形显示,加上语言、图像、动画等多媒体支持,现

有的界面己可看到很多“虚拟仪器”,在计算机屏幕上显示出人们熟悉的一起设备的操作面

板,用鼠标点击,如同按动真实的设备一样。进一步的发展,可使计算机能对人的语言、视

点和姿势等作出反应,达到“身临其境”的“虚拟”世界。

练习题

1.现代操作系统两个最基本的特性是什么?

2.分时操作系统需要使用下面哪些成分?

(1)多道程序设计技术

(2)作业说明书

(3)终端命令解释程序

(4)中断处理

(5)优先级调度

(6)系统调用

3.批处理系统的主要缺点是:

(1)CPU利用率低

(2)不能并发执行

(3)缺少交互性

(4)以上都不是

4.允许多个用户以交互方式使用计算机的操作系统称为();允许多个用户将多个作业

交给计算机集中处理的操作系统称为();计算机系统能及时处理过程控制数据并做出响

应的操作系统称为(

(1)批处理操作系统

(2)分时操作系统

(3)多处理机操作系统

(4)实时操作系统

(5)网络操作系统

5.卜列哪些选择不是操作系统关心的问题:

(1)管理计算机裸机

(2)设计、提供用户程序与计算机硬件系统的界面

(3)管理计算机系统资源

(4)高级程序设计语言的编译器

6.引入多道程序设计的主要目的为:

(1)提高实时响应速度

(2)充分利用处理机

(3)有利于代码共享

(4)充分利用外围设备

(5)减少存储碎片

7.最佳适应算法的空闲块是:

(1)按大小递减顺序连在•起

(2)按大小递增顺序连在一起

(3)按地址由小到大排列

(4)按地址由大到小排列

8.设某一操作系统采用可变分区的存储管理方式,用户区内存为512KB,空闲块链入空闲

块表,分配时截取空闲块的前半部分(小地址部分)。初始时用户区全部空闲,分别采用首

次适应算法与最佳适应算法求出在执行了如下的申请、释放操作序列后的内存情况。

(1)申请300KB(2)申请100KB(3)释放300KB(4)申请150KB

(5)申请50KB(6)申请90KB(7)申请80KB

9.在一个分页管理系统中,假如系统分配给一个作业的物理块数为3,并且此作业的页面

走向为2,3,2,1,5,2,4,5,3,2,5,2。试用FIFO和LRU两种算法分别计算出程序

访问过程中所发生的缺页次数。

10.在某个分页管理系统中,某一个作业有4个页面,被分别装入到主存的第3,4,6,8

页架中,假定页面和页架大小均为1024字节,当作业在CPU上运行时,执行到其地址空间

第500号处遇到一条传送命令

MOV2100,3100

请用地址变换图计算出MOV指令中两个操作数的物理地址。

11.假定某操作系统存储器采用分页管理,某作业在存储器中的页表为:

页号0123456789

页架号6432000000

状态1111000000

假定该作业的代码长度为320字,每页长为32字,现有逻辑地址(八进制)为:101,204,

576,若能翻译成相应的物理地址,则说明翻译过程;若不能翻译,请说明原因。

12.覆盖技术与虚拟技术有何本质不同?交换技术与虚存中使用的调入调出技术有何相同与

不同之处?

13.假设某长度为n的存储单元中,存放一长度为m的作业(n>m),则长度为(n-m)的空

间称为该单元的内部碎片;若存储单元长度为n,在该系统采用的调度算法下,无法选出一

道作业能放入此存储单元中,则称该存储空间为外部碎片。在固定分区分配、可变分区分配、

分页存储系统、分段存储系统中,各会出现何种碎片?为什么?

14.在一个同时容纳4个进程的操作系统中,假设在一段时间内有6个作业提交,提交的时

间为:

作业号提交时间估计运行时间(分)

Jobl8:0060

Job28:2035

Job38:2520

Job48:3025

Job58:355

Job68:4010

系统采用短作业优先的调度算法,作业一旦被调度进入内存后不再中途退出,在内存中的4

个进程其运行的优先次序取决于当时各进程实际剩余的运行时间。

(1)按照所选择的调度算法,分别给出上述6个作业执行的时间序列。

(2)计算在上述调度算法下,作业的平均周转时间。

15.在•个批处理系统中,有2个作业进程,有一个作业序列其到达时间及估计运行时间如

下:

作业到达时间估计运行时间(分)

J110:0035

J210:1030

J310:1545

J410:2020

J510:3030

作业采用最高响应比优先调度算法,进程调度采用最短进程优先算法。

(1)列出各作业执行时间段

(2)计算这批作业的平均周转时间

16.在某单道批处理系统中,有5个批处理作业(A,B,C,D,E)几乎同时到达一个计算

中心,估计运行时间分别为(2,4,6,8,10)分,优先数分别为(1,2,3,4,5)(1为

最低),对下面每种调度算法分别计算作业的平均周转时间:

(1)最高优先级优先

(2)FCFS(作业到达顺序为C,D,B,E,A)

(3)短作业优先

17.假定一个操作系统的进程调度采用剥夺式短进程优先调度算法,即每当新的进程加入就

绪队列或某一进程运行结束时,都应重新进行一次调度选择,选取当前所运行时间最短的进

程。系统为单CPU系统,系统中各进程到达就绪队列的时刻以及执行时间如下:

进程到达就绪队列时间执行时间

108

214

329

433

请给出各进程的调度次序,并计算平均等待时间和平均周转时间。

18.有5个进程A,B,C,D,E儿乎同时到达,它们预计运行时间为10,6,2,4,8分钟,

其优先级分别为3,5,2,1,4,这里5为最高优先级。对于下列每一种调度,计算其品军

进程周转时间。

(1)先来先服务(按A,B,C,D,E)

(2)优先级调度

(3)时间片轮转(时间片为2分)

19.设有8个程序porgl,porg2,porg8,它们在并发系统中执行时有如图3.1所示的制约

关系,试用P.V操作实现这些程序之间的同步。

Prog2

Prog

Prog5

Prog3

Prog4

Prog6Prog7

Prog8

图3.1程序间同步关系

20.兄弟俩共同使用一个存折amount初值为0,每次限存或取10元,存钱与取钱的进程分

别为:

存钱取钱

miamount-m2amount—

minii+10V—股叱-10V—

amountm,<-amountm2■<-

由于兄弟俩可能同时存钱或取钱,因此两个进程是并发的,若哥哥先存了两次钱,但在

第三次存钱的时候,弟弟正在取钱,请问最后存折上可能出现的值?如何用P.V操作实现两

并发进程的互斥执行?

21.试从物理概念上来说明P.V操作中的信号量。

22.某数据库有一个写进程,n个读进程,它们之间读、写操作的互斥要求是:

(1)写进程正在写该数据库时,不能有其他进程读该数据库;

(2)读进程之间不互斥,可以同时读该数据库;

(3)如果有若干进程正在读该数据库,一个写进程在等待写,则随后欲读的进程不能读

该数据库,需让写进程先写。

用P.V操作描述这一组进程的互斥工作过程。

23.设公共汽车上,司机、售票员的活动分别是:

司机售票员

启动车辆上乘客

正常行车关车门

到站停车售票

开车门

下乘客

假设售票员关车门后司机才可启动车辆,到站停车后售票员方可开车门,在汽车不断到

站、停车、行驶过程中,这两个活动有什么同步关系?用P.V操作实现它们的同步。

24.桌子上有一直盘子,最多可容纳两个水果,每次只能放入或取出一个水果,爸爸专向盘

子中放苹果(apple),妈妈专向盘子中放橘子(orange),两个儿子专等吃盘子中的橘子,

两个女儿专等吃盘子中的苹果,请用P.V操作来实现爸爸、妈妈、儿子、女儿间的同步与互

斥关系。

25.A,B两个并发进程,它们共享一个临界区,其执行临界区的算法如下:

A进程B进程

L1:临界区L2:P(S))

V(S))临界区

P(S2)V(S2)

GOTOLIGOTOL2

试判断算法是否有错?请说明理由,如有错,请改正。S„8的初值均为0。

26.用P.V操作处理生产者和消费者问题如下:

mutex初值为1;empty初值为n;full初值为0

生产者消费者

L1:生产产品L2:P(full)

P(empty)P(mutex)

P(mutex)取出产品

产品装入缓冲区V(empty)

V(full)V(mutex)

V(mutex)GOTOL2

GOTOLI

(1)信号量mutex,empty,full的作用是什么?

(2)为什么P操作的顺序不能调换?

27.按序分配是防止死锁的一种策略,什么是按序分配?为什么可以防止死锁?

28.一个系统具有150个存储单元,在某时刻分配给3个进程:

进程最大需求已分到

Pi7025

Pz6040

P36045

Pl60

对下列请求,用银行算法分别判定是否安全?

(1)第4个进程请求分配25个单元;

(2)第4个进程请求分配35个单元。

29.设系统中有3种类型资源(A,B,C)和5个进程(P“P2,P3,P”Ps),A资源数量为

17,B资源数量为5,C资源数量为20,在t。时刻系统状态如下:

进程最大资源需求量已分配资源数量

ABCABc

Pi559212

P2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论