操作系统教程第版部分习题答案

合集下载

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

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

第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的内容),以便转入中断处理程序。

操作系统教程第版课后答案

操作系统教程第版课后答案

操作系统教程第5版课后答案费祥林、骆斌编着第一章操作系统概论习题一一、思考题1.简述现代计算机系统的组成及层次结构。

答:现代计算机系统由硬件和软件两个部分组成。

是硬件和软件相互交织形成的集合体,构成一个解决计算问题的工具。

硬件层提供基本可计算的资源,包括处理器、寄存器、内存、外存及I/O设备。

软件层由包括系统软件、支撑软件和应用软件。

其中系统软件是最靠近硬件的。

2、计算机系统的资源可分成哪几类?试举例说明。

答:包括两大类,硬件资源和信息资源。

硬件资源分为处理器、I/O设备、存储器等;信息资源分为程序和数据等。

3.什么是操作系统?操作系统在计算机系统中的主要作用是什么?答:操作系统是一组控制和管理计算机硬件和软件资源,合理地对各类作业进行调度,以及方便用户使用的程序的集合。

操作系统在计算机系统中主要起4个方面的作用。

(1)服务用户观点——操作系统提供用户接口和公共服务程序(2)进程交互观点——操作系统是进程执行的控制者和协调者(3)系统实现观点——操作系统作为扩展机或虚拟机(4)资源管理观点——操作系统作为资源的管理者和控制者4.操作系统如何实现计算与操作过程的自动化?答:大致可以把操作系统分为以下几类:批处理操作系统、分时操作系统、实时操作系统、网络操作系统和分布式操作系统。

其中批处理操作系统能按照用户预先规定好的步骤控制作业的执行,实现计算机操作的自动化。

又可分为批处理单道系统和批处理多道系统。

单道系统每次只有一个作业装入计算机系统的主存储器运行,多个作业可自动、顺序地被装入运行。

批处理多道系统则允许多个作业同时装入主存储器,中央处理器轮流地执行各个作业,各个作业可以同时使用各自所需的外围设备,这样可以充分利用计算机系统的资源,缩短作业时间,提高系统的吞吐率5.操作系统要为用户提供哪些基本的和共性的服务?答:(1)创建程序和执行程序;(2)数据I/O和信息存取;(3)通信服务;(4)差错检测和处理。

操作系统习题(附参考答案)

操作系统习题(附参考答案)

操作系统习题(附参考答案)一、单选题(共100题,每题1分,共100分)1、下列存储器中,速度最快的是()。

A、内存B、寄存器C、CacheD、磁盘正确答案:B2、时钟中断事件属于()中断事件。

A、程序B、自愿性C、外部D、输入/输出正确答案:C3、可变分区存储管理系统中,若采用最佳适应分配算法,“空闲区表”中的空闲区可按()顺序排列。

A、大小从大到小B、大小从小到大C、地址从大到小D、地址从小到大正确答案:B4、从静态的角度看,下列选项中哪一个是进程必须拥有而程序所没有的?()A、常量数据B、全局变量C、进程控制块D、代码正文正确答案:C5、()不是管程的组成部分。

A、对局部于管程内的数据结构设置初始值的语句B、对管程内数据结构进行操作的一组过程C、局部于管程的共享数据结构D、管程外过程调用管程内数据结构的说明正确答案:D6、下列关于父进程和子进程的叙述中,正确的是()。

A、子进程执行完了,父进程才能执行B、父进程创建了子进程,因此父进程执行完了,子进程才能执行C、撤销子进程时,应该同时撤销父进程D、撤销父进程时,应该同时撤销子进程正确答案:D7、某计算机系统中有8台打印机,有K个进程竞争使用,每个进程最多需要3台打印机。

该系统可能会发生死锁的K的最小值是()。

A、3B、4C、2D、5正确答案:B8、分页虚拟存储管理系统中,若采用FIFO页面置换算法,则当分配的物理页面数增加时,缺页中断的次数()。

