操作系统第二章部分答案

合集下载

计算机操作系统(习题集)第二章 答案

计算机操作系统(习题集)第二章 答案

计算机操作系统(习题集)第二章答案计算机操作系统(习题集)第二章答案第二章进程管理一、单项选择题1、在单一处理机上执行程序,多道程序的执行是在(b)进行的。

a.同一时刻b.同一时间间隔内c.某一紧固时刻d.某一紧固时间间隔内2、引入多道程序技术后,处理机的利用率(c)。

a.减少了b.有所改善c.大大提高d.没变化,只是程序的继续执行便利了3、顺序程序和并发程序的执行相比,(c)。

a.基本相同c.并发程序继续执行总体上继续执行时间慢b.有点不同d.顺序程序执行总体上执行时间快4、单一处理机上,将继续执行时间存有重合的几个程序称作(c)。

a.顺序程序b.多道程序c.并发程序d.并行程序5、进程和程序的本质区别就是(d)。

a.存储在内存和外存b.顺序和非顺序继续执行机器指令c.分时使用和独占使用计算机资源d.动态和静态特征6、进程就是程序在mammalian环境中的继续执行过程,它就是系统展开资源分配和调度的一个基本单位。

进程具备[1a]、[2d]、调度性、异步性和结构性等基本特征。

进程就是一次继续执行过程,具备生命期彰显了进程的[1]特征。

进程由程序段、[3b]、[4c]共同组成,其中[4]就是进程在系统中存有的唯一标识。

供选择的答案:[1][2]:a、动态性b、静态性c、共行性d、并发性e、可执行性f、易用性[3]:a、过程b、数据c、进程标识符d、函数[4]:a、fcbb、fifoc、pcbd、jcb7、进程执行时的间断性,决定了进程可能具有多种状态。

进程的基本状态有三种,在分时系统中,当一个进程拥有的时间片到时,则该进程即由[1d]进入[2a]。

如果出现因某种原因使得处理机空闲时,则需要从就绪队列中选择一进程,并将处理机分配给它,此时该进程进入[3d],这个过程是由[4c]来完成。

供选择的答案:[1][2][3]:a、准备就绪状态b、静止状态c、阻塞状态d、运转状态[4]:a、进程控制程序b、资源分配程序c、进程调度程序d、处理机分配程序8、为了叙述进程的动态变化过程,使用了一个与进程二者联系的(c),根据它而认知进程的存有。

操作系统第二章课后答案

操作系统第二章课后答案

第二章进程管理2、试画出下面4条语句的前趋图:S2: b:=z+1;S3: c:=a-b;S4: w:=c+1;3、程序在并发执行时,由于它们共享系统资源,以及为完成同一项任务而相互合作,致使在这些并发执行的进程之间,形成了相互制约的关系,从而也就使得进程在执行期间出现间断性。

4、程序并发执行时为什么会失去封闭性与可再现性?因为程序并发执行时,就是多个程序共享系统中的各种资源,因而这些资源的状态就是由多个程序来改变,致使程序的运行失去了封闭性。

而程序一旦失去了封闭性也会导致其再失去可再现性。

5、在操作系统中为什么要引入进程概念?它会产生什么样的影响?为了使程序在多道程序环境下能并发执行,并能对并发执行的程序加以控制与描述,从而在操作系统中引入了进程概念。

影响: 使程序的并发执行得以实行。

6、试从动态性,并发性与独立性上比较进程与程序?a、动态性就是进程最基本的特性,可表现为由创建而产生,由调度而执行,因得不到资源而暂停执行,以及由撤销而消亡,因而进程由一定的生命期;而程序只就是一组有序指令的集合,就是静态实体。

b、并发性就是进程的重要特征,同时也就是OS的重要特征。

引入进程的目的正就是为了使其程序能与其它建立了进程的程序并发执行,而程序本身就是不能并发执行的。

c、独立性就是指进程实体就是一个能独立运行的基本单位,同时也就是系统中独立获得资源与独立调度的基本单位。

而对于未建立任何进程的程序,都不能作为一个独立的单位来运行。

7、试说明PCB的作用?为什么说PCB就是进程存在的唯一标志?a、PCB就是进程实体的一部分,就是操作系统中最重要的记录型数据结构。

PCB中记录了操作系统所需的用于描述进程情况及控制进程运行所需的全部信息。

因而它的作用就是使一个在多道程序环境下不能独立运行的程序(含数据),成为一个能独立运行的基本单位,一个能与其它进程并发执行的进程。

b、在进程的整个生命周期中,系统总就是通过其PCB对进程进行控制,系统就是根据进程的PCB而不就是任何别的什么而感知到该进程的存在的,所以说,PCB就是进程存在的唯一标志。

操作系统第二章练习 答案

操作系统第二章练习 答案

1.P、V 操作是 A 。

A.两条低级进程通信原语B.两组不同的机器指令C.两条系统调用命令D.两条高级进程通信原语2.设系统中有 n(n>2)个进程,且当前不在执行进程调度程序,试考虑下述4种情况,不可能发生的情况是 A 。

A.没有运行进程,有2个就绪进程,n 个进程处于等待状态。

B.有1个运行进程,没有就绪进程,n-1个进程处于等待状态。

C.有1个运行进程,有1个就绪进程,n-2个进程处理等待状态。

D.有1个运行进程,n-1个就绪进程,没有进程处于等待状态。

3.若 P、V 操作的信号量 S 初值为2,当前值为-1,则表示有 B 等待进程。

A. 0个B. 1个C. 2个D. 3个4.用 V 操作唤醒一个等待进程时,被唤醒进程的状态变为 B 。

A.等待B.就绪C.运行D.完成5.用 P、V 操作可以解决 A 互斥问题。

A.一切B.某些C.正确D.错误6.多道程序环境下,操作系统分配资源以 C 为基本单位。

A.程序B.指令C.进程D.作业7.从下面对临界区的论述中,选出一条正确的论述。

(1)临界区是指进程中用于实现进程互斥的那段代码。

(2)临界区是指进程中用于实现进程同步的那段代码。

(3)临界区是指进程中用于实现进程通信的那段代码。

(4)临界区是指进程中用于访问共享资源的那段代码。

(5)临界区是指进程中访问临界资源的那段代码。

8.(A)是一种只能由 wait 和 signal 操作所改变的整型变量,(A)可用于实现进程的(B)和(C),(B)是排他性访问临界资源。

A:(1)控制变量;(2)锁;(3)整型信号量;(4)记录型信号量。

B:(1)同步;(2)通信;(3)调度;(4)互斥。

C:(1)同步;(2)通信;(3)调度;(4)互斥。

9.对于记录型信号量,在执行一次 wait 操作时,信号量的值应当(A),当其值为(B)时,进程阻塞。

在执行 signal 操作时,信号量的值应当为(C),当其值为(D)时,应唤醒阻塞队列中的进程。

计算机操作系统(习题集)第二章 答案

计算机操作系统(习题集)第二章 答案

第二章进程管理一、单项选择题1、在单一处理机上执行程序,多道程序的执行是在(B)进行的。

