第三章进程管理课后习题答案解析

合集下载

操作系统原理-第三章 进程管理作业 答案

操作系统原理-第三章 进程管理作业 答案

第三章进程管理3.3习题3.3.1 选择最合适的答案1. UNIX操作系统的进程控制块中常驻内存的是()。

A.proc结构B.proc结构和核心栈C.ppda区D.proc结构和user结构2. 当()时,进程从执行状态转变为就绪状态。

A.进程被调度程序选中B.时间片到C.等待某一事件D.等待的事件发生3. 在进程状态转换时,下列()转换是不可能发生的。

A.就绪态→运行态B.运行态→就绪态C.运行态→阻塞态D.阻塞态→运行态4. 下列各项工作步骤中,()不是创建进程所必需的步骤。

A.建立一个PCBB.作业调度程序为进程分配CPUC.为进程分配内存等资源D. 将PCB链入进程就绪队列5. 下列关于进程的叙述中,正确的是()。

A.进程通过进程调度程序而获得CPU。

B.优先级是进行进程调度的重要依据,一旦确定不能改变。

C.在单CPU系统中,任一时刻都有1个进程处于运行状态。

D.进程申请CPU得不到满足时,其状态变为等待状态。

6. 从资源管理的角度看,进程调度属于()。

A.I/O管理B.文件管理C.处理机管理D.存储器管理7. 下列有可能导致一进程从运行变为就绪的事件是()。

A.一次I/O操作结束B.运行进程需作I/O操作C.运行进程结束D.出现了比现运行进程优先权更高的进程8. 一个进程释放一种资源将有可能导致一个或几个进程()。

A.由就绪变运行B.由运行变就绪C.由阻塞变运行D.由阻塞变就绪9. 一次I/O操作的结束,有可能导致()。

A.一个进程由睡眠变就绪B.几个进程由睡眠变就绪C.一个进程由睡眠变运行D.几个进程由睡眠变运行10. 当一个进程从CPU上退下来时,它的状态应变为()。

A.静止就绪B. 活动就绪C. 静止睡眠D. 活动睡眠11. 为使进程由活动就绪变为静止就绪,应利用()原语?A.SUSPENDB. ACTIVEC. BLOCKD. W AKEUP12. 在下面的叙述中,不正确的是()。

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

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

操作系统第二版课后习题答案操作系统第二版课后习题答案操作系统是计算机科学中的重要领域,它负责管理计算机硬件和软件资源,为用户提供良好的使用体验。

在学习操作系统的过程中,课后习题是巩固和深化知识的重要方式。

本文将为大家提供操作系统第二版课后习题的答案,帮助读者更好地理解和掌握操作系统的知识。

第一章:引论1. 操作系统的主要功能包括进程管理、内存管理、文件系统管理和设备管理。

2. 进程是指正在执行的程序的实例。

进程控制块(PCB)是操作系统用来管理进程的数据结构,包含进程的状态、程序计数器、寄存器等信息。

3. 多道程序设计是指在内存中同时存放多个程序,通过时间片轮转等调度算法,使得多个程序交替执行。

4. 异步输入输出是指程序执行期间,可以进行输入输出操作,而不需要等待输入输出完成。

第二章:进程管理1. 进程调度的目标包括提高系统吞吐量、减少响应时间、提高公平性等。

2. 进程调度算法包括先来先服务(FCFS)、最短作业优先(SJF)、优先级调度、时间片轮转等。

3. 饥饿是指某个进程长时间得不到执行的情况,可以通过调整优先级或引入抢占机制来解决。

4. 死锁是指多个进程因为争夺资源而陷入无限等待的状态,可以通过资源预分配、避免环路等方式来避免死锁。

第三章:内存管理1. 内存管理的主要任务包括内存分配、内存保护、地址转换等。

2. 连续内存分配包括固定分区分配、可变分区分配和动态分区分配。

3. 分页和分段是常见的非连续内存分配方式,分页将进程的地址空间划分为固定大小的页,分段将进程的地址空间划分为逻辑段。

4. 页面置换算法包括最佳置换算法、先进先出(FIFO)算法、最近最久未使用(LRU)算法等。

第四章:文件系统管理1. 文件是操作系统中用来存储和组织数据的逻辑单位,可以是文本文件、图像文件、音频文件等。

2. 文件系统的主要功能包括文件的创建、删除、读取、写入等操作。

3. 文件系统的组织方式包括层次目录结构、索引结构、位图结构等。

操作系统课后部分习题及答案

操作系统课后部分习题及答案

第2章操作系统的运行环境2.2 现代计算机为什么设置目态/管态这两种不同的机器状态?现在的lntel80386设置了四级不同的机器状态(把管态又分为三个特权级),你能说出自己的理解吗?答:现在的Intel 80386把执行全部指令的管态分为三个特权级,再加之只能执行非特权指令的目态,这四级不同的机器状态,按照系统处理器工作状态这四级不同的机器状态也被划分管态和目态,这也完全符合处理器的工作状态。

2.6 什么是程序状态字?主要包括什么内容?答:如何知道处理器当前处于什么工作状态,它能否执行特权指令,以及处理器何以知道它下次要执行哪条指令呢?为了解决这些问题,所有的计算机都有若干的特殊寄存器,如用一个专门的寄存器来指示一条要执行的指令称程序计数器PC,同时还有一个专门的寄存器用来指示处理器状态的,称为程序状态字PSW。

主要内容包括所谓处理器的状态通常包括条件码--反映指令执行后的结果特征;中断屏蔽码--指出是否允许中断,有些机器如PDP-11使用中断优先级;CPU的工作状态--管态还是目态,用来说明当前在CPU上执行的是操作系统还是一般用户,从而决定其是否可以使用特权指令或拥有其它的特殊权力。

