(完整版)操作系统第二章课后答案
操作系统第二章课后答案
第二章进程管理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、什么是系统调用?系统调用与一般过程调用的区别是什么?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. 进程是指正在执行的程序的实例。
进程控制块(PCB)是操作系统用来管理进程的数据结构,包含进程的状态、程序计数器、寄存器等信息。
3. 多道程序设计是指在内存中同时存放多个程序,通过时间片轮转等调度算法,使得多个程序交替执行。
4. 异步输入输出是指程序执行期间,可以进行输入输出操作,而不需要等待输入输出完成。
第二章:进程管理1. 进程调度的目标包括提高系统吞吐量、减少响应时间、提高公平性等。
2. 进程调度算法包括先来先服务(FCFS)、最短作业优先(SJF)、优先级调度、时间片轮转等。
3. 饥饿是指某个进程长时间得不到执行的情况,可以通过调整优先级或引入抢占机制来解决。
4. 死锁是指多个进程因为争夺资源而陷入无限等待的状态,可以通过资源预分配、避免环路等方式来避免死锁。
第三章:内存管理1. 内存管理的主要任务包括内存分配、内存保护、地址转换等。
2. 连续内存分配包括固定分区分配、可变分区分配和动态分区分配。
3. 分页和分段是常见的非连续内存分配方式,分页将进程的地址空间划分为固定大小的页,分段将进程的地址空间划分为逻辑段。
4. 页面置换算法包括最佳置换算法、先进先出(FIFO)算法、最近最久未使用(LRU)算法等。
第四章:文件系统管理1. 文件是操作系统中用来存储和组织数据的逻辑单位,可以是文本文件、图像文件、音频文件等。
2. 文件系统的主要功能包括文件的创建、删除、读取、写入等操作。
3. 文件系统的组织方式包括层次目录结构、索引结构、位图结构等。
计算机操作系统(第四版)课后习题答案第二章
第二章1.什么是前趋图?为什么要引入前趋图?答:前趋图(PrecedenceGraph)是一个有向无循环图,记为DAG(DirectedAcyclicGraph),用于描述进程之间执行的前后关系。
2.画出下面四条诧句的前趋图:S1=a:=x+y;S2=b:=z+1;S3=c:=a-b;S4=w:=c+1;答:其前趋图为:3.4.5.6.a.未建立任何进程的程序,都不能作为一个独立的单位来运行。
7.试说明PCB的作用?为什么说PCB是进程存在的唯一标志?a.PCB是进程实体的一部分,是操作系统中最重要的记录型数据结构。
PCB中记录了操作系统所需的用于描述进程情况及控制进程运行所需的全部信息。
因而它的作用是使一个在多道程序环境下不能独立运行的程序(含数据),成为一个能独立运行的基本单位,一个能和其它进程并发执行的进程。
b.在进程的整个生命周期中,系统总是通过其PCB对进程进行控制,系统是根据进程的PCB而不是任何别的什么而感知到该进程的存在的,所以说,PCB是进程存在的唯一标志。
11.试说明进程在三个基本状态之间转换的典型原因。
答:(1)就绪状态→执行状态:进程分配到CPU资源(2)执行状态→就绪状态:时间片用完(3)执行状态→阻塞状态:I/O请求(4)阻塞状态→就绪状态:I/O完成12.为什么要引入挂起状态?该状态有哪些性质?答:引入挂起状态处于五种不同的需要:终端用户需要,父进程需要,操作系统需要,对换需要和负荷调节需要。
处于挂起状态的进程不能接收处理机调度。
10.在3)。
17.在撤销一个进程时所要完成的主要工作是什么?答:(1)根据被终止进程标识符,从PCB集中检索出进程PCB,读出该进程状态。
(2)若被终止进程处于执行状态,立即终止该进程的执行,臵调度标志真,指示该进程被终止后重新调度。
(3)若该进程还有子进程,应将所有子孙进程终止,以防它们成为不可控进程。
(4)将被终止进程拥有的全部资源,归还给父进程,或归还给系统。
计算机操作系统(第四版)课后习题答案第二章
第二章1.什么是前趋图?为什么要引入前趋图?答:前趋图(PrecedenceGraph)是一个有向无循环图,记为DAG(DirectedAcyclicGraph),用于描述进程之间执行的前后关系。
2.画出下面四条诧句的前趋图:S1=a:=x+y;S2=b:=z+1;S3=c:=a-b;S4=w:=c+1;答:其前趋图为:3.4.5.6.a.未建立任何进程的程序,都不能作为一个独立的单位来运行。
7.试说明PCB的作用?为什么说PCB是进程存在的唯一标志?a.PCB是进程实体的一部分,是操作系统中最重要的记录型数据结构。
PCB中记录了操作系统所需的用于描述进程情况及控制进程运行所需的全部信息。
因而它的作用是使一个在多道程序环境下不能独立运行的程序(含数据),成为一个能独立运行的基本单位,一个能和其它进程并发执行的进程。
b.在进程的整个生命周期中,系统总是通过其PCB对进程进行控制,系统是根据进程的PCB而不是任何别的什么而感知到该进程的存在的,所以说,PCB是进程存在的唯一标志。
11.试说明进程在三个基本状态之间转换的典型原因。
答:(1)就绪状态→执行状态:进程分配到CPU资源(2)执行状态→就绪状态:时间片用完(3)执行状态→阻塞状态:I/O请求(4)阻塞状态→就绪状态:I/O完成12.为什么要引入挂起状态?该状态有哪些性质?答:引入挂起状态处于五种不同的需要:终端用户需要,父进程需要,操作系统需要,对换需要和负荷调节需要。
处于挂起状态的进程不能接收处理机调度。
10.在3)。
17.在撤销一个进程时所要完成的主要工作是什么?答:(1)根据被终止进程标识符,从PCB集中检索出进程PCB,读出该进程状态。
(2)若被终止进程处于执行状态,立即终止该进程的执行,臵调度标志真,指示该进程被终止后重新调度。
(3)若该进程还有子进程,应将所有子孙进程终止,以防它们成为不可控进程。
(4)将被终止进程拥有的全部资源,归还给父进程,或归还给系统。
完整版本操作系统第二章作业含答案
第二章作业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.试述线程的特色及其与进度之间的关系。
计算机操作系统课后答案
计算机操作系统课后答案计算机操作系统课后答案第一章:操作系统概述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设计现代OS勺主要⽬标是什么?答:(1)有效性(2)⽅便性(3)可扩充性(4)开放性2. OS勺作⽤可表现在哪⼏个⽅⾯?答:(1)OS乍为⽤户与计算机硬件系统之间的接⼝(2)OS乍为计算机系统资源的管理者(3)O或现了对计算机资源的抽象13. OS有哪⼏⼤特征?其最基本的特征是什么?答:并发性、共享性、虚拟性和异步性四个基本特征;最基本的特征是并发性。
14?处理机管理有哪些主要功能?它们的主要任务是什么?答:处理机管理的主要功能是:进程管理、进程同步、进程通信和处理机调度;进程管理:为作业创建进程,撤销已结束进程,控制进程在运⾏过程中的状态转换。
进程同步:为多个进程(含线程)的运⾏______________________ 进⾏协调。
通信:⽤来实现在相互合作的进程之间的信息交换。
处理机调度:(1 )作业调度。
从后备队⾥按照⼀定的算法,选出若⼲个作业,为他们分配运⾏所需的资源(⾸选是分配内存)。
(2)进程调度:从进程的就绪队列中,按照⼀定算法选出⼀个进程,把处理机分配给它,并设置运⾏现场,使进程投⼊执⾏。
15?内存管理有哪些主要功能?他们的主要任务是什么?北京⽯油化⼯学院信息⼯程学院计算机系3/48《计算机操作系统》习题参考答案余有明与计07和计G09勺同学们编著3/48答:内存管理的主要功能有:内存分配、内存保护、地址映射和内存扩充。
内存分配:为每道程序分配内存。
内存保护:确保每道⽤户程序都只在⾃⼰的内存空间运⾏,彼此互不⼲扰。
地址映射:将地址空间的逻辑地址转换为内存空间与对应的物理地址。
内存扩充:⽤于实现请求调⽤功能,置换功能等。
16?设备管理有哪些主要功能?其主要任务是什么?答:主要功能有:缓冲管理、设备分配和设备处理以及虚拟设备等。
主要任务:完成⽤户提出的I/O请求,为⽤户分配I/O设备;提⾼CPU和I/O设备的利⽤率;提⾼I/O速度;以及⽅便⽤户使⽤I/O设备.17?⽂件管理有哪些主要功能?其主要任务是什么?答:⽂件管理主要功能:⽂件存储空间的管理、⽬录管理、⽂件的读/写管理和保护。
计算机操作系统(第四版)课后习题答案(完整版)
计算机操作系统(第四版)课后习题答案(完整版)第⼀章1.设计现代OS的主要⽬标是什么?答:(1)有效性(2)⽅便性(3)可扩充性(4)开放性2.OS的作⽤可表现在哪⼏个⽅⾯?答:(1)OS作为⽤户与计算机硬件系统之间的接⼝(2)OS作为计算机系统资源的管理者(3)OS实现了对计算机资源的抽象3.为什么说OS实现了对计算机资源的抽象?答:OS⾸先在裸机上覆盖⼀层I/O设备管理软件,实现了对计算机硬件操作的第⼀层次抽象;在第⼀层软件上再覆盖⽂件管理软件,实现了对硬件资源操作的第⼆层次抽象。
OS 通过在计算机硬件上安装多层系统软件,增强了系统功能,隐藏了对硬件操作的细节,由它们共同实现了对计算机资源的抽象。
4.试说明推动多道批处理系统形成和发展的主要动⼒是什么?答:主要动⼒来源于四个⽅⾯的社会需求与技术发展:(1)不断提⾼计算机资源的利⽤率;(2)⽅便⽤户;(3)器件的不断更新换代;(4)计算机体系结构的不断发展。
5.何谓脱机I/O和联机I/O?答:脱机I/O 是指事先将装有⽤户程序和数据的纸带或卡⽚装⼊纸带输⼊机或卡⽚机,在外围机的控制下,把纸带或卡⽚上的数据或程序输⼊到磁带上。
该⽅式下的输⼊输出由外围机控制完成,是在脱离主机的情况下进⾏的。
⽽联机I/O⽅式是指程序和数据的输⼊输出都是在主机的直接控制下进⾏的。
6.试说明推动分时系统形成和发展的主要动⼒是什么?答:推动分时系统形成和发展的主要动⼒是更好地满⾜⽤户的需要。
主要表现在:CPU 的分时使⽤缩短了作业的平均周转时间;⼈机交互能⼒使⽤户能直接控制⾃⼰的作业;主机的共享使多⽤户能同时使⽤同⼀台计算机,独⽴地处理⾃⼰的作业。
7.实现分时系统的关键问题是什么?应如何解决?答:关键问题是当⽤户在⾃⼰的终端上键⼊命令时,系统应能及时接收并及时处理该命令,在⽤户能接受的时延内将结果返回给⽤户。
解决⽅法:针对及时接收问题,可以在系统中设置多路卡,使主机能同时接收⽤户从各个终端上输⼊的数据;为每个终端配置缓冲区,暂存⽤户键⼊的命令或数据。
第二章 操作系统答案
第二章操作系统 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.操作系统中为什么要引入进程的概念?为了实现并发进程中的合作和协调,以及保证系统的安全,操作系统在进程管理方面要做哪些工作?答:为了从变化角度动态地分析研究可以并发执行的程序,真实的反应系统的独立性、并发性、动态性和相互制约,操作系统中不得不引入进程的概念。
为了防止操作系统及其关键的数据结构如: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.试述线程的特点及其与进程之间的关系。
操作系统 第二章部分答案
26. 假定有如下独木桥问题:过桥时,同一方向的行人可连续过桥,当某一方向有人过桥时,另一方向的行人必须等待;当某一方向无人过桥时,另一方向的行人可以过桥。
试用信号量机制解决。
答:(1) 将独木桥的两个方向分别标记为A和B。
用整型变量countA和countB分别表示A、B方向上已在独木桥上的行人数,初值都设置为0。
需要设置三个初值都为1的互斥信号量:MA用来实现对countA的互斥访问,MB用来实现对countB的互斥访问,mutex用来实现两个方向的行人对独木桥的互斥使用。
(2)以下使用信号量机制对A方向上的行人过桥和B方向上的行人过桥的算法进行描述:int countA, countB;countA = 0; countB = 0;Semaphore MA,MB,mutex; 7个并发执行的进程Pi(i=1,2, …,7),若希望它们按照如下图所示的次序执行,试写出进程并发执行的算法。
Semaphore S[8]; alue=0;process PP(){cobegin 公共汽车上,司机的活动描述为:启动汽车、正常行车、到站停车;售票员的活动描述为:关车门、售票、开车门;试写出司机与售票员之间的同步算法。
答:在汽车行驶过程中,司机活动与售票员活动之间的同步关系为:售票员关车门后,向司机发开车信号,司机接到开车信号后启动汽车,在汽车正常行驶过程中售票员售票,到站时司机停车,售票员在车停后开车门让乘客上下车。
因此司机启动汽车的动作必须与售票员关车门的动作取得同步,而售票员开车门的动作也必须与司机到站停车的动作取得同步。
在本题中,应设置两个信号量S1和S2。
S1表示是否允许司机启动汽车(或表示售票员是否已经关好车门),其初值为0;S2表示是否允许售票员开门(或表示司机是否已经到站停车了),其初值为0.采用信号量机制描述司机与售票员之间的同步算法如下:Semaphore S1,S2; 后进行以下分析:(S1) := - 1 = -1 < 0 ,那么司机进程就自己阻塞起来,等待售票员进程,售票员关车门。
操作系统 第二章习题答案
2.1解答:a.(1)只有1个作业的情况周转时间= N*T ;吞吐率= T/周转时间= 1/N ;处理机使用率= 1/2 。
(2)有2个作业的情况作业1的周转时间= N*T,作业2的周转时间= (N+1/2)*T ;吞吐率= 2*T / [(N+1/2)*T] = 2 / (N+1/2) ;处理机使用率= N / (N+1/2) 。
(3)有4个作业的情况作业1的周转时间= (2N – 1)*T,作业2的周转时间= (2N–1/2)*T ,作业3的周转时间= (2N)*T,作业4的周转时间= (2N+1/2)*T;吞吐率= 4*T / [(2N+1/2)*T] = 4 / (2N+1/2) ;处理机使用率= (2N) / (2N+1/2) 。
b.(1)只有1个作业的情况周转时间= N*T ;吞吐率= T/周转时间= 1/N ;处理机使用率= 1/2 。
(2)有2个作业的情况作业1的周转时间= N*T,作业2的周转时间= (N+1/2)*T ;吞吐率= 2*T / [(N+1/2)*T] = 2 / (N+1/2) ;处理机使用率= N / (N+1/2) 。
(3)有4个作业的情况作业1的周转时间= (10/4)*N*T – (5/4)*T,作业2的周转时间= (10/4)*N*T – T ,作业3的周转时间= (10/4)*N*T – (1/2)*T,作业4的周转时间= (10/4)*N*T ;吞吐率= 4*T / [ (10/4)*N*T ] = 8 / (5N ) ;处理机使用率= (2*N*T) / [(10/4)*N*T ] = 4 / 5 。
2.3分时系统关注于周转时间,利用时间分片的方式给所有进程一个短期的处理器访问时间。
多道程序批处理系统关注于吞吐量,较少做上下文切换,因此每个进程有更多的处理器访问时间。
2.5系统通过统计页面未被触及的平均秒数来判断系统的内存使用情况。
减少活动作业的个数会使得该值上升,反之下降。
计算机操作系统(第四版)课后习题答案第二章
第二章1.什么是前趋图?为什么要引入前趋图?答:前趋图(PrecedenceGraph)是一个有向无循环图,记为DAG(DirectedAcyclicGraph),用于描述进程之间执行的前后关系。
2.画出下面四条诧句的前趋图:S1=a:=x+y;S2=b:=z+1;S3=c:=a-b;S4=w:=c+1;答:其前趋图为:3.4.5.6.a.未建立任何进程的程序,都不能作为一个独立的单位来运行。
7.试说明PCB的作用?为什么说PCB是进程存在的唯一标志?a.PCB是进程实体的一部分,是操作系统中最重要的记录型数据结构。
PCB中记录了操作系统所需的用于描述进程情况及控制进程运行所需的全部信息。
因而它的作用是使一个在多道程序环境下不能独立运行的程序(含数据),成为一个能独立运行的基本单位,一个能和其它进程并发执行的进程。
b.在进程的整个生命周期中,系统总是通过其PCB对进程进行控制,系统是根据进程的PCB而不是任何别的什么而感知到该进程的存在的,所以说,PCB是进程存在的唯一标志。
11.试说明进程在三个基本状态之间转换的典型原因。
答:(1)就绪状态→执行状态:进程分配到CPU资源(2)执行状态→就绪状态:时间片用完(3)执行状态→阻塞状态:I/O请求(4)阻塞状态→就绪状态:I/O完成12.为什么要引入挂起状态?该状态有哪些性质?答:引入挂起状态处于五种不同的需要:终端用户需要,父进程需要,操作系统需要,对换需要和负荷调节需要。
处于挂起状态的进程不能接收处理机调度。
10.在3)。
17.在撤销一个进程时所要完成的主要工作是什么?答:(1)根据被终止进程标识符,从PCB集中检索出进程PCB,读出该进程状态。
(2)若被终止进程处于执行状态,立即终止该进程的执行,臵调度标志真,指示该进程被终止后重新调度。
(3)若该进程还有子进程,应将所有子孙进程终止,以防它们成为不可控进程。
(4)将被终止进程拥有的全部资源,归还给父进程,或归还给系统。
(完整版)操作系统第二章课后答案
第二章进程管理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
第2章操作系统用户界面Page 362.1 什么是作业?什么是作业步?答:把在一次应用业务处理过程中,从输入开始到输出结束,用户要求计算机所做的有关该次全部工作称为一个作业,从系统的角度看,作业则是一个比程序更广的概念。
它由程序、数据和作业说明书组成,系统通过作业说明书控制文件形式的程序和数据,使之执行和操作。
而且,在批处理系统中,作业是抢占内存的基本单位。
也就是说,批处理系统以作业为单位把程序和数据调入内存以便执行。
作业由不同的顺序相连的作业步组成。
作业步是在一个作业的处理过程中,计算机所做的相对独立的工作。
例如,编辑输入是一个作业步,它产生源程序文件;编译也是一个作业步,它产生目标代码文件。
2.2 作业由哪几部分组成?各有什么功能?答:作业由三部分组成:程序、数据和作业说明书。
程序和数据完成用户所要求的业务处理工作,系统通过作业说明书控制文件形式的程序和数据,使之执行和操作。
2.3 作业的输入方式有哪几种?各有什么特点?答:作业的输入方式有5种:(1)联机输入方式:用户和系统通过交互式会话来输入作业。
(2)脱机输入方式:利用低档个人计算机作为外围处理机进行输入处理,存储在后援存储器上,然后将此后援存储器连接到高速外围设备上和主机相连,从而在较短的时间内完成作业的输入工作。
(3)直接耦合方式:直接耦合方式把主机和外围低档机通过一个公用的大容量外存直接耦合起来,从而省去了在脱机输入中那种依靠人工干预来传递后援存储器的过程。
(4)SPOOLING系统:SPOOLING又可译作外围设备同时联机操作。
在SPOOLING系统中,多台外围设备通过通道或DMA器件和主机与外存连接起来。
作业的输入输出过程由主机中的操作系统控制。
(5)网络输入方式:网络输入方式以上述几种输入方式为基础。
当用户需要把在计算机网络中某一台主机上输入的信息传送到同一网中另一台主机上进行操作或执行时,就构成了网络输入方式2.4 试述 SPOOLING 系统的工作原理。
(完整版)操作系统-进程同步习题答案(22)
D.并发进程在访问共享资源时,不可能出现与时间有关的错误
2.下列资源中,(ACD)是临界资源。
A.打印机 B.非共享的资源
C.共享变量 D.共享缓冲区
3.进程从执行状态转换到阻塞状态的可能原因是(BD ).
A.时间片完B.需要等待其它进程的执行结果
C.执行了V操作D.执行了P操作
B.一个进程处于运行状态,n-1个进程处于等待状态。
C.一个进程处于运行状态,1个进程处于就绪状态,n-2个进程处于等待状态。
D.一个进程处于运行状态,n-1个进程处于就绪状态,没有进程处于等待状态
三、判断正误,错误的简要说明理由
1.一个临界资源可以对应多个临界区。(√)
2.互斥地使用临界资源是通过互斥地进入临界区实现的。(X)
分析在本题中,爸爸、儿子、女儿共用一个盘子,且盘中一次只能放一个水果。当盘子为空时,爸爸可将一个水果放入果盘中。若放入果盘中的是苹果,则允许女儿吃,儿子必须等待;若放入果盘中的是桔子,则允许儿子吃,女儿必须等待。本题实际上是生产者-消费者问题的一种变形。这里,生产者放入缓冲区的产品有两类,消费者也有两类,每类消费者只消费其中固定的一类产品。
(2)根据所定义的信号量,把应执行的P、V操作填入下述程序中,以保证进程能够正确地并发执行。
COBEGIN PROCESS Pi(i=1,2,…..)
Begin
;
进入售票厅;
购票;
;
退出;
End;
COEND
(3)若欲购票者最多为n个人,写出信号量可能的变化范围(最大值和最小值)。
解:
售票厅问题:
(1)定义一信号量S,初始值为20。
A.0 B.1 C.2 D.3
操作系统第二版第二章课后习题答案
第二章进程和线程作业答案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,可以。
某一阻塞态进程等到的事件出现了,而且此时就绪队列为空,该进程进入就绪队列后马上又被调度运行。
操作系统第二章部分答案
26.假定有如下独木桥问题:过桥时,同一方向的行人可连续过桥,当某一方向有人过桥时,另一方向的行人必须等待;当某一方向无人过桥时,另一方向的行人可以过桥。
试用信号量机制解决。
答:(1)将独木桥的两个方向分别标记为A和B。
用整型变S countA和countB分别表示A、B 方向上已在独木桥上的行人数,初值都设置为0。
需要设置三个初值都为1的互斥信号量:MA 用來实现对countA 的互斥访问,MB用來实现对countB的互斥访问,mutex用来实现两个方向的行人对独木桥的互斥使用。
(2)以下使用信号量机制对A方向上的行人过桥和B方向上的行人过桥的算法进行描述:intcountA, countB;countA = 0; countB = 0;Semaphore MA, MB, mutex; 7个并发执行的进程Pi (1=1, 2,…,7),若希望它们按照Semaphore S[8]; alue=0;process PP(){cobegin公共汽车上,司机的活动描述为:启动汽车、正常行车、到站停车;售票员的活动描述为:关车门、售票.开车门;试写出司机与售票员之间的同步算法。
答:在汽车行驶过程中,司机活动与售票员活动之间的同步关系为:售票员关车门后,向司机发开车信号,司机接到开车信号后启动汽车,在汽车正常行驶过程中售票员售票,到站时司机停车, 售票员在车停后开车门让乘客上下车。
因此司机启动汽车的动作必须与售票员关车门的动作取得同步,而售票员开车门的动作也必须与司机到站停车的动作取得同步。
在本题中,应设置两个信号量S1和S2。
S1表示是否允许司机启动汽车(或表示售票员是否已经关好车门),其初值为0; S2表示是否允许售票员开门(或表示司机是否已经到站停车了),其初值为0.采用信号量机制描述司机与售票员之间的同步算法如下:Semaphore SI, S2;后进彳亍以下分析:(S1) : = - 1 = -1 < 0 ,那么司机进程就自己阻塞起来,等待售票员进程,售票员关车门。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第二章进程管理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是进程存在的唯一标志。
8. 试说明进程在三个基本状态之间转换的典型原因.a. 处于就绪状态的进程,当进程调度程序为之分配了处理机后,该进程便由就绪状态变为执行状态。
b. 当前进程因发生某事件而无法执行,如访问已被占用的临界资源,就会使进程由执行状态转变为阻塞状态。
c. 当前进程因时间片用完而被暂停执行,该进程便由执行状态转变为就绪状态。
9. 为什么要引入挂起状态?该状态有哪些性质?a. 引入挂起状态主要是出于4种需要(即引起挂起的原因): 终端用户的请求,父进程请求,负荷调节的需要,操作系统的需要。
b. 被挂起的进程是处于静止状态,并且不能直接被处理机调度。
17. 为什么进程在进入临界区之前应先执行“进入区”代码?而在退出前又要执行“退出区”代码?为了实现多个进程对临界资源的互斥访问,必须在临界区之前加一段用于检查临界资源是否正在被访问的代码,如未被访问,该进程可进入临界区对此临界资源进行访问;如正被访问,则该进程不能进入临界区访问临界资源。
在退出临界区后,执行恢复访问标志的代码为“退出区”,而在退出前执行“退出区”代码主要是为了使其它进程能再访问此临界资源。
18. 同步机构应遵循哪些基本准则?为什么?a. 空闲让进、忙则等待、有限等待、让权等待四条准则b. 为实现进程能互斥地进入到自己的临界区19. 试从物理概念上说明记录型信号量wait和signal。
Wait(S):当S.value>0时,表示目前系统中这类资源还有可用的,执行一次wait操作,意味着进程请求一个单位的该类资源,是系统中可供分配的该类资源减少一个,因此描述为S.value:=S.value-1;当S.value<0时,表示该类资源已分配完毕,因此进程应调用block原语,进行自我阻塞,放弃处理机,并插入到信号量链表S.L中。
Signal(S):执行一次signal操作,意味着释放一个单位的可用资源,使系统中可供分配的该类资源数增加一个,故执行S.value:=S.value+1操作。
若加1后S.value≤0,则表示在该信号量链表中,仍有等待该资源的进程被阻塞,因此应调用wakeup原语,将S.L链表中的第一个等待进程唤醒。
22. 试写出相应的程序来描述图2-17所示的前驱图。
a. Var a, b, c, d, e, f, g, h; semaphore:= 0, 0, 0, 0, 0, 0, 0, 0;beginparbeginbegin S1; signal(a); signal(b); end;begin wait(a); S2; signal(c); signal(d); end;begin wait(b); S3; signal(e); end;begin wait(c); S4; signal(f); end;begin wait(d); S5; signal(g); end;begin wait(e); S6; signal(h); end;begin wait(f); wait(g); wait(h); S7; end;parendend23. 在生产者—消费者问题中,如果缺少了signal(full)或signal(empty),对执行结果将会有何影响?如果缺少了signal(full),那么表明从第一个生产者进程开始就没有对信号量full值改变,即使缓冲池存放的产品已满了,但full的值还是0,这样消费者进程在执行wait(full)时会认为缓冲池是空的而取不到产品,那么消费者进程则会一直处于等待状态。
如果缺少了signal(empty),例如在生产者进程向n个缓冲区投满产品后消费者进程才开始从中取产品,这时empty=0,full=n,那么每当消费者进程取走一个产品时empty 并没有被改变,直到缓冲池中的产品都取走了,empty的值也一直是0,即使目前缓冲池有n个空缓冲区,生产者进程要想再往缓冲池中投放产品会因申请不到空缓冲区而被阻塞。
24. 在生产者—消费者问题中,如果将两个wait操作即wait(full)和wait(mutex)互换位置,或者将signal(mutex)和signal(full)互换位置,结果会如何?在生产者—消费者问题中,如果将两个wait操作,即wait(full)和wait(mutex)互换位置后,可能引起死锁。
考虑系统中缓冲区全满时,若一生产者进程先执行了wait(mutex)操作并获得成功,则当再执行wait(empty)操作时,它将因失败而进入阻塞状态,它期待消费者进程执行signal(empty)来唤醒自己,在此之前,它不可能执行signal(mutex)操作,从而使试图通过执行wait(mutex)操作而进入自己的临界区的其他生产者和所有消费者进程全部进入阻塞状态,这样容易引起系统死锁。
若signal(mutex)和signal(full)互换位置后只是影响进程对临界资源的释放次序,而不会引起系统死锁,因此可以互换位置。
25. 我们为某临界资源设置一把锁W,当W=1时表示关锁;当W=0时表示锁已打开,试写出开锁和关锁原语,并利用它们去实现互斥。
整型信号量:lock(W): while W=1 do no-opW:=1;unlock(W): W:=0;记录型信号量:lock(W): W:=W+1;if(W>1) then block(W.L)unlock(W): W:=W-1;if(W>0) then wakeup(W.L)例子:Var W:semaphore:=0;beginrepeatlock(W);critical sectionunlock(W);remainder sectionuntil false;end26. 试修改下面生产者——消费者问题解法中的错误:producer:beginrepeat……produce an item in nextp;wait(mutex);wait(full);buffer(in):=nextp;……signal(mutex);until false;endconsumer:beginrepeat……wait(mutex);wait(empty);nextc:=buffer(out);out:=out+1;signal(mutex); consume item in nextc;until false; end27. 试利用记录型信号量写出一个不会出现死锁的哲学家进餐问题的算法。
三种解决方法中的任意一种即可(略)。
PPT6228. 在测量控制系统中的数据采集任务时,把所采集的数据送往一单缓冲区;计算任务从该单缓冲区中取出数据进行计算。
试写出利用信号量机制实现两任务共享单缓冲区的同步算法。
a. Var mutex, empty, full: semaphore:=1, 1, 0;gather:beginrepeat……gather data in nextp;wait(empty);wait(mutex);buffer:=nextp;signal(mutex);signal(full);until false;end compute:beginrepeat……wait(full);wait(mutex);nextc:=buffer;signal(mutex);signal(empty);compute data in nextc;until false;endb. Var empty, full: semaphore:=1, 0;gather:beginrepeat……gather data in nextp;wait(empty);buffer:=nextp;signal(full);until false;endcompute:beginrepeat……wait(full);nextc:=buffer;signal(empty);compute data in nextc;until false;end31. 参考ppt76页32. 参考ppt91页33. 试比较进程间的低级通信工具与高级通信工具.用户用低级通信工具实现进程通信很不方便,因为其效率低,通信对用户不透明,所有的操作都必须由程序员来实现,而高级通信工具则可弥补这些缺陷,用户可直接利用操作系统所提供的一组通信命令,高效地传送大量的数据。
36. 为什么要在OS中引入线程?在OS中引入进程的目的,是为了使多个程序能并发执行,以提高资源利用率和系统吞吐量。
在OS中再引入线程,则是为了减少程序在并发执行时所付出的时空开销,使OS具有更好的并发性。