A.同一时刻B. 同一时间间隔内C.某一固定时刻D. 某一固定时间间隔内2、引入多道程序技术后,处理机的利用率( C)。

A.降低了B. 有所改善C.大大提高D. 没有变化,只是程序的执行方便了3、顺序程序和并发程序的执行相比,( C)。

A.基本相同 C.并发程序执行总体上执行时间快B. 有点不同 D.顺序程序执行总体上执行时间快4、单一处理机上,将执行时间有重叠的几个程序称为(C )。

A.顺序程序B. 多道程序C.并发程序D. 并行程序5、进程和程序的本质区别是(D )。

A.存储在内存和外存 B.顺序和非顺序执行机器指令C.分时使用和独占使用计算机资源D.动态和静态特征6、进程就是程序在并发环境中的执行过程,它是系统进行资源分配和调度的一个基本单位。

进程具有[1A]、[2D]、调度性、异步性和结构性等基本特征。

进程是一次执行过程,具有生命期体现了进程的[1]特征。

进程由程序段、[3B]、[4C]组成,其中[4]是进程在系统中存在的唯一标识。

供选择的答案:[1][2] :A、动态性 B、静态性 C、共行性 D、并发性 E、可执行性 F、易用性[3] :A、过程 B、数据 C、进程标识符 D、函数[4] :A、FCB B、FIFO C、PCB D、JCB7、进程执行时的间断性,决定了进程可能具有多种状态。

进程的基本状态有三种,在分时系统中,当一个进程拥有的时间片到时,则该进程即由[1D]进入[2A]。

如果出现因某种原因使得处理机空闲时,则需要从就绪队列中选择一进程,并将处理机分配给它,此时该进程进入[3D],这个过程是由[4C]来完成。

供选择的答案:[1][2][3] :A、就绪状态 B、静止状态 C、阻塞状态 D、运行状态[4] :A、进程控制程序B、资源分配程序C、进程调度程序 D、处理机分配程序8、为了描述进程的动态变化过程,采用了一个与进程相联系的(C ),根据它而感知进程的存在。

操作系统(软件)第二章作业答案

操作系统(软件)第二章作业答案

1、什么是中断?给出系统总体上的中断处理过程。

【解答】:所谓中断是指CPU在正常执行程序的过程中,由于某个外部或内部事件的作用,强迫CPU停止当前正在执行的程序,转去为该事件服务(称为中断服务),待服务结束后,又能自动返回到被中断的程序中继续执行。

CPU每执行完一条指令就去扫描中断寄存器,检查是否有中断发生,若没有中断就继续执行下条指令;若有中断发生就转去执行相应的中断处理程序。

中断处理过程可粗略的分为以下四个过程:①保护当前正在运行程序的现场;②分析是何种中断,以便转去执行相应的中断处理程序;③执行相应的中断处理程序;④恢复被中断程序的现场。

2、请给出进程与程序它们的区别和联系。

【解答】:1、进程是动态的程序是静态的。

程序是一组有序的指令集合,是一个静态的概念;进程则是程序及其数据在计算机上的一次执行是一个动态的集合。

2、一个进程可以执行多个程序;一个程序可被多个进程执行;3、程序可以长期保存,进程有从被创建到消亡的生命周期。

4、进程具有并发性,而程序具有顺序性;5、进程具有独立性,是资源分配调度的基本单位,而程序无此特性。

3、试说明进程在三个基本状态之间转换的典型原因.【解答】a. 处于就绪状态的进程,当进程调度程序为之分配了处理机后,该进程便由就绪状态变为执行状态.b. 当前进程因发生某事件而无法执行,如访问已被占用的临界资源,就会使进程由执行状态转变为阻塞状态.c. 当前进程因时间片用完而被暂停执行,该进程便由执行状态转变为就绪状态.4、什么是临界资源和临界区?【解答】:临界资源是一次仅允许一个进程访问的资源,例如打印机,共享的变量。

进程中访问临界资源的那段代码段称为临界区。

5、进程的互斥和同步有什么异同点?进程同步机制应遵循哪四个基本准则?【解答】:进程同步机制应遵循如下四个基本准则:空闲让进,以提高临界资源利用率,忙则等待,以保证临界资源互斥使用;让权等待,以提高cpu的利用率;有限等待,以免相关进程陷入“死等”。

计算机操作系统课后答案

计算机操作系统课后答案

计算机操作系统课后答案计算机操作系统课后答案第一章:操作系统概述1.1 操作系统的定义与作用操作系统是计算机系统中的核心软件,负责管理和控制计算机硬件资源,为用户和应用程序提供统一的接口和服务。

1.2 操作系统的发展历程操作系统的发展经历了批处理系统、分时系统、实时系统和网络操作系统等阶段,逐步提高了计算机的效率和可靠性。

1.3 操作系统的功能和特点操作系统的功能包括进程管理、内存管理、文件管理和设备管理等。

其特点包括并发性、共享性、虚拟性和异步性等。

第二章:进程管理2.1 进程的概念和属性进程是程序在执行过程中的一个实例,具有独立的地址空间和执行状态。

2.2 进程的调度算法常见的进程调度算法有先来先服务调度、短作业优先调度、高响应比优先调度和时间片轮转调度等。

2.3 进程同步与通信进程同步是指协调多个进程之间的执行顺序,进程通信是指进程之间的数据交换和共享。

第三章:内存管理3.1 内存管理的基本概念内存管理包括内存的分配和回收,以及地址转换和内存保护等操作。

3.2 内存分配的算法常见的内存分配算法有首次适应、最佳适应和最坏适应等。

3.3 虚拟内存的实现原理虚拟内存通过将主存和辅存进行映射,将不常用的数据和程序置换到辅存中,以提高内存利用率。

第四章:文件管理4.1 文件的概念和组织方式文件是存储在存储介质上的数据集合,文件组织方式包括顺序文件、索引文件和哈希文件等。

4.2 文件共享与保护文件共享是指多个进程可以同时访问同一个文件,文件保护是指对文件进行权限和访问控制。

4.3 文件系统的实现原理文件系统通过文件目录和文件控制块来管理文件和目录的存储和访问。

第五章:设备管理5.1 设备管理的基本概念设备管理包括设备的分配和回收,以及设备的驱动程序和设备控制器等。

5.2 设备独立性和设备分配算法设备独立性是指操作系统对设备的不同类型进行统一管理,设备分配算法有等待队列调度和优先级调度等。

5.3 设备中断和错误处理设备中断是指设备发出的中断信号,操作系统需要及时响应并处理中断。

现代操作系统第四版第二章答案

现代操作系统第四版第二章答案

现代操作系统第四版第二章答案现代操作系统第二章进程与线程习题1. 图2-2中给出了三个进程状态,在理论上,三个状态可以有六种转换,每个状态两个。

但是,图中只给出了四种转换。

有没有可能发生其他两种转换中的一个或两个A:从阻塞到运行的转换是可以想象的。

假设某个进程在I/O上阻塞,而且I/O结束,如果此时CPU空闲,该进程就可以从阻塞态直接转到运行态。