2.11 CPU如何发现中断事件?发现中断事件后应做什么工作?答:处理器的控制部件中增设一个能检测中断的机构,称为中断扫描机构。

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

若无中断信号,就继续执行下一条指令。

若有中断到来,则中断硬件将该中断触发器内容按规定的编码送入程序状态字PSW的相应位(IBM-PC中是第16~31位),称为中断码。

发现中断事件后应执行相中断处理程序,先由硬件进行如下操作:1、将处理器的程序状态字PSW压入堆栈2、将指令指针IP(相当于程序代码段落的段内相对地址)和程序代码段基地址寄存器CS的内容压入堆栈,以保存被子中断程序的返回地址。

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

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

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

计算机操作系统课后习题答案第四版计算机操作系统课后习题答案(第四版)计算机操作系统是计算机系统中至关重要的组成部分,它负责管理和控制计算机的硬件和软件资源,为用户提供一个方便、高效、可靠的工作环境。

下面是对计算机操作系统第四版课后习题的答案解析。

一、操作系统的概念1、什么是操作系统?它的主要功能有哪些?操作系统是管理计算机硬件与软件资源的程序,是计算机系统的内核与基石。

它的主要功能包括处理机管理、存储器管理、设备管理、文件管理和用户接口管理等。

处理机管理负责合理分配和调度 CPU 资源,提高 CPU 利用率;存储器管理负责管理内存空间的分配、回收和保护;设备管理负责对外部设备进行有效管理和控制;文件管理负责对文件的存储、检索、共享和保护;用户接口管理则为用户提供了方便的操作界面。

2、操作系统有哪些分类?操作系统可以按照不同的标准进行分类。

按照用户数量,可分为单用户操作系统和多用户操作系统;按照任务数,可分为单任务操作系统和多任务操作系统;按照系统功能,可分为批处理操作系统、分时操作系统、实时操作系统、网络操作系统和分布式操作系统等。

1、什么是进程?进程和程序有什么区别?进程是程序在一个数据集合上的一次执行过程,是系统进行资源分配和调度的基本单位。

进程与程序的区别在于:程序是静态的指令集合,而进程是动态的执行过程;程序可以长期保存,进程具有生命周期;进程具有并发性,而程序没有;进程由程序、数据和进程控制块(PCB)组成。

2、进程的三种基本状态是什么?它们之间是如何转换的?进程的三种基本状态是就绪状态、执行状态和阻塞状态。

当进程已获得除CPU 以外的所有必要资源,只要再获得CPU 便可立即执行时,处于就绪状态;当进程正在 CPU 上运行时,处于执行状态;当进程因等待某一事件而暂时无法继续执行时,处于阻塞状态。

就绪状态到执行状态是通过进程调度实现的;执行状态到就绪状态是时间片用完或出现更高优先级的进程;执行状态到阻塞状态是进程因等待某事件而主动放弃 CPU;阻塞状态到就绪状态是等待的事件发生。

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

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

第三章死锁作业答案1,3,9,11,13,14, 161.什么是死锁?试举出一个生活中发生死锁的例子。

参考答案:所谓死锁,是指在一个进程集合中的每个进程都在等待仅由该集合中的另一个进程才能引发的事件而无限期地僵持下去的局面。

(也可以是:多个进程因竞争资源而造成的一种僵局,若无外力作用这些进程都将永远不能再向前推进。

)举例:1)书中例子“两辆汽车过窄桥发生冲突”2)公共汽车到站,车上的人要下车,车下的人要上车,挤在车门口。

结果是车上的人下不来,车下的人上不去。

3. 发生死锁的四个必要条件是什么?参考答案:发生死锁的四个必要条件是:互斥条件、占有且等待条件、不可抢占条件和循环等待条件。

9. 设想有一条带闸门的运河,其上有两座吊桥,它们在一条公路上,运河和公路的交通都是单方向的。

河上的交通工具是轮船。

当轮船距A桥100m时就鸣笛警告,若桥上无车辆,吊桥就吊起,直至轮船尾部过桥为止。

对吊桥B也做同样处理。

设轮船的长度为200m。

车辆和轮船任意前进时,是否会发生死锁?若会,说明理由。

怎样发现?并请提出一种防止死锁的办法。

参考答案:会产生死锁。

当轮船距A桥100m时鸣笛警告,此时若桥上无车辆,吊桥就吊起,但是B桥上有车辆,而且由于A桥吊起,车辆无法前进,B桥上的车辆无法下桥。

于是,轮船和车辆都不能前进,造成死锁现象。

一种防止死锁的办法是:当轮船距A桥100m时就鸣笛警告,车辆不能再上B桥。

当B桥上无车辆时,就吊起B 桥;然后,当A桥上无车辆,则吊起A桥。

轮船通过A桥和B桥后,两个吊桥放下,车辆可以通行。

(该方法相当于资源有序分配,也可以采用资源预分配策略,即同时吊起A、B两桥的方法,资源利用率相对较低。

)11. 死锁和“饥饿”之间的主要差别是什么?参考答案:①处于死锁状态的进程都占有一定的资源,而处于饥饿状态的进程永远都得不到所申请的资源②死锁是一种僵局,在无外力干预下,处于死锁状态的全部进程都不能前进,即它们都处于阻塞态,可能造成整个系统瘫痪;而出现饥饿时系统照常运行,只是某个或某几个进程永远也不能得到所需的全部服务③造成死锁的根本原因是资源有限且使用不当;而造成饥饿的原因是资源分配策略或调度策略不合适,如果采用先来先服务的资源分配策略就可以避免饥饿。