A、减少B、可能增加也可能减少C、增加D、不变正确答案:B9、产生内存抖动的主要原因是()。

A、内存空间太小B、CPU运行速度太慢C、CPU调度算法不合理D、页面置换算法不合理正确答案:D10、()存储管理兼顾了段式在逻辑上清晰和页式在存储管理上方便的优点。

A、分页B、段页式C、可变分区D、分段正确答案:B11、发生死锁的必要条件有四个,要预防死锁的发生,可以破坏这四个必要条件,但破坏()条件是不太实际的。

操作系统(1~8章的课后习题答案)

操作系统(1~8章的课后习题答案)

1.1:存储程序式计算机的主要特点是:集中顺序过程控制(1)过程性:模拟人们手工操作(2)集中控制:由CPU集中管理(3)顺序性:程序计数器1.2:a:批处理系统的特点:早期批处理有个监督程序,作业自动过渡直到全部处理完,而脱机批处理的特点:主机与卫星机并行操作。

b:分时系统的特点:(1):并行性。

共享一台计算机的众多联机用户可以在各自的终端上同时处理自己的程序。

(2):独占性。

分时操作系统采用时间片轮转的方法使一台计算机同时为许多终端上同时为许多终端用户服务,每个用户的感觉是自己独占计算机。

操作系统通过分时技术将一台计算机改造为多台虚拟计算机。

(3):交互性。

用户与计算机之间可以进行“交互会话”,用户从终端输入命令,系统通过屏幕(或打印机)将信息反馈给用户,用户与系统这样一问一答,直到全部工作完成。

c:分时系统的响应比较快的原因:因为批量操作系统的作业周转时间较长,而分时操作系统一般采用时间片轮转的方法,一台计算机与许多终端设备连接,使一台计算机同时为多个终端用户服务,该系统对每个用户都能保证足够快的响应时间,并提供交互会话功能。

1.3:实时信息处理系统和分时系统的本质区别:实时操作系统要追求的目标是:对外部请求在严格时间范围内做出反应,有高可靠性和完整性。

其主要特点是资源的分配和调度首先要考虑实时性然后才是效率。

此外,实时操作系统应有较强的容错能力,分时操作系统的工作方式是:一台主机连接了若干个终端,每个终端有一个用户在使用。

用户交互式地向系统提出命令请求,系统接受每个用户的命令,采用时间片轮转方式处理服务请求,并通过交互方式在终端上向用户显示结果。

用户根据上步结果发出下道命。

分时操作系统将CPU 的时间划分成若干个片段,称为时间片。

操作系统以时间片为单位,轮流为每个终端用户服务。

每个用户轮流使用一个时间片而使每个用户并不感到有别的用户存在。

分时系统具有多路性、交互性、“独占”性和及时性的特征。

《操作系统教程》习题答案

《操作系统教程》习题答案

《操作系统教程》习题答案习题11.单项选择题(1)大中小型计算机是以为中心的计算机系统。

A、CPUB、存储器C、系统总线D、通道(2)以下关于操作系统的说法正确的是。

A、批处理系统是实现人机交互的系统B、批处理系统具有批处理功能,但不具有交互能力C、分时系统是实现自动控制,无须人为干预的系统D、分时系统即具有分时交互能力,又具有批处理能力(3)操作系统的职能是管理软硬件资源、合理地组织计算机工作流程和。

A、为用户提供良好的工作环境和接口B、对用户的命令作出快速响应C、作为服务机构向其它站点提供优质服务D、防止有人以非法手段进入系统(4)设计实时操作系统时,首先应考虑系统的。

A、可靠性和灵活性B、实时性和可靠性C、优良性和分配性D、灵活性和分配性(5)多道程序设计是指。

A、在分布式系统中同一时刻运行多个程序B、在一台处理器上并行运行多个程序C、在实时系统中并发运行多个程序D、在一台处理器上并发运行多个程序(6)以下关于并发性和并行性的说法正确的是。