而另外一种转换(从阻塞态到就绪态)是不可能的。

一个就绪进程是不可能做任何会产生阻塞的I/O或者别的什么事情。

只有运行的进程才能被阻塞。

2.假设要设计一种先进的计算机体系结构,它使用硬件而不是中断来完成进程切换。

CPU需要哪些信息请描述用硬件完成进程切换的工作过程。

A:应该有一个寄存器包含当前进程表项的指针。

当I/O结束时,CPU将把当前的机器状态存入到当前进程表项中。

然后,将转到中断设备的中断向量,读取另一个过程表项的指针(服务例程),然后,就可以启动这个进程了。

3.当代计算机中,为什么中断处理程序至少有一部分是用汇编语言编写的A:通常,高级语言不允许访问CPU硬件,而这种访问是必需的。

例如,中断处理程序可能需要禁用和启用某个特定设备的中断服务,或者处理进程堆栈区的数据。

另外,中断服务例程需要尽快地执行。

(补充)主要是出于效率方面的考量。

中断处理程序需要在尽量短的时间内完成所需的必要处理,尽量减少对线程/程序流造成的影响,因此大部分情况下用汇编直接编写,跳过了通用编译过程中冗余的适配部分。

4.中断或系统调用把控制转给操作系统时,为什么通常会用到与被中断进程的栈分离的内核栈A:内核使用单独的堆栈有若干的原因。

其中两个原因如下:首先,不希望操作系统崩溃,由于某些用户程序不允许足够的堆栈空间。

第二,如果内核将数据保留在用户空间,然后从系统调用返回,那么恶意的用户可能使用这些数据找出某些关于其它进程的信息。

5.一个计算机系统的内存有足够的空间容纳5个程序。

这些程序有一半的时间处于等待I/O的空闲状态。

操作系统第二章练习题与答案

操作系统第二章练习题与答案

C.DCT D.FCB5.一个进程被唤醒,意味着该进程 D 。

A.重新占有CPU B.优先级变为最大C.移至等待队列之首 D.变为就绪状态6.由各作业JCB形成的队列称为 C 。

A.就绪作业队列 B.阻塞作业队列C.后备作业队列 D.运行作业队列7.既考虑作业等待时间,又考虑作业执行时间的作业调度算法是 A 。

A.响应比高者优先B.短作业优先C.优先级调度D.先来先服务8.作业调度程序从处于 D 状态的队列中选取适当的作业投入运行。

A.就绪 B.提交C.等待 D.后备9. A 是指从作业提交系统到作业完成的时间间隔。

A.周转时间 B.响应时间C.等待时间 D.运行时间10.计算机系统在执行 C 时,会自动从目态变换到管态。

A.P操作 B.V操作C.系统调用 D.I/O指令三、问答1.在多道程序设计系统中,如何理解“内存中的多个程序的执行过程交织在一起,大家都在走走停停”这样一个现象?答:在多道程序设计系统中,内存中存放多个程序,它们以交替的方式使用CPU。

因此,从宏观上看,这些程序都开始了自己的工作。

但由于CPU只有一个,在任何时刻CPU只能执行一个进程程序。

所以这些进程程序的执行过程是交织在一起的。

也就是说,从微观上看,每一个进程一会儿在向前走,一会儿又停步不前,处于一种“走走停停”的状态之中。

2.什么是“原语”、“特权指令”、“系统调用命令”和“访管指令”?它们之间有无一定的联系?答:特权指令和访管指令都是CPU指令系统中的指令,只是前者是一些只能在管态下执行的指令,后者是一条只能在目态下执行的指令。

原语和系统调用命令都是操作系统中的功能程序,只是前者执行时不能被其他程序所打断,后者没有这个要求。

操作系统中有些系统调用命令是以原语的形式出现的,例如创建进程就是一条原语式的系统调用命令。

但并不是所有系统调用命令都是原语。

因为如果那样的话,整个系统的并发性就不可能得到充分地发挥。

3.操作系统是如何处理源程序中出现的系统调用命令的?答:编译程序总是把源程序中的系统调用命令改写成为一条访管指令和相应的参数。

操作系统第二章练习2 答案

操作系统第二章练习2 答案

1.P、V操作是 A 。

A.两条低级进程通信原语B.两组不同的机器指令C.两条系统调用命令D.两条高级进程通信原语2.设系统中有n(n>2)个进程,且当前不在执行进程调度程序,试考虑下述4种情况,不可能发生的情况是 A 。

A.没有运行进程,有2个就绪进程,n个进程处于等待状态。

B.有1个运行进程,没有就绪进程,n-1个进程处于等待状态。

C.有1个运行进程,有1个就绪进程,n-2个进程处理等待状态。

D.有1个运行进程,n-1个就绪进程,没有进程处于等待状态。

3.若P、V操作的信号量S初值为2,当前值为-1,则表示有 B 等待进程。

A. 0个 B. 1个 C. 2个 D. 3个4.用V操作唤醒一个等待进程时,被唤醒进程的状态变为 B 。

A.等待B.就绪C.运行D.完成5.用P、V操作可以解决 A互斥问题。

A.一切B.某些C.正确D.错误6.多道程序环境下,操作系统分配资源以C 为基本单位。

A.程序B.指令C.进程D.作业7.从下面对临界区的论述中,选出一条正确的论述。

(1)临界区是指进程中用于实现进程互斥的那段代码。

(2)临界区是指进程中用于实现进程同步的那段代码。

(3)临界区是指进程中用于实现进程通信的那段代码。

(4)临界区是指进程中用于访问共享资源的那段代码。

(5)临界区是指进程中访问临界资源的那段代码。

8.(A)是一种只能由wait和signal操作所改变的整型变量,(A)可用于实现进程的(B)和(C),(B)是排他性访问临界资源。

A:(1)控制变量;(2)锁;(3)整型信号量;(4)记录型信号量。

B:(1)同步;(2)通信;(3)调度;(4)互斥。

C:(1)同步;(2)通信;(3)调度;(4)互斥。

9.对于记录型信号量,在执行一次wait操作时,信号量的值应当(A),当其值为(B)时,进程阻塞。

在执行signal操作时,信号量的值应当为(C),当其值为(D)时,应唤醒阻塞队列中的进程。

操作系统第二章作业答案

操作系统第二章作业答案

第二章作业1.操作系统中为什么要引入进程的概念?为了实现并发进程中的合作和协调,以及保证系统的安全,操作系统在进程管理方面要做哪些工作?答:为了从变化角度动态地分析研究可以并发执行的程序,真实的反应系统的独立性、并发性、动态性和相互制约,操作系统中不得不引入进程的概念。

为了防止操作系统及其关键的数据结构如:PCB等,受到用户程序破坏,将处理机分为核心态和用户态。

对进程进行创建、撤销以及在某些进程状态之间的转换控制。

2.试描述当前正在运行的进程状态改变时,操作系统进行进程切换的步骤。