进程管理习题课参考答案

进程管理习题课参考答案

一、判断题正确的答案有:3、9、16、24、25、29、31、32、40、41、47、48、49。

二、填空题1、x>5(或x>=6)2、M<=4三、简答题1、答:多道:计算机内存中同时存放几道相对独立的程序。

宏观上并行:同时进入系统的几道程序都处于运行过程中,但都未运行完毕。

微观上串行:各道程序轮流的使用CPU,交替执行。

2、答:线程是在进程内用于调度和占有处理机的基本单位,它由线程控制表、存储线程上下文的用户栈以及核心栈组成。

进程是程序的一次动态执行过程,它也是系统资源分配的基本单位,它能和其他进程并发执行。

线程与进程的主要区别:进程是资源管理的基本单位,线程只是处理机调度的基本单位。

进程进行处理机切换和调度时间较长,而线程进行处理机切换和调度时间较短,不发生资源的变化。

线程和进程一样,都有自己的状态,也有相应的同步机制,不过由于线程没有单独的数据和程序空间,因此线程没有挂起状态。

进程的调度、同步机制大多数由操作系统内核完成,而线程的控制既可以由操作系统内核进行,也可以由用户控制进行。

3、假如生产者先执行P(s)操作,获得了对缓冲区的使用权,而此时缓冲区是满的,即在执行P(empty)时发生阻塞,无法向缓冲区存数。

因它占有了缓冲区的使用权,其他生产者和消费者进程无法访问缓冲区,因此产生了死锁。

4、若干进程访问一个不可共享的资源,这些资源称为临界资源。

使用临界资源的那一段程序称为临界区。

四、解答题1、答(1)因为S的当前值是-3,因此因为S处于阻塞状态的进程有3个;(2)因为每进行一次P(S)操作,S的值都减1,每执行1次V操作S的值加1,故信号量的初值为-3+5-2=0;2、设4个信号量:mux=1 (实现六个进程的互斥访问缓冲区)empty=2; (P1,P2进程可用的缓冲区数目)full1=0; (进程P1送往缓冲区的信息);full2=0; (进程P2送往缓冲区的信息);P1: P(empty);P (mux);WriteMessage( );V(mux);V(full1);P2: P(empty);P (mux);WriteMessage( );V(mux);V(full2);P11与P12:P(full1);P(mux);ReadMessage( );V(mux);V(empty);P21与P22:P(full2);P(mux);ReadMessage( );V(mux);V(empty);3、1)共需设置N个学生进程,1个教师进程2)信号量:mutex=1;in=out=0;wait=0;Student[i]{ P(mutex)进入考场V(mutex)V(in);P(wait)答卷子V(out);}Teacher{ for i=1 to NP(in);发卷子for i=1 to NV(wait);等待学生们交卷;for i=1 to NP(out);收齐卷子,离开考场}4、安全状态P1-> P3-> P4-> P0-> P2 (答案不唯一)5、P、V操作实现程序如下:student:=0;computer:=2m;enter:=0;finish:=0;test(i):=0;parbeginStudent i: BeginV(student); /*表示有学生到达,通知gateguard进程*/P(enter); /*学生是否可进入*/上机实习;V(finish); /*实习结束,通知教师,有需要检查的学生*/P(test(i)); /*等待教师检查完毕*/V(computer); /*释放计算机资源}End;.Teacher:BeginrepeatP(finish); /*是否有需要检查的学生,等待实习完成*/P(finish); /*是否有需要检查的学生,等待实习完成*/选出可检查的第i组学生;检查第i组学生实习结果;V(test(i)); /*检查完成*/V(test(i)); /*检查完成*/until falseEnd;Gategard:Beginrepeat.P(student); /*等待学生到达*/P(student); /*等待另一学生到达*/P(computer); /*是否有可用的计算机*/P(computer); /*是否有可用的计算机*/分配计算机;V(enter); /*设置学生1可进入标志*/V(enter); /*设置学生2可进入标志*/untile falseEnd;Parend;。

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

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

操作系统第四版课后习题答案操作系统第四版课后习题答案在学习操作系统的过程中,课后习题是巩固知识的重要环节。

本文将为大家提供操作系统第四版课后习题的答案,帮助大家更好地理解和掌握相关知识。

第一章引论1. 操作系统的定义是什么?答:操作系统是计算机系统中的一个软件,它管理和控制计算机硬件资源,为用户和应用程序提供一个简单、一致的接口。

2. 操作系统的主要功能有哪些?答:操作系统的主要功能包括进程管理、内存管理、文件系统管理、设备管理和用户接口等。

3. 解释并区分多道程序和多任务操作系统。

答:多道程序操作系统是指能够同时运行多个程序的操作系统,通过时间片轮转的方式实现程序的并发执行。

而多任务操作系统是指能够同时运行多个任务的操作系统,任务之间可以是并行执行的。

第二章进程管理1. 进程和程序的区别是什么?答:进程是程序在执行过程中的实体,包括程序计数器、寄存器和栈等,而程序是存储在磁盘上的可执行文件。

2. 什么是进程控制块(PCB)?答:进程控制块是操作系统中用来管理和控制进程的数据结构,包括进程的标识符、状态、优先级、程序计数器和寄存器等信息。

3. 进程的状态有哪些?答:进程的状态包括就绪状态、运行状态和阻塞状态。

第三章内存管理1. 什么是虚拟内存?答:虚拟内存是一种扩展内存的技术,将磁盘空间作为辅助内存来扩展物理内存的容量。