A、并发性是指两个及多个事件在同一时刻发生B、并发性是指两个及多个事件在同一时间间隔内发生C、并行性是指两个及多个事件在同一时间间隔内发生D、并发性是指进程,并行性是指程序(1)B (2)B (3)A (4)B (5)D (6)B2.填空题(1)微机是以总线为纽带构成的计算机系统。

(2)在批处理兼分时系统中,往往把由分时系统控制的作业称为前台作业,把由批处理系统控制的作业称为后台作业。

(3)在分时系统中,若时间片长度一定,则用户数越多,系统响应时间越慢。

(4)分布式操作系统能使系统中若干台计算机协同完成一个共同的任务,分解问题成为子计算并使之在系统中各台计算机上并行执行,以充分利用各计算机的优势。

(5)用户通过网络操作系统可以网络通信、资源共享,从而大大扩展了计算机的应用范围。

3.简答题(1)什么是操作系统?现代操作系统的基本特征是什么?并发性(2)什么是批处理系统,衡量批处理系统好坏的主要指标是什么?及时性(3)试述分时系统的原理及其特性。

《操作系统》习题集参考答案:第4章 文件系统

《操作系统》习题集参考答案:第4章 文件系统

第4章文件系统-习题集参考答案一、选择题1. D2. A3. D4. A5. B6. A //一个文件对应一个文件控制块,所有文件控制块构成目录文件7. A //在文件系统中,为每个文件建立一个文件目录,作为目录文件的一个目录项,包含文件的名称及其属性。

8. C9. C //在设置当前工作目录后,文件查找在默认情况下是查当前目录,从而提高查找速度。

10. D11. C12. B13. C //如UNIX中,采用了把文件名与文件描述信息分开的方法,即使文件描述信息单独形成一个称为索引节点的数据结构,简称i节点(索引节点),这样文件目录中仅由文件名各指向该文件所对应的i节点的指针所构成,这样目录项仅有16个字节,其中14个字节为文件名,2个字节为i节点指针。

在1KB的盘块中可做1KB/16B=64个目录项,这样,为找到一个文件,可以大小减少读入内在的信息量。

14. B //只有索引分配方式中的FCB才包含索引表地址15. B16. B17. D //1K/64=1618. C //本注:每块能存放的目录项=1K/64=16个;3200个目录项占用盘块数=3200/16=200。

因为一级目录平均访问盘次数=1/2盘块数(顺序查找目录表中所有目录项,每个目录项为一个FCB),所以平均访问磁盘次数=200/2=100次。

19. C//本注:1.用的是称做“混合索引”的方式。

2.思路很简单,只是要用些专用概念3.三类地址项:1)直接地址项,每个地址直接管理一个“文件块”,而每个“块”是256字节。

共4个这种地址,所以管理:4*256=1KB2)一级间接地址项,每个地址项管理一个“索引块”,而索引块的大小也是256字节,其中可放置:256/4=64个地址项,而每个地址项管理256字节文件。

所以,2个一级间址可管理文件大小:2*64*256=32KB3)二级间接地址项,地址项→索引块→索引块→文件数据块。

所以可管理文件数据:1*64*64*256=1024KB.4.综合上面可管理的文件大小为:1+32+1024=1057KB20. B21. B22. B //每个盘面物理块=200*4=800块,盘面数=8000/800=10,互盘有两个盘面。

南邮《操作系统教程》课后答案

南邮《操作系统教程》课后答案

第一章1. 什么是操作系统?计算机系统中配置操作系统的主要目标是什么?答(p1):操作系统是管理系统资源、控制程序执行、改善人机界面、提供各种服务,合理组织计算机工作流程和为用户有效使用计算机提供良好运行环境的一种系统软件。

配置操作系统的主要目标可归结为:(1) 方便用户使用(2) 扩大机器功能(3) 管理系统资源(4) 提高系统效率(5) 构筑开放环境。

