(完整版)操作系统第二章作业答案
操作系统 第二章 习题

第二章练习题及参考答案一、单项选择题1.用户作业可以通过()方式由用户自己按照作业来进行操作。
A.脱机B.自动控制C.在线处理D.联机处理2.()是操作系统提供的一种专门语言,它由操作系统的专门机制解释处理。
A.C语言B.JCL语言C.Ada语言D.Pascal语言3.作业调度算法中()调度算法最有利于提高资源利用率。
A.先来先服务B.优先数C.响应比最高优先D.均衡4.终端用户在终端上控制作业的执行要经历四个阶段,最初阶段是()。
A.用户注册B.终端连接C.作业控制D.用户退出5.在下面作业调度算法中()调度算法最有利于小作业,从而提高系统吞吐能力。
A.先来先服务B.计算时间短的作业优先C.优先数D.响应比最高者优先6.当中央处理器处于目态时,它可以执行的指令是()。
A.计算机系统中的全部指令B.仅限于非特权指令C.仅限于防管指令D.仅限于特权指令7.作业调度算法常考虑因素之一是使系统有最高的吞吐率,为此应()。
A.不让处理机空闲B.能够处理尽可能多的作业C.使各类用户满意D.不使系统过于复杂8. 分时操作系统环境下运行的作业通常称为()。
A.后台作业B.长作业C.批量型作业D.终端型作业9.在作业调度算法中,若所有作业同时到达,则平均等待时间最短的算法是()。
A.先来先服务B.优先数C.响应比最高优先D.计算时间段的作业优先10.作业调度程序从处于()状态的作业队列中选取适当的作业投入运行。
A.执行B.提交C.完成D.后备11.既考虑作业等待时间,又考虑作业执行时间的调度算法是()。
A. 先来先服务B.优先数C.响应比最高优先D.均衡12.()是指从作业提交给系统到作业完成的时间间隔。
A.周转时间B.响应时间C.等待时间D.执行时间13.作业从进入后备队列到被调度程序选中的时间间隔称为()。
A.周转时间B.响应时间C.等待时间D.触发时间二、多项选择题1.响应比最高者优先调度算法是()调度算法的折衷。
南通大学操作系统第2章作业参考答案 (1)

13简答题:简述处理机管理的主要功能。
进程控制和管理;⑵进程同步和互斥;⑶进程通信;⑷进程死锁;⑸线程控制和管理;⑹处理器调度。
(每条1分,总分4分)14简答题:简述中断和异常的区别中断是由与现行指令无关的中断信号触发的(异步的),且中断的发生与CPU处在用户模式或内核模式无关,在两条机器指令之间才可响应中断;异常是由处理器正在执行现行指令而引起的,一条指令执行期间允许响应异常。
(1分)⑵中断处理程序处理过程中是不能阻塞的,异常处理程序处理过程中是可以阻塞的。
(1分)⑶中断允许发生嵌套,但异常大多为一重。
(1分)异常处理过程中可能会产生中断,但中断处理过程中决不会被异常打断。
(1分)15简述进程的主要属性。
(1)动态性:有一定的生命周期⑵共享性:多个进程可执行同一程序,进程可以共享公共资源⑶独立性:是一个独立实体,有自己的虚存空间、程序计数器和内部状态,是资源分配、保护和调度的基本单位⑷制约性:存在制约关系(5)并发性:执行时间上会有所重叠16(每条1分,总分4分)16简答题:简述引起进程状态转换的具体原因。
(1)运行态→等待态:等待使用资源或某事件发生;(1分)⑵等待态→就绪态:资源得到满足或事件发生;(1分)⑶运行态→就绪态:运行时间片到;出现有更高优先权进程;(1分)⑷就绪态→运行态:CPU空闲时选择一个就绪进程。
(1分)17、简答题:进程的基本状态有哪些?请画出进程的状态转换图。
进程的基本状态包括:就绪态、运行态和等待态;(2分)⑵进程的状态转换图如下:(2分)18、简答题:简述进程映象的要素。
(1)进程控制块:标志信息、现场信息、控制信息;(1分)⑵进程核心栈:中断/异常现场、函数调用的参数和返回地址;(1分)⑶进程程序块:进程执行的程序;(1分)⑷进程数据块:私有地址空间,私有数据、用户栈。
(1分)19、简答题:简述引起进程调度的原因。
(1)进程终止⑵进程阻塞⑶进程时间片用完经,⑷进程创建⑸进程请求I/O操作完成⑹进程优先级改变⑺进程运行过程中发生中断或异常⑻进程执行系统调用(每条1分,总分4分)20、下列指令中,哪些是特权指令?⑴关中断;⑵访管指令;⑶设置系统时钟;⑷移位指令;⑸启动I/O;⑹读时钟日期;⑺控制中断屏蔽位(1)、⑶、⑸、⑺(每答对1个得1分,答错1个扣1分)。
操作系统第二章课后答案