2. 什么是页面置换算法?答:页面置换算法是用于虚拟内存管理中的一种算法,当物理内存不足时,根据一定的策略选择一个页面将其从内存中置换出去,以便为新的页面腾出空间。

3. 什么是内存分配算法?答:内存分配算法是用于管理和分配内存的一种算法,包括连续分配、非连续分配和分段分页等。

第四章文件系统管理1. 文件系统的作用是什么?答:文件系统是操作系统中用于管理和组织文件的一种机制,它提供了对文件的创建、读写、删除等操作。

2. 什么是文件控制块(FCB)?答:文件控制块是操作系统中用于管理文件的数据结构,包括文件的属性、位置、大小和权限等信息。

ch3进程管理1(3.1-3.3)

ch3进程管理1(3.1-3.3)
25
PCB的作用:
当系统创建一个新进程时,就为它建立
了一个PCB,进程结束时又回收其PCB, 进程于是也随之消亡。 PCB可以被操作系统中的多个模块读或 修改,如被调度程序、资源分配程序、 中断处理程序以及监督和分析程序等读 或修改。 因为PCB经常被系统访问,故PCB应常驻 内存。存放在操作系统中专门开辟的 PCB区内。
17
进程的特征
独立性:独立获得资源和调度的基本
单位 异步性:各进程按各自独立的不可预 知的速度向前推进 结构特征:由程序段 、数据段、进程 控制块三部分组成
18
进程和程序的区别: 程序是指令的有序集合,其本身没有任 何运行的含义,是一个静态的概念。而 进程是程序在处理机上的一次执行过程, 它是一个动态的概念。 程序可以作为一种软件资料长期存在, 而进程是有一定生命期的。程序是永久 的,进程是暂时的。 进程更能真实地描述并发,而程序不能
35
•进程上下文切换过程一般包含 3个部分, 并涉及到3个进程。即第l部分为保存被 切换进程的正文部分 (或当前状态)至有 关存储区。第 2 部分是操作系统中有关 调度和资源分配程序执行,选取新的进 程。第 3 部分则是将被选中进程的原来 被保存的正文部分从有关存储区中取出, 并送至有关寄存器与堆栈中,激活被选 中进程执行。
36
3.2 进程状态及其转换
1.进程的三种基本状态
进程执行时的间断性决定了进程在创建 后到执行完这个生命周期中具有多种 状态。运行中的进程具有三种基本状 态:就绪、执行、阻塞
从理论角度看,是对正在运行的程
序过程的抽象; 从实现角度看,是一种数据结构, 目的在于清晰地刻划动态系统的内 在规律,有效管理和调度进入计算 机系统运行的程序

课后习题参考答案-OS

课后习题参考答案-OS

课后习题参考答案-OS第三章操作系统结构3.1 操作系统关于进程管理的五个主要活动是什么?答:(1)创建和删除用户进程和系统进程;(2)暂停和重启进程;(3)提供进程同步机制;(4)提供进程通信机制;(5)提供死锁处理机制。

3.2 操作系统关于内存管理的三个主要活动是什么?答:(1)记录内存的哪部分正在被使用及被谁使用;(2)当内存空间可用时,决定哪些进程可以装入内存;(3)根据需要分配和释放内存空间。

3.3 操作系统关于二级存储管理的三个主要活动是什么?答:(1)空闲空间管理;(2)存储空间分配;(3)硬盘调度。

3.4 操作系统关于文件管理的五个主要活动是什么?答:(1)创建和删除文件;(2)创建和删除目录;(3)提供操作文件和目录的原语;(4)将文件映射到二级存储器(辅存)上;(5)在稳定(非易失的)存储媒介上备份文件。

3.5 命令解释器的用途是什么?为什么它经常与内核是分开的?答:(1)命令解释器的用途:从用户或命令文件读入命令并执行它,通常将其变成一个或多个系统调用它们。

(2)它通常不是内核的一部分,因为命令解释是会改变的,不是固定的。

3.7 系统调用的用途是什么?答:(1)系统调用提供了进程与操作系统之间的接口,即允许用户级进程要求操作系统的服务。

3.10 系统程序的用途是什么?答:(1)系统程序可以被认为是有用的系统调用的捆绑。

它们给用户提供了基本功能以使用户不需要写自己的程序来解决共同的问题。

4.2 论述短期、中期和长期调度之间的区别。

答:(1)短期调度:从就绪可执行的进程中选择进程,并为其中之一分配CPU。

(2)中期调度:特别用于分时系统中作为中等程度调度程序。

能将进程移出内存(并移出对CPU的激烈竞争),因此降低多道程序设计的程度。

之后进程能被重新调入内存,并从中断处继续执行。

(3)长期调度:从缓冲池中选择进程,并将它们装入内存以执行。

它们的主要区别是执行的频率。

短期调度程序必须频繁地为CPU 选择新进程执行;长期调度程序执行并不频繁,用于控制多道程序设计的程度,即内存中的进程数量;中期调度程序介于两者之间。

操作系统原理与实践教程(第三版)第3章习题答案

操作系统原理与实践教程(第三版)第3章习题答案

第3章处理器管理(1) 为什么程序并发执行会产生间断性特征,并失去封闭性和可再现性?解:之所以产生间断性特征是因为多个程序在并发执行时,需要为了完成同一项任务而相互合作,并发执行的程序间的这种相互制约导致了“暂停—执行—暂停”的间断性运行规律。

失去封闭性是因为程序在并发执行时,多个程序需要共享系统中的多种资源。

所以,这些资源的状态是由多个程序改变的,从而使程序的运行失去了封闭性。

失去可再现性是因为程序在并发执行时,由于失去了封闭性,从而导致其失去可再现性。