答:分为两种情况:(1):运行状态就绪状态:根据进程的自身的情况插入到就绪队列的适当位置,系统收回处理及转入进程调度程序重新进行调度。

(2):运行状态→阻塞状态:系统会调用进程调度程序重新选择一个进程投入运行。

3.现代操作系统一般都提供多任务的环境,是回答以下问题。

为支持多进程的并发执行,系统必须建立哪些关于进程的数据结构?答:系统必须建立PCB。

为支持进程的状态变迁,系统至少应该供哪些进程控制原语?答:阻塞、唤醒、挂起和激活原语。

当进程的状态变迁时,相应的数据结构发生变化吗?答:会根据状态的变迁发生相应的变化。

例如:将进程PCB中进程的状态从阻塞状态改为就绪状态,并将进程从阻塞队列摘下,投入到就绪队列中。

4.什么是进程控制块?从进程管理、中断处理、进程通信、文件管理、设备管理及存储管理的角度设计进程控制块应该包含的内容。

答:PCB:描述进程本身的特征、状态、调度信息以及对资源占有情况等的数据结构,是进程存在的唯一标识。

进程控制块所包含的内容:①进程信息描述;②CPU信息状态;③进程调度信息;④进程控制和资源占用信息。

5.假设系统就绪队列中有10个进程,这10个进程轮换执行,每隔300ms轮换一次,CPU在进程切换时所花费的时间是10ms,试问系统化在进程切换上的开销占系统整个时间的比例是多少?解:P=(10*10)/[(300+10)*10]=3.2%6.试述线程的特点及其与进程之间的关系。

第二章 操作系统答案

第二章  操作系统答案

第二章操作系统 Windows XP一、判断题1.鼠标指针在系统执行不同的操作时,会有不同的形状。

(T )2.在Windows中,直接关闭计算机电源开关,会丢失系统未保存的数据或信息。

(T )3.用鼠标指针指向窗口的标题栏并拖动,可改变窗口大小。

( F )4.在同一个文件夹中,不能有相同名字的两个不同类型的文件。

(F )5.Windows中的“资源管理器”只能管理计算机的硬件资源。

( F )6.创建新文件夹只能用快捷菜单中的“新建”命令。

(F )7.Windows中的文件名可以由任何符号组成。

( F )8.Windows 系统提供了磁盘扫描程序。

(T )9.在Windows中,用户一次只能运行一个程序。

( F )10.当选定文件夹后,在键盘上按Del键也能删除该文件夹。

(T )11.在Windows中,鼠标指针指向窗口边框或顶角时,会变成双向箭头,按住鼠标左键并拖动边框可改变窗口大小。

(T )12.在Windows“资源管理器”右窗格中,一次只能选定一个文件或文件夹。

(F )13.在Windows中,剪切文件后,原位置上还存在着该文件。

(T )14.Windows中的文件名中不能有空格。

( F )15.Windows的桌面快捷图标的外观不可改变。

(F )16.不能通过鼠标右键移动文件或文件夹。

(F )17.按Esc键可退出Windows系统。

(F )18.Windows中的操作只能通过鼠标完成,不能用键盘代替。

(F )19.Windows的屏幕保护程序可以设置口令。

(T )20.Windows的多个窗口在桌面上只能层叠,不能平铺。

(F )21.既可以创建文件的快捷方式,也可以创建文件夹的快捷方式。

(T )22.使用“资源管理器”,不能一次删除多个文件。

( F )23.在Windows中管理文件通常使用“资源管理器”和“我的电脑”。

(T )24.当屏幕的指针为沙漏加箭头时,表明Windows正在等待执行任务。

第二章 操作系统进程(练习题答案)

第二章 操作系统进程(练习题答案)

第二章进程管理1.操作系统主要是对计算机系统全部 (1) 进行管理,以方便用户、提高计算机使用效率的一种系统软件。

它的主要功能有:处理机管理、存储管理、文件管理、 (2) 管理和设备管理等。

Windows和Unix是最常用的两类操作系统。

前者是一个具有图形界面的窗口式的 (3) 系统软件,后者是一个基本上采用 (4) 语言编制而成的的系统软件。

在 (5) 操作系统控制下,计算机能及时处理由过程控制反馈的信息并作出响应。

供选答案:(1): A. 应用软件 B. 系统软硬件C. 资源D. 设备(2): A. 数据 B. 作业C. 中断D. I/O(3): A. 分时 B. 多任务C. 多用户D. 实时(4): A. PASCAL B. 宏C. 汇编D. C(5): A. 网络 B. 分时C. 批处理D. 实时答案:CBBDD2.操作系统是对计算机资源进行的 (1) 系统软件,是 (2) 的接口。

在处理机管理中,进程是一个重要的概念,它由程序块、 (3) 和数据块三部分组成,它有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. CDROMD. 寄存器答案:CDADB3.在计算机系统中,允许多个程序同时进入内存并运行,这种方法称为 D。

A. Spodling技术B. 虚拟存储技术C. 缓冲技术D. 多道程序设计技术4.分时系统追求的目标是 C。

(第2章操作系统的运行基础与结构)习题二答案

(第2章操作系统的运行基础与结构)习题二答案

习题二参考答案(P33)2-1什么是操作系统虚拟机?答:操作系统是最基本的系统软件,它是硬件功能的第一层扩充。

配置了操作系统的计算机称为操作系统虚拟机。

扩充了的计算机除了可以使用原来裸机提供的各种基本硬件指令,还可以使用操作系统增加的许多其它指令。

2-2在设计操作系统时,可以考虑的结构组织有哪几种?答:在设计操作系统时,可以考虑的结构组织有单体系统、层次式系统、微内核、客户机-服务器模式。

2-3什么是处理机的态?为什么要区分处理机的态?答:所谓处理机的态是指处理机当前处于何种状态,正在执行哪类程序。

操作系统是计算机系统中最重要的系统软件,为了能正确地进行管理和控制,其本身是不能被破坏的。

为此,系统应能建立一个保护环境,因此系统必须区分处理机的工作状态。

系统中有两类程序在运行,它们的任务是不同的,系统程序是管理和控制者,用户程序是被管理和被控制的对象,因此应将它们运行时处理机的工作状态区分出来,即系统必须区分二态(核态或管态、用户态)。

2-4什么是管态?什么是用户态?二者有何区别?答:处理器在执行系统程序时所处的状态称为管态;处理器在执行用户程序时所处的状态称为用户态。

处理器在管态和用户态下具有不同的权限:在管态下允许CPU使用全部资源和全部指令,其中包括一组特权指令;在用户态下禁止使用特权指令,不能直接使用系统资源与改变CPU状态,并且只能访问用户程序所在的存储空间。

2-5什么是中断?在计算机系统中为什么要引进中断?答:中断是指某个事件(例如,电源掉电、俘点运算溢出、外部设备传输完成或出错等)发生时,系统中止现运行程序的执行,引出处理事件程序对相应事件进行处理,处理完毕后返回断点继续执行。

为了实现多道程序设计技术、提高资源利用率,在计算机系统中引进中断。