2.计算机系统的资源可分成哪几类?试举例说明。

资源包括两大类:硬件资源和信息资源。

硬件资源分为处理器、存储器、I/O设备等;信息资源则分为程序和数据等。

*5、操作系统有哪些类型?它们有什么特征?7.什么是多道程序设计?采用多道程序设计技术有什么特点?答:多道程序设计技术是指同时把多个作业(程序)放入内存并允许它们交替执行和共享系统中的各类资源;当一道程序因某种原因(如I/O请求)而暂停执行时,CPU立即转去执行另一道程序。

操作系统在引入多道程序设计技术后,使得系统有了多道,宏观上并行,微观上穿行的特点。

采用多道程序设计减少了CPU时间的浪费,增加了系统吞吐量,提高了系统的效率。

第二章2.操作系统提供给用户的接口主要有哪些?答:主要通过程序接口和操作接口两种方式把他的服务和功能提供给用户。

3.什么事系统调用?系统调用与普通调用的区别是什么?答:系统调用本质上是应用程序请求操作系统内核完成某功能的一种过程调用,但它是一种特殊的过程调用,他与一般的过程调用有以下几方面明显差别:①调用形式不同②被调代码的位置不同③提供方式不同④调用的实现不同*4、系统调用有哪几种类型?第三章2.请描述进程的定义和属性。

答:进程是具有独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配、调度和保护的独立单位。

进程的属性有:结构性•共享性•动态性•独立性•制约性•并发性3.请描述进程与程序的区别及关系。

答:程序是静止的,进程是动态的。

进程包括程序和程序处理的对象(数据集),进程能得到程序处理的结果。

(完整版)操作系统课后题答案

(完整版)操作系统课后题答案

(完整版)操作系统课后题答案课本课后题部分答案第⼀章1.设计现代OS的主要⽬标是什么?答:(1)有效性(2)⽅便性(3)可扩充性(4)开放性2.OS的作⽤可表现在哪⼏个⽅⾯?答:(1)OS作为⽤户与计算机硬件系统之间的接⼝(2)OS作为计算机系统资源的管理者(3)OS实现了对计算机资源的抽象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. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第一章:一、3、10、15、23、27、353.什么是操作系统?操作系统在计算机系统中的主要作用是什么?操作系统是管理系统资源、控制程序执行、改善人机界面、提供各种服务,并合理组织计算机工作流程和为用户有效地使用计算机提供良好运行环境的一种系统软件.主要作用(1)服务用户—操作系统作为用户接口和公共服务程序(2)进程交互—操作系统作为进程执行的控制者和协调者(3)系统实现—操作系统作为扩展机或虚拟机(4)资源管理—操作系统作为资源的管理者和控制者10.试述系统调用与函数(过程)调用之间的区别。

(1)调用形式和实现方式不同;(2)被调用的代码位置不同;(3)提供方式不同15.什么是多道程序设计?多道程序设计有什么特点?多道程序设计是指允许多个作业(程序)同时进入计算机系统内存并执行交替计算的方法。

从宏观上看是并行的,从微观上看是串行的。

(1)可以提高CPU、内存和设备的利用率;(2)可以提高系统的吞吐率,使单位时间内完成的作业数目增加;(3)可以充分发挥系统的并行性,使设备和设备之间,设备和CPU之间均可并行工作。

23.现代操作系统具有哪些基本功能?请简单叙述之。

(1)处理器管理;(2)存储管理;(3)设备管理;(4)文件管理;(5)联网与通信管理。

27.什么是操作系统的内核?内核是一组程序模块,作为可信软件来提供支持进程并发执行的基本功能和基本操作,通常驻留在内核空间,运行于内核态,具有直接访问计算机系统硬件设备和所有内存空间的权限,是仅有的能够执行特权指令的程序。

35.简述操作系统资源管理的资源复用技术。