(2) 什么是进程?为什么要在操作系统中引入进程?解:进程是可并发执行且具有独立功能的程序在一个数据集合上的运行过程,它是操作系统进行资源分配和调度的基本单位。

“进程”概念是人们为了使程序能够并发执行,并且能对并发的程序加以描述和控制而引入的。

(3) 试从并发性、独立性、动态性上比较程序和进程的不同。

解:●并发性是进程的重要特征,同时也是OS 的重要特征。

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

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

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

●动态性是进程最基本的特性,可表现为由创建而产生,由调度而执行,因得不到资源而暂停执行,以及由撤销而消亡,因而进程有一定的生命期;而程序只是一组有序指令的集合,是静态实体。

(4) 什么是PCB?它具有什么作用?为什么说PCB是进程存在的唯一标识?解:进程控制块(Process Control Block,PCB)是操作系统为了管理进程而设置的一个专门的数据结构,用它来记录进程的外部特征,描述进程的运动变化过程。

它的作用是使一个在多道程序环境下不能独立运行的程序(含数据),成为一个能独立运行的基本单位,一个能和其它进程并发执行的进程.因为系统利用PCB来控制和管理进程,所以PCB是系统感知进程存在的唯一标志。

第3章 计算机操作系统答案 进程管理

第3章 计算机操作系统答案  进程管理

第三章进程管理一、选择题:1、下面过于程序的描述,正确的是()A. 程序执行的最终结果受到外界因素的影响,跟初始条件无关B. 程序执行的最终结果跟速度有关C. 程序是按前后次序相继地进行计算机操作序列集合,是一个静态的概念;D. 程序只能通过顺序执行2、程序的顺序执行有以下特点()A. 顺序性、封闭性、独立性B. 顺序性、封闭性、可再现性C. 顺序性、封闭性、随机性D. 顺序性、随机性、独立性3、程序A、B共享变量N,执行次A都要操作变量N,N=N+1,每执行次B都要print(N),N=0,初始值为N=0。

若执行顺序为先A后B,其结果为()A. 1 1 0B. 0 1 0C. 1 0 1D. 0 0 14、如上题13所述,执行先B后A,其结果为()A. 1 1 0B. 0 1 0C. 1 0 1D. 0 0 15、如上题所述,执行为A在B中间,起结果为.()A. 1 1 0B. 0 1 0C. 1 0 1D. 0 1 16、下面关于进程描述完全的是()A. 进程是可以并发执行的计算部分;B. 进程是一个独立的调度活动.C. 进程是一个抽象实体.D. 进程是并发执行的过程中分配和管理资源的基本单位。

7、现代操作系统的特点()A. 程序的并发执行;B. 系统所拥有的资源被共享;C. 用户随机地使用系统资源;D. 以上三者都是。

8、进程和程序的区别是()A. 进程是一个动态的概念,而程序则是一个静态的概念;B. 进程具有并发性而程序没有;C. 进程是一个独立的调度活动.D. A和B都正确。

9、多道程序系统中的程序执行的特点为()A. 独立性、随机性、资源共享性;B. 顺序性、封闭性、可再现性;C. 顺序性、封闭性、随机性;D. 顺序性、随机性、独立性;10、描述信息所包括的下列描述不正确的是()。

A. 进程名B. 用户名C. 家族关系D. 用户资源11、现代oc的3个特点不包括()。

A. 程序并发执行B. 进程优先级C. 系统所拥有的资源共享D. 用户随即使用系统资源12、与进程优先级有关的PCB表项不包括()。

第3章 计算机操作系统答案 进程管理试题答案

第3章 计算机操作系统答案 进程管理试题答案
答案
C
B
B
A
C
C
B
A
D
B
题号
91
92
93
94
95
96
97
98
99
答案
B
C
D
C
D
B
A
A
C
二、填空题参考答案
题号
答案
1
前后次序相继、静态
2
顺序执行、并发执行
3
顺序性、可再Leabharlann 性4资源共享性5
提高资源利用率
6
资源的有限性
7
独立的、异步的
8
程序并发执行、系统所拥有的资源被共享、用户随即地使用系统的资源
9
并发执行、动态执行
49
信号量、中断
50
S<=0
51
进程间的同步
52
合作进程
53
消息、事件
54
信号量
55
私有信号量
56
公用信号量
57
P,V原语
58
直接制约
59
生产者-消费者
60
硬件、软件
61
消费者、生产者
62
任意次序、死锁
63
直接制约
64
开始执行、等待状态
65
邮箱头
66
消息
67
服务进程
68
互斥执行
69
平等
70
控制信息的传送、大批量数据传送
35
资源、PCB结构
36
就绪、执行
37
阻塞、唤醒
38
中断处理机、保存现场
39
系统进程、事件发生进程

第三章部分习题答案

第三章部分习题答案

第三章部分习题答案第三章部分习题答案1、⾼级调度与低级调度的主要任务是什么?为什么要引⼊中级调度?答:⾼级调度主要任务是根据某种算法,把外存上处于后备队列中的那些作业调⼊内存,也就是说⾼级调度的调度对象是作业。

低级调度主要任务是:决定就绪队列中的哪个进程应获得处理机,然后再由分派程序执⾏把处理机分配给该进程的具体操作。

中级调度的任务:使那些暂时不能运⾏的进程不再占⽤宝贵的内存资源,⽽将它们调⾄外存上去等待,把此时的进程状态称为就绪驻外存状态或挂起状态。

当这些进程重⼜具备运⾏条件且内存⼜稍有空闲时,由中级调度来决定把外存上的那些⼜具备运⾏条件的就绪进程重新调⼊内存,并修改其状态为就绪状态,挂在就绪队列上等待进程调度。