第二章进程管理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,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,可以。
某一阻塞态进程等到的事件出现了,而且此时就绪队列为空,该进程进入就绪队列后马上又被调度运行。
操作系统第二章习题与解答

02
03
选择题1解析
这道题考查的是操作系统 的定义,要求考生能够准 确理解并解释操作系统的 基本概念。
选择题2解析
这道题考查的是操作系统 的功能,要求考生能够列 举并解释操作系统的基本 功能。
选择题3解析
这道题考查的是操作系统 的分类,要求考生能够根 据不同的分类标准对操作 系统进行分类。
填空题析
多做练习题
通过多做练习题可以加深对基 本概念的理解,提高解题能力
和技巧。
THANKS
感谢观看
简答题2解析
这道题考查的是进程的状态转换, 要求考生能够简要描述进程的三种 状态转换及其条件。
简答题3解析
这道题考查的是内存管理的方式, 要求考生能够简要比较几种常见的 内存管理方式的优缺点。
04
重点回顾部分
本章重点概念回顾
进程
进程是程序的一次执 行,具有动态性、并 发性、独立性和制约 性。
线程
简答题
题目
简述死锁的预防和解除方法。
答案
死锁的预防方法包括避免循环等待和请求和保持条件 ,即对资源进行合理的分配和排序,避免出现循环等 待的情况;同时限制进程对资源的申请,防止出现请 求和保持条件。死锁的解除方法包括回退和记账法, 回退法是指让进程主动放弃已获得的资源,回到之前 的安全状态;记账法是指为每个资源设置计数器,当 出现死锁时,通过调整计数器的值来解除死锁。
线程是进程内的一条 执行路径,是系统进 行调度的基本单位。
死锁
死锁是指两个或多个 进程在执行过程中, 因争夺资源而造成的 一种互相等待的现象。
饥饿
饥饿是指一个或多个 进程无限期地等待, 而得不到所需资源的 现象。
调度算法
调度算法是根据一定 的规则和优先级,将 就绪队列中的进程分 配给处理器进行执行 的算法。
操作系统第二章练习 答案

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.进程有哪三种基本状态?进程在三种基本状态之间转换的典型原因是什么?答:三种基本状态:就绪状态、执行状态、阻塞状态。
(1)就绪状态→执行状态:进程分配到CPU资源(进程调度);(2)执行状态→就绪状态:时间片用完(3)执行状态→阻塞状态:I/O请求(4)阻塞状态→就绪状态:I/O完成2.在Linux系统中运行下面程序,最多可产生多少个进程?画出进程家族树。
main(){fork();fork();fork();}答:最多可以产生7个进程。
其家族树为:3.试从动态性、并发性和独立性上比较进程和程序。
答:1)动态性是进程最基本的特性,可表现为由创建而产生,由调度而执行,因得不到资源而暂停执行,以及由撤销而消亡,因而进程由一定的生命期;而程序只是一组有序指令的集合,并存放于某种介质上,其本身并不具有运动的含义,因而是静态的;2)并发性是进程的重要特征,同时也是OS的重要特征。
引入进程的目的正是为了使其程序能和其它建立了进程的程序并发执行,而程序本身(没有建立PCB)是不能并发执行的;3)独立性是指进程实体是一个能独立运行、独立分配资源和独立接受调度的基本单位。
凡未建立PCB的程序,都不能作为一个独立的单位来运行。
4.分析下列代码的功能:答:sleep_on实现进程的睡眠过程;wake_up实现进程的唤醒过程。
第二次作业:1.同步机制应该遵循哪些基本准则?你认为整型信号量机制遵循了同步机制的哪些基本准则?答:同步机制应遵循四个基本准则:a. 空闲让进:当无进程处于临界区时,应允许一个请求进入临界区的进程立即进入自己的临界区,以有效地利用临界资源。
b. 忙则等待:当已有进程进入临界区时,其它试图进入临界区的进程必须等待,以保证对临界资源的互斥访问。
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=t1+(t1+t2)+…+(t1+t2+…+t n) (t1<t2<t3<....<tn)=nt1+(n-1)t2+....+t n即t1, t1,......., t1, t2,......., t2, t3,......., t3, t2,......., t n-1, t n-1, t n之和,此序列表示为Xx1,x2,x3,...... ,x n(n+1)/2,若任意其他执行序列,则其周转时间为S=s1+(s1+s2)+…+(s1+s2+…+s n)即s1, s1,......., s1, s2,......., s2, s3,......., s3, s2,......., s n-1, s n-1, s n之和,将此序列按照数大小进行排列,得到序列Y表示为y1,y2,y3,...... ,y n(n+1)/2,因为t1<t2<t3<....<tn,所以在序列X和Y的前n项肯定满足x i≤y i,因为Y 序列中最短的时间值(等于t1的值)不会多于n个,所以从第n+1项开始其值必大于等于t2,因此在序列X和Y的前n+1,2n-1项肯定满足x i≤y i,因为Y序列中最短的时间值和次短值(等于t1或t2的值)不会多于2n-1个,所以从第2n 项开始其值必大于等于t3,因此在序列X和Y的前2n,3n-3项肯定满足x i≤y i,依次类推得到,每项都满足x i≤y i,i=1,2,3,...,n(n+1)/2因此短作业优先调度算法平均周转时间最短3、有一个多道程序设计系统,采用不允许移动的可变分区方式管理主存中的用户空间,设用户空间为100K,主存空间的分配算法为最先适应分配算法,进程调度算法采用先来先服务算法,今有如表所示作业序列:假定所有作业都是计算型作业且忽略系统调度时间,请写出采用"计算时间短的作业优先算法"时作业的装入主存时间、开始执行时间、完成时间、周转时间以及它们的平均周转时间。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第二章作业
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.试述线程的特点及其与进程之间的关系。
答:线程的特点:是被独立分派和调度的基本单位。
线程与进程的关系:线程是进程的一部分,是进程内的一个实体;一个进程可以有多个线程,但至少必须有一个线程。
7.根据图2-18,回答以下问题。
进程发生状态变迁1、3、4、6、7的原因。
答:变迁1原因:创建进程后,将其按高优先级插入就绪队列;
变迁3原因:进程请求I/O或等待某事件而阻塞;
变迁4原因:时间片用完;
变迁6原因:进程I/O完成或时间完成;
变迁7原因:进程完成而退出。
系统中常常由于某一进程的状态变迁引起另一进程也产生状态变迁,这种变迁称为因果变迁。
下述变迁是否为因果变迁:3→2,4→5,7→2,3→6,是说明原因。
答:为因果变迁的变迁有:3→2,因为当一个进程从运行态变为阻塞态时,此时CPU空闲,系统首先到高优先级队列中选择一个进程投入运行。
根据此进程状态转换图,说明该系统CPU调度的策略和效果。
8.回答以下问题。
若系统中没有运行进程,是否一定没有就绪进程?为什么?
答:是,因为一旦系统中没有运行程序,就会马上从就绪队列中调度就绪进程,只有就绪进程队列为空时,系统中才没有进程。
若系统中既没有运行进程,也没有就绪进程,系统中是佛就没有阻塞进程?
解释。
答:不是,因为
如果系统采用优先级调度策略,运行的进程是否一定是系统中优先级最高的进程?为什么?
9.假如有以下程序段,回答下面的问题。
S1: a=3-x;
S2: b=2*a;
S3: c=5+a;
(1)并发程序执行的Bernstein 条件是什么?
答: P1和P2并发执行的条件是:
当且仅当: R(P1)∩W(P2) ∪R(P2) ∩W(P1) ∪W(P1)∩W(P2)={}。
(2)是画图表示它们执行时的先后次序。
执行次序为:s1→s2→s3
(3)利用Bernstein 条件证明,S1、S2和S3哪两个可以并发执行,哪两个不能。
答:R(S1)={x}
W(S2)={a}
R(S2)={a}
W(S2)={b}
R(S3)={a}
W(S3)={c}
因为:W(S1)∩R(S2)={a}, 所以S1和S2不能并发执行。
W(S1)∩R(S2)={a}, 所以S1和S3也不能并发执行。
又因为:R(S2)∩W(S3)∪R(S3)∩W(S2)∪W(S2)∩W(S3)={}, 所以S2和S3可以并发执行。