系统中相应地有多个进程竞争使用资源,由于计算机系统的物理资源是宝贵和稀有的,操作系统让众多进程共享物理资源,这种共享称为资源复用。

(1)时分复用共享资源从时间上分割成更小的单位供进程使用;(2)空分复用共享资源从空间上分割成更小的单位供进程使用。

.二、2、52、答:画出两道程序并发执行图如下:(1)(见图中有色部分)。

(2)至200ms间(见图中有色5、:(1)Job1从投入到运行完成需80ms,Job2从投入到运行完成需90ms,Job3从投入到运行完成需90ms。

(2)CPU空闲时间段为:60ms至70ms,80ms至90ms。

所以CPU利用率为(90-20)/90=77.78%。

(3)设备I1空闲时间段为:20ms至40ms,故I1的利用率为(90-20)/90=77.78%。

设备I2空闲时间段为:30ms至50ms,故I2的利用率为(90-20)/90=77.78%。

第二章:一、9、18、20、26、489.什么是系统调用?试述API、库函数和系统调用之间的关系.叙述系统调用执行流程.18.什么是进程?计算机操作系统为什么要引入进程?进程是具有独立功能的程序在某个数据集合上的一次运行活动,是计算机操作系统进行资源分配和保护的基本单位.(1)刻画程序的并发性;(2)解决资源的共享性.20.进程的最基本状态有哪些?哪些事件可以引起不同状态间的转换?运行态就绪态阻塞态26.何谓进程控制块(PCB)?它包含哪些基本信息?进程控制块是进程存在的唯一标识,是操作系统用来记录和刻画进程状态及环境信息的数据结构,是进程动态特征的汇集,也是操作系统掌握进程的唯一资料结构和管理进程的主要依据。

(1)标识信息;(2)现场信息;(3)控制信息。

48.处理器调度分为哪几种类型?简述各类调度的主要任务。

高级调度,中级调度,低级调度。

高级调度,创建就绪进程和做进程完成后的善后工作。

中级调度,根据内存资源情况决定内存中所能容纳进程的数目,并完成内存和外存中进程的对换。

低级调度,根据某种原则决定就绪队列中哪个进程/线程获得处理器,并将处理器出让给它使用。

二、5、10、12、16、20、21、25、285、答:采用短作业优先算法调度时,三个作业的总周转时间为:T1=a+(a+b)+(a+b+c)=3a+2b+c ①若不按短作业优先算法调度,不失一般性,设调度次序为:J2、J1、J3。

则三个作业的总周转时间为:T2=b+(b+a)+(b+a+c)=3b+2a+c ②令②-①式得到:T2-T1=b-a>0可见,采用短作业优先算法调度才能获得最小平均作业周转时间。

10、答:5个待运行的作业同时到达,按照最短作业优先的算法可以使平均响应时间最短。

X 取值不定,按照以下情况讨论:1)x≤3 次序为:x,3,5,6,92)3<x≤5 次序为:3,x,5,6,93) 5<x ≤6 次序为:3,5,x ,6,9 4) 6<x ≤9 次序为:3,5,6,x ,9 5) 9<x 次序为:3,5,6,9,x 12、答:(1)FCFS 调度算法J2至J6SJF 算答:如下表所示平均周转时间=(160+30+80+130+80+50)/6=88.88 平均带权周转时间=(4+1+4/3+13/2+4+5)/6=3.64 25、答:每个作业运行将经过两个阶段:作业调度(SJF 算法)和进程调度(优先数抢占式)。

另外,批处理最多容纳2道作业,更多的作业将在后备队列等待。

A 在(3) 10:30,作业C 到达,因内存中已有两道作业,故作业C 进入作业后备队列等待。

(4) 10:50,作业B 运行结束,作业D 到达,按SJF 短作业优先算法,作业D被装入内存进入就绪队列。

而由于作业A的优先级高于作业D,故作业A 投入运行。

(5)11:10,作业A运行结束,作业C被调入内存,且作业C的优先级高于作业D,故作业C投入运行。