引⼊中级调度的主要⽬的是为了提⾼内存利⽤率和系统吞吐量。

2、何谓作业、作业步和作业流?答:作业(Job):作业是⼀个⽐程序更为⼴泛的概念,它不仅包含了通常的程序和数据,⽽且还应配有⼀份作业说明书,系统根据该说明书来对程序的运⾏进⾏控制。

作业步(Job Step)。

通常,在作业运⾏期间,每个作业都必须经过若⼲个相对独⽴,⼜相互关联的顺序加⼯步骤才能得到结果,我们把其中的每⼀个加⼯步骤称为⼀个作业步,各作业步之间存在着相互联系,往往是把上⼀个作业步的输出作为下⼀个作业步的输⼊。

作业流:若⼲个作业进⼊系统后,被依次存放在外存上,这便形成了输⼊的作业流;在操作系统的控制下,逐个作业进⾏处理,于是便形成了处理作业流。

5、试说明低级调度的主要功能。

答:(1) 保存处理机的现场信息。

(2) 按某种算法选取进程。

(3) 把处理器分配给进程。

6、在抢占调度⽅式中,抢占的原则是什么?答:(1) 优先权原则。

(2) 短作业(进程)优先原则。

(3) 时间⽚原则。

7、在选择调度⽅式和调度算法时,应遵循的准则是什么?答:⾯向⽤户应遵循的准则是:(1) 周转时间短。

(2) 响应时间快。

(3) 截⽌时间的保证。

(4) 优先权准则。

操作系统第三版教材部分习题参考答案

操作系统第三版教材部分习题参考答案

第3章进程管理三、实训问题参考答案⑥cx程序运行时,一个父进程和两个子进程并发运行,所以多次执行的结果并不总是一样。

⑦系统中一个父进程和一个子进程并发运行,所以多次执行的结果并不总是一样。

如果注释“/*父进程line1*/”所在行和“/*父进程line2*/”所在行交换位置,程序多次运行的结果会相同,因为wait()函数的功能是:主进程暂停执行,等待子进程结束再继续执行主进程。

习题10. 答案:A: while(TRUE){ 生产消息;P(Sab);P(Sac);向缓冲区送消息;V(Sb);V(Sc); }B: while(TRUE){ P(Sb);从缓冲区取消息;V(Sab) }C: whe(TRUE){ P(Sc);从缓冲区取消息;V(Sac) }13. 答案:设置一个信号量S,代表机房内空位数目,初值为40,用来控制进入机房的上机进程数不超过40;再设置互斥信号量mutex,代表机房门这一临界资源,其初值为1,以实现多个上机进程对其互斥访问。

P(S);P(mutex);从机房门进入V(mutex);上机P(mutex);从机房门离开V(mutex);V(S);18. 答案:(1)mutex是互斥信号量,初值为1,表示开始时无进程在临界区。

SP是同步信号量,初值为n,表示开始时有n个空的缓冲区。

SC是同步信号量,初值为0,表示开始时有0个满的缓冲区。

(2)①处填 P(mutex)②处填 V(SC) ③处填 V(mutex) ④处填 V(SP)19. 死锁是计算机系统中多道程序并发执行时,两个或两个以上的进程由于竞争系统资源,而出现的一种互相等待的现象。

不是所有的进程都停止工作。

死锁的系统中并不是所有的资源都分配完毕。

20. 目前解决死锁的基本方法有以下三种:①预防死锁②避免死锁③检测和解除死锁22. 不会。

假定该系统死锁,那么就隐含其中的每一个进程已占有一个资源并正在等待另一个资源。

由于该系统只有3个进程且有4个资源,因此必有一个进程能获得其中的2个资源。

操作系统概念课后习题答案

操作系统概念课后习题答案

操作系统概念课后习题答案操作系统概念课后习题答案第一章:引论⒈操作系统的功能和目标是什么?答:操作系统的功能包括了进程管理、内存管理、文件系统管理、设备管理等。

操作系统的目标是提高计算机系统的资源利用率,提供简单易用的用户界面,保证计算机系统的安全和稳定性。

⒉什么是并发性?并行性?有什么区别?答:并发性是指计算机系统中存在多个独立的任务同时执行的能力。

并行性是指系统中同时执行多个任务的能力。

并行性强调多个任务的同时进行,而并发性强调任务的独立性。

⒊什么是中断?有什么作用?答:中断是指计算机执行过程中出现的一种特殊事件,用于打断正在执行的程序,转而执行中断处理程序。

中断的作用是能够及时响应输入/输出设备的请求以及处理发生的异常情况。

⒋什么是多道程序设计?答:多道程序设计是指将多个程序加载到内存中,并按照一定的调度算法来分时共享处理器和其他资源。

⒌什么是虚拟内存?答:虚拟内存是计算机系统通过借助硬盘空间来扩展内存空间的一种技术。

它将部分物理内存空间映射到磁盘上,使得程序可以访问比实际物理内存更大的地质空间。

第二章:进程管理⒈什么是进程?什么是线程?答:进程是指在操作系统中运行的程序的实例,它包括了程序代码、数据和执行状态等。

线程是进程中的一个执行单元,一个进程可以包含多个线程,它们共享进程的资源。

⒉进程的状态有哪些?请描述每个状态的含义。

答:进程的状态包括了就绪状态、运行状态、阻塞状态。

就绪状态表示进程已经具备运行的条件,等待分配处理器资源。

运行状态表示进程正在执行。

阻塞状态表示进程由于某种原因暂时无法继续执行。

⒊进程调度算法有哪些?请简要描述每个算法的特点。