2-6按中断的功能来分,中断有哪几种类型?答:按中断的功能来分,中断有如下五种类型:I/O中断外中断硬件故障中断程序性中断访管中断2-7什么是强迫性中断?什么是自愿中断?试举例说明。

计算机操作系统(第四版)课后习题答案第二章

计算机操作系统(第四版)课后习题答案第二章

第两章之阳早格格创做1. 什么是前趋图?为什么要引进前趋图?问:前趋图(Precedence Graph)是一个有背无循环图,记为DAG(Directed Acyclic Graph),用于形貌进程之间真止的前后关系.2. 绘出底下四条诧句的前趋图:S1=a:=x+y;S2=b:=z+1;S3=c:=a-b;S4=w:=c+1;问:其前趋图为:3. 为什么步调并收真止会爆收间断性个性?步调正在并收真止时,由于它们共享系统资材,以及为完毕共一项任务而相互合做,以致正在那些并收真止的进程之间,产死了相互约束的关系,进而也便使得进程正在真止功夫出现间断性.4. 步调并收真止时为什么会得去启关性战可再现性?果为步调并收真止时,是多个步调共享系统中的百般资材,果而那些资材的状态是由多个步调去改变,以致步调的运止得去了启关性.而步调一朝得去了启关性也会引导其再得去可再现性.5. 正在支配系统中为什么要引进进程观念?它会爆收什么样的效率?为了使步调正在多讲步调环境下能并收真止,并能对付并收真止的步调加以统造战形貌,进而正在支配系统中引进了进程观念. 效率: 使步调的并收真止得以真止.6. 试从动背性,并收性战独力性上比较进程战步调?a. 动背性是进程最基础的个性,可表示为由创修而爆收,由调动而真止,果得没有到资材而久停真止,以及由撤消而消得,果而进程由一定的死命期;而步调不过一组有序指令的集中,是固态真体. b. 并收性是进程的要害个性,共时也是OS的要害个性.引进进程的手段正是为了使其步调能战其余修坐了进程的步调并收真止,而步调自己是没有克没有及并收真止的. c. 独力性是指进程真体是一个能独力运止的基础单位,共时也是系统中独力赢得资材战独力调动的基础单位.而对付于已修坐所有进程的步调,皆没有克没有及动做一个独力的单位去运止.7. 试证明PCB的效率?为什么道PCB是进程存留的唯一标记?a. PCB是进程真体的一部分,是支配系统中最要害的记录型数据结构.PCB中记录了支配系统所需的用于形貌进程情况及统造进程运止所需的局部疑息.果而它的效率是使一个正在多讲步调环境下没有克没有及独力运止的步调(含数据),成为一个能独力运止的基础单位,一个能战其余进程并收真止的进程.b. 正在进程的所有死命周期中,系统经常通过其PCB对付进程举止统造,系统是根据进程的PCB而没有是所有别的什么而感知到该进程的存留的,所以道,PCB是进程存留的唯一标记.11.试证明进程正在三个基础状态之间变换的典型本果.问:(1)便绪状态→真奇迹态:进程调配到CPU 资材(2)真奇迹态→便绪状态:时间片用完(3)真奇迹态→阻塞状态:I/O哀供(4)阻塞状态→便绪状态:I/O完毕12.为什么要引进挂起状态?该状态有哪些本量?问:引进挂起状态处于五种分歧的需要: 末端用户需要,女进程需要,支配系统需要,对付换需要战背荷安排需要.处于挂起状态的进程没有克没有及交支处理机调动. 10.正在举前进程切换时,所要保存的处理机状态疑息有哪些?问:举前进程切换时,所要保存的处理机状态疑息有:(1)进程目前久存疑息(2)下一指令天面疑息(3)进程状态疑息(4)历程战系统调用参数及调用天面疑息.13.正在举前进程切换时,所要保存的处理机状态疑息有哪些?问:举前进程切换时,所要保存的处理机状态疑息有:(1)进程目前久存疑息(2)下一指令天面疑息(3)进程状态疑息(4)历程战系统调用参数及调用天面疑息.14.试证明引起进程创修的主要事变. 问:引起进程创修的主要事变有:用户登录、做业调动、提供服务、应用哀供.15.试证明引起进程被撤消的主要事变. 问:引起进程被撤消的主要事变有:平常中断、非常十分中断(越界过得、呵护错、非法指令、特权指令错、运止超时、等待超时、算术运算错、I/O 障碍)、中界搞预(支配员或者支配系统搞预、女进程哀供、女进程末止). 16.正在创修一个进程时所要完毕的主要处事是什么?问:(1)OS 创造哀供创修新进程事变后,调用进程创修本语Creat();(2)申请空黑PCB;(3)为新进程调配资材;(4)初初化进程统造块;(5)将新进程拔出便绪行列.17.正在撤消一个进程时所要完毕的主要处事是什么?问:(1)根据被末止进程标记符,从PCB 集结检索出进程PCB,读出该进程状态. (2)若被末止进程处于真奇迹态,坐时末止该进程的真止,臵调动标记真,指示该进程被末止后沉新调动. (3)若该进程另有子进程,应将所有后代进程末止,以防它们成为没有成控进程. (4)将被末止进程拥有的局部资材,送还给女进程,或者送还给系统. (5)将被末止进程PCB 从天圆行列或者列表中移出,等待其余步调支集疑息.18.试证明引起进程阻塞或者被唤醉的主要事变是什么?问:a. 哀供系统服务;b. 开用某种支配;c. 新数据尚已到达;d. 无新处事可搞.19. 为什么要正在OS中引进线程?正在OS中引进进程的手段,是为了使多个步调能并收真止,以普及资材利用率战系统吞吐量.正在OS中再引进线程,则是为了缩小步调正在并收真止时所付出的时空开销,使OS具备更佳的并收性.20.试证明线程具备哪些属性?问:(1)沉型真体(2)独力调动战分派的基础单位(3)可并收真止(4)共享进程资材.21. 试从调动性,并收性,拥有资材及系统开销圆里对付进程战线程举止比较. a. 调动性.正在保守的支配系统中,拥有资材的基础单位战独力调动、分派的基础单位皆是进程,正在引进线程的OS中,则把线程动做调动战分派的基础单位,而把进程动做资材拥有的基础单位; b. 并收性.正在引进线程的OS中,没有但是进程之间不妨并收真止,而且正在一个进程中的多个线程之间,亦可并收真止,果而使OS具备更佳的并收性; c. 拥有资材.无论是保守的支配系统,仍旧引进了线程的支配系统,进程末究是拥有资材的一个基础单位,而线程除了拥有一面正在运止时必没有成少的资材中,自己基础没有拥有系统资材,但是它不妨考察其隶属进程的资材; d. 开销.由于创修或者撤消进程时,系统皆要为之调配战回支资材,如内存空间等,进程切换时所要保存战树坐的现场疑息也要明隐天多于线程,果此,支配系统正在创修、裁撤战切换进程时所付出的开销将隐著天大于线程.。

操作系统第二章答案

操作系统第二章答案