(6)12:00,作业C运行结束,作业D投入运行。

(7)12:20,作业D运行结束。

,作业C 90,作业D 90。

平28D、C和E。

作业平均周转时间为63分钟。

(2) SJF算法选中作业执行的次序为:A、B、D、E和C。

作业平均周转时间为58分钟。

第三章:一、9、13、15、259.什么是临界区和临界资源?临界区管理的基本原则是什么?并发进程中与共享变量有关的程序段称为临界区。

共享变量所代表的资源叫做临界资源,即一次仅供一个进程使用的资源。

(1)一次至多有一个进程进入临界区内执行;(2)如果已有进程在临界区内,试图进入此临界区的其它进程应等待;(3)进入临界区的进程应在有限时间内退出,以便让进程等待队列中的一个进程进入。

13.什么是信号量?如何对其进行分类?信号量是物理资源的实体,它是一个与队列有关的整型变量。

按用途分(1)公用信号量;(2)私有信号量。

按取值分(1)二值信号量;(2)一般信号量。

15.何谓管程?它有哪些属性?管程是由局部于自己的若干公共变量及其声明和所有访问这些公共变量的过程所组成的软件模块,它提供一种互斥机制,进程可以互斥地调用管程的过程。

(1)共享性;(2)安全性;(3)互斥性。

25.试述产生死锁的必要条件、死锁产生的原因及预防死锁的方法。

(1)互斥条件;(2)占有和等待条件;(3)不剥夺条件;(4)循环等待条件。

进程推进顺序不当、PV操作使用不妥、同类资源分配不均或对某些资源的使用未加限制等,不仅与系统拥有的资源数量有关,而且与资源分配策略、进程对资源的使用要求以及并发进程的推进顺序有关。

(1)破坏条件1(互斥条件);(2)破坏条件2(占有和等待条件);(3)破坏条件3(不剥夺条件);(4)破坏条件4(循环等待条件)。

二、2、答:不同(1):初值为1,范围为[-n+1,1];(2):初值为m,范围为[-n+m,m]。

5、答:1)使用信号量和P、V操作:var name: array[1..100] of A;A=recordnumber:integer;name:string;endfor i:=1 to 100 do {A[i].number:=i; A[i].name:=null;}mutex,seatcount:semaphore;i:integer;mutex:=1;seatcount:=100;cobegin{process readeri(var readername:string)(i=1,2,…){P(seatcount);P(mutex);for i:=1 to 100 do i++if A[i].name=null then A[i].name:=readername;reader get the seat number =i; /*A[i].numberV(mutex)进入阅览室,座位号i,座下读书;P(mutex);A[i] name:=null;V(mutex);V(seatcount);离开阅览室;}}coend.2) 使用管程操作:TYPE readbook=monitorVAR R:condition;Interface Module IM;i,seatcount:integer;name:array[1..100] of string;DEFINE readercome,readerleave;USE check,wait,signal,release;procedure readercome(readername)begincheck(IM);if seatcount≥100 wait(R,IM)seatcount:=seatcount+1;for i=1 to 100 do i++if name[i]==null then name[i]:=readername; get the seat number=i;release(IM);endprocedure readerleave(readername)begincheck(IM);seatcount--;for i=1 to 100 do i++if name[i]==readername then name[i]:=null;release(IM);endbeginseatcount:=100;name:=null;endcobeginprocess readeri(i=1,2.…)beginreadercome(readername);read the book;readerleave(readername);leave the readroom;endcoend.6、答:实质上是两个进程的同步问题,设信号量S1和S2分别表示可拣白子和黑子,不失一般性,若令先拣白子。

var S1,S2:semaphore;S1:=1;S2:=0;cobegin{process P1beginrepeatP(S1);拣白子V(S2);until false;endprocess P2beginrepeatP(S2);拣黑子V(S1);until false;end}coend.16、答:(1)用信号量和P、V操作。

相关文档
最新文档