答:常见的进程调度算法有先来先服务(FCFS)、短作业优先(SJF)、优先级调度、时间片轮转等。

FCFS按照进程的到达顺序进行调度,适用于长作业。

SJF按照进程的执行时间进行调度,适用于短作业。

优先级调度根据进程的优先级进行调度。

时间片轮转将处理器时间分成若干个时间片,每个进程获得一个时间片。

进程管理习题及答案

进程管理习题及答案

进程管理习题答案一.选择题1.在进程管理中,当时进程从阻塞状态变为就绪状态.A. 进程被进程调度程序选中 B.等待某一事件C.等待的事件发生 D.时间片用完答:C2.分配到必要的资源并获得处理机时的进程状态是。

A.就绪状态 B.执行状态C.阻塞状态 D.撤消状态答:B3.P、V操作是。

A.两条低级进程通信原语 B.两组不同的机器指令C.两条系统调用命令 D.两条高级进程通信原语答:A4.对进程的管理和控制使用。

A.指令 B.原语C.信号量 D.信箱通信答:B5.进程的并发执行是指若干个进程。

A.同时执行 B.在执行的时间上是重叠的C.在执行的时间上是不可重叠的 D.共享系统资源答:B6.若P、V操作的信号量S初值为2,当前值为-1,则表示有等待进程。

A.0个 B.1个 C .2个 D.3个答:B7.进程的三个基本状态在一定条件下可以相互转化,进程由就绪状态变为运行状态的条件是①;由运行状态变为阻塞状态的条件是②。

A.时间片用完 B.等待某事件发生C.等待的某事件己发生 D.被进程调度程序选中答,①D ②B8.下列的进程状态变化中,变化是不可能发生的。

A.运行一就绪 B.运行一等待C.等待一运行 D.等待一就绪答:C9.一个运行的进程用完了分配给它的时间片后,它的状态变为。

A.就绪 B.等待C.运行 D.由用户自己确定答:A10.用P、V操作管理临界区时,信号量的初值应定义为。

A.一1 B.0 C.1 D.任意值答:C11.用V操作唤醒一个等待进程时,被唤醒进程的状态变为.A.等待 B.就绪 C.运行 D.完成答:B12.进程间的同步是指进程间在逻辑上的相互关系。

A.联接 B.制约 C. 继续 D.调用答:B13.是一种只能进行P操作和V操作的特殊变量。

A.调度 B.进程 C.同步 D.信号量答:D14.下面对进程的描述中,错误的是。

A.进程是动态的概念 B.进程执行需要处理机C.进程是有生命期的 D.进程是指令的集合答:D15.下面的叙述中正确的是。

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

进程管理习题1现代操作系统中为什么要引入“进程”概念? 它与程序有什么区别?答:之所以要引入进程的概念,是因为在一些可以并发的程序段之间,存在着某种相互制约的关系,每个程序段的执行不仅要受到其它程序执行的制约,而且还要动态地依赖系统资源的分配情况,因此每个可以并发执行的程序段就会因外界条件的限制而不能运行,被迫处于阻塞状态。

仅用程序的概念无法表示程序的走走停停以及程序运行过程中对资源的竞争现象,因此需要采用一种动态的概念描述并发程序这种走走停停的现象,这就产生了进程的概念。

进程和程序的区别:(1)进程是程序的执行过程,是动态的过程,属于一种动态概念。

程序是一组有序静态指令和数据的集合,用来指示处理机的操作,是一种静态概念。

(2)从结构上看,每个进程实体是由程序段和相应的数据段两部分构成,并且进程结构中还要包含PCB,即进程控制块。

(3)一个进程可以涉及到一个或几个程序的执行;反之,同一程序可以对应多个进程,即同一个程序段可以在不同数据集合上运行,可以构成不同的进程。

(4)进程能真实地描述并发执行的过程,而程序仅仅是静态指令堆积的序列。

(5)进程有可创建其他进程的功能,而一般的程序不具有创建其它程序的功能。

(6)每一个程序都是在一个进程现场中运行的。

2叙述进程的并发性和制约性。

答:并发性是进程的重要特征。

即多道程序中多个进程同时向前推进的过程,没个进程总是与其它进程并发地执行的。

进程的制约性是指一个进程的运行受到另一进程的制约。

比如有的进程可能正在等待另一进程的计算结果而无法运行,或者进程所需的资源被别的进程占有而无法运行。

3进程的含义是什么? 如何构造和描述进程?答:进程是程序的一次执行。

进程由“进程控制块+程序+数据”构成,用进程控制块描述进程。

4有三个并发进程,R负责从输入设备读入信息并传送给M,M将信息加工并传送给P,P将打印输出,写出下列条件下的并发程序。

(1) 双缓冲区,每个区大小为K。

(2) 单缓冲区,其大小为K。