第二章一、问答题1、配置在终端上的终端处理程序主要用于实现人机交互,应具有哪些功能?2、什么是系统调用?系统调用与一般过程调用的区别是什么?3、有I/O频繁、I/O与计算机均衡和计算量大的三个作业,它们同时进入主存并行工作,请给每个作业赋于运行优先数,并说明理由。

4、脱机命令接口和联机命令接口有什么不同?5、简述作业的状态有哪些?作业调度是把什么状态的作业调入到内存?6系统调用的执行过程大体上分成哪三步?7、命令解释程序有哪两种处理方法?8、解释作业和作业调度,作业调度选择作业的必要条件是什么?9、操作系统提供哪些便于用户控制交互式作业的使用接口?10、一个具有分时兼批处理功能的操作系统应怎样调度和管理作业?为什么?二、计算题和证明1、某系统采用不能移动已在主存储器中作业的可变分区方式管理主存储器,现有供用户使用的主存空间100K,系统配有4台磁带机,有一批作业见表。

表该系统采用多道程序设计技术,对磁带机采用静态分配,忽略设备工作时间和系统进行调度所花的时间,请分别写出采用优先数算法(数字越小优先级别越高)响应比高者优先算法、短作业优先算法、先来先服务算法选中作业执行的次序。

1, 2, 4, 5, 32、试证明短作业优先调度算法能达到最短平均周转时间。

证明:假定t个作业的执行时间分别是t1, t2, t3, ....,t n,则总的周转时间为T=t l+(t l+t2) ------ (t l+t2 ---------- t n) (t1<t2<t3v....vt n)=n t1+( n-1)t2+....+t n即t l, t l,…….,t l,坛….…,t2, t3,.……,t3,坛.……,t n-1, t n-1, t n之和,此序列表示为X X1 , X2, X3, .. , X n(n+1)/2,若任意其他执行序列,则其周转时间为S=S1 +(S1 +S2)+ …+(S 1+S2+ …+S n)即S1, .........S1, .................. , S, S2, ....... , S2, .......... S3, , S3, S2, , S n-1, S n-1, S n 之和,将此序歹U按照数大小进行排列,得到序列丫表示为y1, y2,y3,……,y n(n+1)/2,因为t1vt2vt3v....vtn,所以在序列X和丫的前n项肯定满足X i <y i,因为丫序列中最短的时间值(等于b的值)不会多于n个,所以从第n+1项开始其值必大于等于t2,因此在序列X和丫的前n+1, 2n-1项肯定满足X i <y i,因为丫序列中最短的时间值和次短值(等于t1或t2的值)不会多于2n-1个,所以从第2n 项开始其值必大于等于t3,因此在序列X和丫的前2n,3n-3项肯定满足X i < y i, 依次类推得到,每项都满足X i < y i, i=1 , 2, 3,…,n(n+1)/2因此短作业优先调度算法平均周转时间最短3、有一个多道程序设计系统,采用不允许移动的可变分区方式管理主存中的用户空间,设用户空间为100K,主存空间的分配算法为最先适应分配算法,进程假定所有作业都是计算型作业且忽略系统调度时间,请写出采用"计算时间短的作业优先算法"时作业的装入主存时间、开始执行时间、完成时间、周转时间以及它们的平均周转时间。

第二章-操作系统进程(练习题答案)教学教材

第二章-操作系统进程(练习题答案)教学教材

第二章进程管理1.操作系统主要是对计算机系统全部 (1) 进行管理,以方便用户、提高计算机使用效率的一种系统软件。

它的主要功能有:处理机管理、存储管理、文件管理、 (2) 管理和设备管理等。

Windows和Unix是最常用的两类操作系统。

前者是一个具有图形界面的窗口式的 (3) 系统软件,后者是一个基本上采用 (4) 语言编制而成的的系统软件。

在 (5) 操作系统控制下,计算机能及时处理由过程控制反馈的信息并作出响应。

供选答案:(1): A. 应用软件 B. 系统软硬件C. 资源D. 设备(2): A. 数据 B. 作业C. 中断D. I/O(3): A. 分时 B. 多任务C. 多用户D. 实时(4): A. PASCAL B. 宏C. 汇编D. C(5): A. 网络 B. 分时C. 批处理D. 实时答案:CBBDD2.操作系统是对计算机资源进行的 (1) 系统软件,是 (2) 的接口。

在处理机管理中,进程是一个重要的概念,它由程序块、 (3) 和数据块三部分组成,它有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. CDROMD. 寄存器答案:CDADB3.在计算机系统中,允许多个程序同时进入内存并运行,这种方法称为 D。

A. Spodling技术B. 虚拟存储技术C. 缓冲技术D. 多道程序设计技术4.分时系统追求的目标是 C。

(完整版)操作系统第二章课后答案

(完整版)操作系统第二章课后答案

第二章进程管理2. 试画出下面4条语句的前趋图:S2: b:=z+1;S3: c:=a-b;S4: w:=c+1;3.程序在并发执行时,由于它们共享系统资源,以及为完成同一项任务而相互合作,致使在这些并发执行的进程之间,形成了相互制约的关系,从而也就使得进程在执行期间出现间断性。

4. 程序并发执行时为什么会失去封闭性和可再现性?因为程序并发执行时,是多个程序共享系统中的各种资源,因而这些资源的状态是由多个程序来改变,致使程序的运行失去了封闭性。

而程序一旦失去了封闭性也会导致其再失去可再现性。

5. 在操作系统中为什么要引入进程概念?它会产生什么样的影响?为了使程序在多道程序环境下能并发执行,并能对并发执行的程序加以控制和描述,从而在操作系统中引入了进程概念。

影响: 使程序的并发执行得以实行。

6. 试从动态性,并发性和独立性上比较进程和程序?a. 动态性是进程最基本的特性,可表现为由创建而产生,由调度而执行,因得不到资源而暂停执行,以及由撤销而消亡,因而进程由一定的生命期;而程序只是一组有序指令的集合,是静态实体。

b. 并发性是进程的重要特征,同时也是OS的重要特征。

引入进程的目的正是为了使其程序能和其它建立了进程的程序并发执行,而程序本身是不能并发执行的。

c. 独立性是指进程实体是一个能独立运行的基本单位,同时也是系统中独立获得资源和独立调度的基本单位。

而对于未建立任何进程的程序,都不能作为一个独立的单位来运行。

7. 试说明PCB的作用?为什么说PCB是进程存在的唯一标志?a. PCB是进程实体的一部分,是操作系统中最重要的记录型数据结构。

PCB中记录了操作系统所需的用于描述进程情况及控制进程运行所需的全部信息。

因而它的作用是使一个在多道程序环境下不能独立运行的程序(含数据),成为一个能独立运行的基本单位,一个能和其它进程并发执行的进程。

b. 在进程的整个生命周期中,系统总是通过其PCB对进程进行控制,系统是根据进程的PCB而不是任何别的什么而感知到该进程的存在的,所以说,PCB是进程存在的唯一标志。

操作系统第二章习题答案3

操作系统第二章习题答案3