答:(1)双缓冲区,每个区大小为K,信号量初值如下:mutexR=mutexP=1;emptyR=emptyP=k;fullR= fullP=0;变量的初值如下:inR=outR=inP=outP=0;用类Pascal编写程序如下:varmutexR,mutexP,emptyR,fullR,emptyP,fullP: semaphere; inR,outR,inP,outP: integer;buffer: array 0..k-1 of item;bufferP: array 0..k-1 of item;procedure Rbeginwhile true dobegin输入数据data1;P (emptyR);P (mutexR);bufferR(inR):=data1;inR:=(inR+1) mod (k);V(mutexR);V(fullR);endend;procedure Mbeginwhile true dobeginP(fullR);P(mutexR);data2:=bufferR(outR);outR:=(outR+1)mod (k);V(mutexR);V(emptyR);对data2进行加工;P(emptyP);P(mutexP);bufferP(inP):=data2;inP:=(inP+1)mod (k);V(mutexP);V(fullP);endend;procedure P:beginwhile true dobeginP(fullP);P(mutexP)data3:=bufferP(outP);outP:=(outP+1)mod(k);V(mutexP);V(emptyP);打印 data3;endend;beginseminitinal(mutexR.v,1;mutexP.v,1;emptyR.v,k;fullR.v,0;em ptyP.v,k;fullP.v,0);inR:=0;outR:=0;inP:=0;outP:=0;cobeginR;M;P;coendend.(2)单缓冲区,大小为kvarempty,full,ok,mutex : semaphere;inR,outR,inP,outP : integer;buffer : array 0..k-1 of item;procedure R:beginwhile true dobegin输入数据 data1;P(empty);P(mutex);buffer(inR):=data1;inR:=(inR+1) mod (k);V(mutex);V(full)endend;procedure M:beginwhile ture dobeginP(full);P(mutex);data2:==buffer(outR);outR:=(outR+1) mod (k);V(mutex);对data2 加工;P(mutex);buffer(inP):=data2;inP:=(inP+1)mod (k);V(mutex);V(ok);endend;proedure P:beginwhile ture dobeginP(ok);P(mutex);data3:=buffer(outP);outP:=(outP+1) mod(k);V(mutex);V(empty);打印data3;end;endbeginseminitial(empty.v,k;full.v,0;ok.v,0;mutex.v,1);inR:=0;outR:=0;inP:=0;outP:=0;cobeginR;M;P;coendend.5 在生产者与消费者问题的算法中,交换两个V操作的次序会有什么结果?交换两P 操作的次序呢? 说明理由。

答:交换两P操作的次序有可能造成死锁。

例如,当无空缓冲区时,如果此时生产者先做互斥操作,即:P(mutex),然后才做同步操作P(empty),由于此时empty=-1造成生产者被阻塞。

当消费者执行到互斥操作P(mutex)时,由于生产者已执行过P(mutex)并未作释放,所以此时mutex=-1,造成消费者也被阻塞,生产者等消费者释放空缓冲区,而消费者则等待生产者释放临界资源的使用权,所以两个进程都无法向前推进而造成死锁。

交换两个V操作的次序不会发生死锁。

6 设有三个进程A、B、C,其中A与B构成一对生产者与消费者(A为生产者,B为消费者),共享一个由n个缓冲块组成的缓冲池;B与C也构成一对生产者与消费者(此时B 为生产者,C为消费者),共享另一个由m个缓冲块组成的缓冲池。

用P、V操作描述它们之间的同步关系。

答:varmutexA,emptyA,fullA,mutexC,emptyC,fullC : semaphere; i,j,a,b : integer;bufferA : array 0..n-1 of itembufferC : array 0..m-1 of item;procedure produceA:生产者进程Abeginwhile ture dobeginProduce next product;P(emptyA);P(mutexA);bufferA(i) :=products;i:=(i+1) mod(n) ;V(mutexA);V(fullA)endendprocedure consumer_procedurerB: 消费者和生产者进程B beginwhile ture dobeginP(fullA);P(mutexA);Goods:=buffer(j);j:=(j+1)mod(n);V(mutexA);V(emptyA);Consume goods and Produce next product C;P(emptyC);P(mutexC);BufferC(a):=product C;a:=(a+1) mod(m);V(mutexC);V(fullC)endend;procedure consumerC ; 消费者C进程beginwhile ture dobeginP(fullC);P(mutexC);Goods:=bufferC(b);b:=(b+1) mod(m);V(mutexC);V(emptyC);Consume product;endend;beginSeminitsal(mutexA.v,1;mutexC.v,1;emptyA.v,n;emptyC.v,m;fullA.V,0;fullC.V,0);i:=0;j:=0;a:=0;b:=0;cobeginproduce Aconsumer_procedurerB;consumerCcoendend.7 有一阅览室,共有100个座位。

读者进入时必须先在一张登记表上登记,该表为每一座位列一表目,包括座号和读者姓名。

读者离开时要消掉登记内容。

试用P、V操作描述读者进程的同步结构。

答:varmutex : semaphere;信号量,用于互斥full : semaphere; 信号量,用于同步table : array 0..n-1 of item; 登记表procedure reader; 读者进程beginP(full);P(mutex);Register_name(table);V(mutex);Reading;P(mutex);Delet_name(table);V(mutex);V(full)end;beginseminitsal(mutex.v,1; full.v,100); 初始化cobeginreader;reader;...coendend.8.引入线程的目的是什么?答:引入线程的目的是提高程序执行的并行度。

9 引入管程的目的是什么?答:引入管程的目的把分散的临界区集中起来管理,为每个可共享的资源设立一个专门的机构来统一管理各进程对该共享资源的访问。

这样使互斥操作更安全,既便于系统管理共享资源,又能保证互斥访问。

10 用管程实现读者与写者关系。

管程部分描述如下:monitor rw;condition wrt;var readcount: integer;procedure entry read _start( );beginreadcount:=readcount+1;end;procedure entry read_finish( );beginreadcount:=readcount-1;if readcount=0 then singal(wrt)end;procedure entry write( );beginif readcount>0 then wait(wrt);perform writing;endbeginreadcount:= 0endend;主程序部分:procedure writter:beginrepeatrw.write( );until false;endprocedure reader:beginrepeatrw.read_start( );perform reading;rw.read_finish( );until false;endcobeginreader;writter;coend.11 何谓进程通信?答:进程通信是指进程之间的信息交换。

相关文档
最新文档