第2章操作系统用户界面Page 362.1 什么是作业?什么是作业步?答:把在一次应用业务处理过程中,从输入开始到输出结束,用户要求计算机所做的有关该次全部工作称为一个作业,从系统的角度看,作业则是一个比程序更广的概念。

它由程序、数据和作业说明书组成,系统通过作业说明书控制文件形式的程序和数据,使之执行和操作。

而且,在批处理系统中,作业是抢占内存的基本单位。

也就是说,批处理系统以作业为单位把程序和数据调入内存以便执行。

作业由不同的顺序相连的作业步组成。

作业步是在一个作业的处理过程中,计算机所做的相对独立的工作。

例如,编辑输入是一个作业步,它产生源程序文件;编译也是一个作业步,它产生目标代码文件。

2.2 作业由哪几部分组成?各有什么功能?答:作业由三部分组成:程序、数据和作业说明书。

程序和数据完成用户所要求的业务处理工作,系统通过作业说明书控制文件形式的程序和数据,使之执行和操作。

2.3 作业的输入方式有哪几种?各有什么特点?答:作业的输入方式有5种:(1)联机输入方式:用户和系统通过交互式会话来输入作业。

(2)脱机输入方式:利用低档个人计算机作为外围处理机进行输入处理,存储在后援存储器上,然后将此后援存储器连接到高速外围设备上和主机相连,从而在较短的时间内完成作业的输入工作。

(3)直接耦合方式:直接耦合方式把主机和外围低档机通过一个公用的大容量外存直接耦合起来,从而省去了在脱机输入中那种依靠人工干预来传递后援存储器的过程。

(4)SPOOLING系统:SPOOLING又可译作外围设备同时联机操作。

在SPOOLING系统中,多台外围设备通过通道或DMA器件和主机与外存连接起来。

作业的输入输出过程由主机中的操作系统控制。

(5)网络输入方式:网络输入方式以上述几种输入方式为基础。

当用户需要把在计算机网络中某一台主机上输入的信息传送到同一网中另一台主机上进行操作或执行时,就构成了网络输入方式2.4 试述 SPOOLING 系统的工作原理。

操作系统第二版第二章课后习题答案

操作系统第二版第二章课后习题答案

第二章进程和线程作业答案1,2,4,6,7,10,11,12,14, 211.在操作系统中为什么要引入进程概念?它与程序的差别和关系是怎样的?答:由于多道程序的并发执行时共享系统资源,共同决定这些资源的状态,因此系统中各程序在执行过程中就出现了相互制约的新关系,程序的执行出现“走走停停”的新状态。

用程序这个静态概念已经不能如实反映程序并发执行过程中的这些特征。

为此,人们引入“进程(Process)”这一概念来描述程序动态执行过程的性质。

进程和程序是两个完全不同的概念。

进程与程序的主要区别:进程和程序之间存在密切的关系:进程的功能是通过程序的运行得以实现的,进程活动的主体是程序,进程不能脱离开具体程序而独立存在。

2.PCB的作用是什么?它是怎样描述进程的动态性质的?答:PCB是进程组成中最关键的部分。

每个进程有惟一的进程控制块;操作系统根据PCB对进程实施控制和管理,进程的动态、并发特征是利用PCB表现出来的;PCB是进程存在的唯一标志。

PCB中有表明进程状态的信息,该进程的状态包括运行态、就绪态和阻塞态,它利用状态信息来描述进程的动态性质。

4. 用如图2-26所示的进程状态转换图能够说明有关处理机的大量容。

试回答:①什么事件引起每次显著的状态变迁?②下述状态变迁因果关系能否发生?为什么?(A)2→1 (B)3→2 (C)4→1答:(1)就绪→运行:CPU空闲,就绪态进程被调度程序选中运行→阻塞:运行态进程因某种条件未满足而放弃CPU的占用。

阻塞→就绪:阻塞态进程所等待的事件发生了。

运行→就绪:正在运行的进程用完了本次分配给它的时间片(2)下述状态变迁(A)2→1,可以。

运行进程用完了本次分配给它的时间片,让出CPU,从就绪队列中选一个进程投入运行。

(B)3→2,不可以。

任何时候一个进程只能处于一种状态,它既然由运行态变为阻塞态,就不能再变为就绪态。

(C)4→1,可以。

某一阻塞态进程等到的事件出现了,而且此时就绪队列为空,该进程进入就绪队列后马上又被调度运行。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

26.假定有如下独木桥问题:过桥时,同一方向的行人可连续过桥,当某一方向有人过桥时,另一方向的行人必须等待;当某一方向无人过桥时,另一方向的行人可以过桥。

试用信号量机制解决。

答:(1)将独木桥的两个方向分别标记为A和B。

用整型变量countA和countB分别表示A、B方向上已在独木桥上的行人数,初值都设置为0。

需要设置三个初值都为1的互斥信号量:MA用来实现对countA的互斥访问,MB用來实现对countB的互斥访问,mutex用来实现两个方向的行人对独木桥的互斥使用。

(2)以下使用信号量机制对A力向上的行人过桥和B方向上的行人过桥的算法进行描述:mt countA. countB;counlA= 0; countB = 0:Semaphore MA.MB .mutex; //定义了三个互斥信号量MA.value=l; MB.value=l; mutex.value=l;cobeginprocess A_direction_cross_bridge_person //A 方向上过独木桥的行人进程P(MA): //实现对临界资源countA的互斥访问〃当A方向上没有行人过独木桥吋,这吋有可能存在B方向上的行人在过独木桥。

if (countA = 0)P(mutex); ,7如果当前独木桥正在被使用,说明B方向上的行人正在过桥,则A方向上的行人必须等待。

countA=countA+l; 〃当B方向上没有行人过桥时,则A方向上的行人可以过独木桥。

因此A 方向上已在独木桥上的行人数增加1个V(MA); 〃退出临界区过桥:打A方向上的行人通过独木桥P(MA): 〃实现对临界资源countA的互斥访问countA=countA-l; //当A方向上的行人已经通过了独木桥时,则A方向上在独木桥上的行人数需要减少1个if(counlA==0)〃如果A方向上在独木桥上的行人数减少到0.则\>utex); 〃需要释放独木桥临界资源,唤醒第■个由于在等待独木桥而处于等待状态的B 方向上过独木桥的行人进程(如果此进程存在)V(MA);"退出临界区Process B_direction_cross_bridge_person //B 方向上过独木桥的行人进程P(MB); 〃实现对临界资源countB的互斥访问〃当B方向上没有行人过独木桥时,这吋有可能存在A方向上的行人在过独木桥。

if (couiitB==0)P(mutex)://如果当前独木桥正在被使用,说明A方向上的行人正在过桥,则B方向上的行人必须等待。

countB=couiitB-l; 〃当A方向上没有行人过桥吋,则B方向上的行人可以过独木桥。

因此B 方向上已在独木桥上的行人数增加1个退出临界区//V(MB):过桥:/汨方向上的行人通过独木桥P(MB):"实现对临界资源counts的互斥访问coiintB=countB-l;//当B方向上的行人已经通过了独木桥时,则B方向上在独木桥上的行人数需要减少1个if(countB=0)〃如果B方向上在独木桥上的行人数减少到0,则\'(mutex); 〃需要释放独木桥临界资源,唤醒第-个由于在等待独木桥而处于等待状态的A方向上过独木桥的行人进程(如果此进程存在〉V©IB):〃退出临界区coend27•有7个并发执行的进程Pi (迄1,2,…,7),若希望它们按照如下图所示的次序执行,试写出进程并发执行的算法。

S[5] P4 S[2] P2 S[0]P6 S[3]S⑺P3 P7 st4]S[l]S[6]P5 Pl的结构型信号量数组定义-个人小等于SSemaphore S[8]: Aalue=0: S[i]A-for(mt尸0:i<8:i卄)process PP()coend农示夹在它们之间的语句可以并发执行伪代码cobegin和cobegiiU {P1: V(S[1]):}{P2;V(S[0]);}{P(S[0]): P(S[1]): P3: V(S[2]); V(S[3]): \'(S[4]);}{P(S[2]); P4:V(S[5]);}{P(S[4]): P5;V(S[6]):}{P(S[5]): P(S[3]): P6: V(S[7]):}{P(S[7]): P(S⑹):P7:} coend在公共汽车上,司机的活动描述为:启动汽车、正常行车、到站停车;售票员的活29.动描述为:关车门、售票、开车门:试写出司机与售票员之间的同步算法。

答:在汽车行驶过程中,司机活动与售票员活动之间的同步关系为:售票员关车门后, 向司机发开车信号,司机接到开车信号后启动汽车,在汽车正常行驶过程中售票员售票,到站时司机停车,售票员在车停后开车门让乘客上下车。

因此司机启动汽车的动作必须与售票员关车门的动作取得同步,而售票员开车门的动作也必须与司机到站停车的动作取得同步。

表示是否允许司机启动汽车(或表示售票员是否已S1。

在本题中,应设置两个信号量S1和S2,其初农示是否允许售票员开门(或农示司机是否已经到站停车了);,其初值为经关好车门)0S20. 值为采用信号量机制描述司机与售票员之间的同步算法如下: Semaphore S1,S2;/Z 首先定义两个信号量SI 和S2 Srvalue=0; S2.value=0;cobeginprocess driver() while(l) 关车门;V(S1); 售票; P(S2): 开车门;上下乘客;coend我们来分析这个过程,首先将信号量SI 和S2的初值都设为0・然后进行以下分析:1. P(Sl) : Sl.value = Sl.value -1 = -1 < 0 .那么司机进程就自己阻塞起来,等待售票员进程,售 票员关车门。

2. V(S1) : Sl.value = Sl.value-1=0 <=0.唤醍司机逬程,那么司机就开始启动汽车、正常行车; 在此期间,售票员也可以同时进行售票。

3. P(S2) : S2.value = S2.value-l=-l<0 .那么售票员在售完票后,售票员进程就会自己阻塞起 來,等待司机进程。

这样就能避免当司机还没到站停车时,售票员就已经将车门打开了。

而这是 不允许的。

4. V(S2) : S2.value = S2.value 1 = 0 <= 0.司机到站停车之后,就唤醒售票员进程.那么售票员 就开启车门让乘客上下车。

那么这个进程就完成了。

30. 一个阅览室共有100个座位,用一张表来管理,每个表U 记录座位号和读者 姓名。

读者进入时要先在表上登记,离开时要注销登记。

试写出读者“进入"和 “注销”之间的同步算法。

答:读者的动作有两个,•是填衣进入阅览室读书,这时要考虑阅览室里是否有座位:二是读者 阅读完毕,需要注销登记再离开阅览室,这时的操作要考虑阅览室里是否有读者存在。

读者在阅 览室读书时,由于没有引起资源的变动,不算动作变化。

因此.设置算法所涉及的三个信号量: empty 资源信号量一一表示阅览室里的空座位的数目,初值为100: fuU 资源信号量——农示阅 览室里有人的座位的数目(或衣示阅览室里的读者的数目),初值为0: mutex 互斥信号量一 农示对登记农这个临界资源的互斥访问,初值设为1。

使用信号量机制对读者“进入”阅览室和“注销”登记之间的同步算法描述如下:Semaphore empty,fulhmutex: 〃首先定义两个资源信号量enq)ty> full 和一个互斥信号量mutex empty3'alue= 100; full.value=O;mutexA*alue=l;cobegin读者“进入”阅览室的进程processgetui()//process conductor()while(l)P(S1): 启动汽车;正常行车;到站停车;V(S2);〃没有座位则离开〃进入临界区〃离开临界区〃释放•个读者资源 process getout ()//读者“注销”登记、离开阅览室的进程〃阅览室是否有人在读书(是否存在有人的座位) 〃进入临界区〃离开临界区 〃释放一个座位资源coend32.假定有3个进程R. W1. W2共享一个缓冲区B, B 中每次只能存放一个整数。

进程R 从输入设备读入一个数进缓冲区B 。

若读入的是奇数,则由进程W1取出 打印;若读入的是偶数,则由进程W2取出打印。

规定不能重复从B 中取数打印。

试写出同步算法。

答:需要设置3个信号量:(1〉信号量empty 用于表示进程R 可向缓冲区B 中读入的整数个数,初值为1,表示进程R 能 读入一个整数到缓冲区B 中.(2) 信号量SW1的初值为0,表示开始时缓冲区E 中没有奇数可供进程W1读取.SW1控制 R 与W1之间的同步。

(3) 信号量SW2的初值为0,表示开始时缓冲区E 中没有偶数可供进程W2读取。

SW2控制 R 与W2之间的同步. 使用信号量机制对这三个进程的同步算法描述如下:Semaphore empty,SW1,SW2; 〃骨先定义 3 个信号量 empty.value=l:S\VLvalue=0;SW2.value=0;cobeginprocess RQmtx;while(l)从输入设备上读一个整数到X:P(empty): 〃判断进程R 能否向缓冲区B 中读入一个整数。

如果不可以,则R 进程阻塞起來等 待。

否则,继续向下执行。

B=x; //把读入到变量X 中的整数賦值给缓冲区BP (enqjty);P (mutex): 填写登记衣; 进入阅览室请书;(mutex);(full):P(fuU);P(mutex): 注销登记: 离开阅览室:V(empty):if(x%2=l)\-(S\Vl); //如果读入的是奇数,则向进程W1发出信号elseV(SW2); //如果读入的是偶数,则向进程W2发出信号process Wl()mty;P(SWl); //收到R发过来的信号,已产生一个奇数y=B: 〃取出缓冲区B中的奇数到变量y中打印y中的数;V(empty):"向R发出信号,使进程R又可以向缓冲区B读入一个整数process W2() mtz;P(SW2);//收到进程R发过来的信号.已产生一个偶数z=B: //取出缓冲区B中的偶数到变量Z中打印Z中的数:V(en^ty); A向R发出信号・使进程R又可以向缓冲区B读入一个整数。

相关文档
最新文档