操作系统第四章
- 格式:doc
- 大小:60.50 KB
- 文档页数:5
操作系统-第4章复习题答案操作系统第四章复习题⼀、选择题1、在可变式分区分配⽅案中,某⼀作业完成后系统收回其主存空间,并与相邻空闲区合并,为此修改空闲区表,造成空闲区数减⼀的情况是( D )。
A ⽆上邻空闲区,也⽆下邻空闲区B 有上邻空闲区,但⽆下邻空闲区C 有下邻空闲区,但⽆上邻空闲区D 有上邻空闲区,也有下邻空闲区2、分区式存储器管理⽅式,每个程序(B)。
A ⼀定在分区中连续,部分存放B ⼀定在分区中连续,整体存放C 可以在分区中不连续,整体存放D 可以在分区中连续,部分存放3、下列选项中对分段存储管理叙述正确的是(B)A 分段存储管理中每个段必须是⼤⼩相等的。
B 每⼀段必须是连续的存储区C 每⼀段不必是连续的存储区D 段间的存储区必须是连续的4、下列对重定位的叙述中,正确的选项是(B)。
A 经过静态重定位后,指令代码并不发⽣变化。
B 经过静态重定位后,数据地址和指令地址发⽣了变化C 经过动态重定位后,指令代码中的操作码和操作数地址都要发⽣变化。
D经过动态重定位后,数据地址发⽣了变化⽽指令地址没有发⽣变化。
5、虚拟存储器功能的管理⽅法包括(C)。
A 可变分区存储管理B 基本分页存储管理C 请求分段存储管理D 段页式存储管理6、虚拟存储器的最⼤容量(C)。
A 由作业的地址空间决定B 是任意的C 由计算机的地址结构决定的D 为内、外容量之和7、操作系统为( C )分配内存空间。
A线程B⾼速缓冲存储器(Cache)C 进程 D 块表8、下⾯的页⾯置换算法中会产⽣所谓Belady异常现象的是(B)。
A 最佳页⾯置换算法(OPT)B 先进先出页⾯置换算法(FIFO)C 最近最久未使⽤页⾯置换算法(LRU)D 最少使⽤页⾯置换算法(LFU)9、采⽤( B )不会产⽣内部碎⽚。
A 分页式存储管理B 分段式存储管理C 固定分区式存储管理D 段页式存储管理10、最佳适应算法的空闲区是(B)。
A 按⼤⼩递减顺序连在⼀起B按⼤⼩递增顺序连在⼀起C 按地址由⼩到⼤排列D 按地址由⼤到⼩排列11、在可变式分区存储管理中的拼接技术可以(A)。
第四章存储器管理第0节存储管理概述一、存储器的层次结构1、在现代计算机系统中,存储器是信息处理的来源与归宿,占据重要位置。
但是,在现有技术条件下,任何一种存储装置,都无法从速度、容量、是否需要电源维持等多方面,同时满足用户的需求。
实际上它们组成了一个速度由快到慢,容量由小到大的存储装置层次。
2、各种存储器•寄存器、高速缓存Cache:少量的、非常快速、昂贵、需要电源维持、CPU可直接访问;•内存RAM:若干(千)兆字节、中等速度、中等价格、需要电源维持、CPU可直接访问;•磁盘高速缓存:存在于主存中;•磁盘:数千兆或数万兆字节、低速、价廉、不需要电源维持、CPU 不可直接访问;由操作系统协调这些存储器的使用。
二、存储管理的目的1、尽可能地方便用户;提高主存储器的使用效率,使主存储器在成本、速度和规模之间获得较好的权衡。
(注意cpu和主存储器,这两类资源管理的区别)2、存储管理的主要功能:•地址重定位•主存空间的分配与回收•主存空间的保护和共享•主存空间的扩充三、逻辑地址与物理地址1、逻辑地址(相对地址,虚地址):用户源程序经过编译/汇编、链接后,程序内每条指令、每个数据等信息,都会生成自己的地址。
●一个用户程序的所有逻辑地址组成这个程序的逻辑地址空间(也称地址空间)。
这个空间是以0为基址、线性或多维编址的。
2、物理地址(绝对地址,实地址):是一个实际内存单元(字节)的地址。
●计算机内所有内存单元的物理地址组成系统的物理地址空间,它是从0开始的、是一维的;●将用户程序被装进内存,一个程序所占有的所有内存单元的物理地址组成该程序的物理地址空间(也称存储空间)。
四、地址映射(变换、重定位)当程序被装进内存时,通常每个信息的逻辑地址和它的物理地址是不一致的,需要把逻辑地址转换为对应的物理地址----地址映射;地址映射分静态和动态两种方式。
1、静态地址重定位是程序装入时集中一次进行的地址变换计算。
物理地址= 重定位的首地址+ 逻辑地址•优点:简单,不需要硬件支持;•缺点:一个作业必须占据连续的存储空间;装入内存的作业一般不再移动;不能实现虚拟存储。
第四章一、单项选择题1.为了根据进程的紧迫性做进程调度,应采用(B )。
A.先来先服务调度算法 B. 优先数调度算法 C.时间片轮转调度法 D.分级调度算法2.采用时间片轮转法调度是为了( A)。
A.多个终端都能得到系统的及时响应 B.先来先服务C. 优先数高的进程先使用处理器 D.紧急事件优先处理3.采用优先数调度算法时,对那些具有相同优先数的进程再按( A )的次序分配处理器。
A 先来先服务 B. 时间片轮转 C. 运行时间长短 D.使用外围设备多少4. 当一进程运行时,系统强行将其撤下,让另一个更高优先数的进程占用处理器,这种调度方式是( B )。
A. 非抢占方式B.抢占方式 C. 中断方式 D.查询方式5.( B)必定会引起进程切换。
A.一个进程被创建后进入就绪态B.一个进程从运行态变成阻塞态C.一个进程从阻塞态变成就绪态6.( B)只考虑用户估计的计算机时间,可能使计算时间长的作业等待太久。
A.先来先服务算法B.计算时间短的作业优先算法C.响应比最高者优先算法 D.优先数算法7.先来先服务算法以( A )去选作业,可能会使计算时间短的作业等待时间过长。
A.进入的先后次序 B.计算时间的长短 C.响应比的高低 D.优先数的大小8.可以证明,采用( C )能使平均等待时间最小。
A.优先数调度算法 B.均衡调度算法C.计算时间短的作业优先算法 D.响应比最高者优先算法9.在进行作业调度时.要想兼顾作业等待时间和计算时间,应选取(D )。
A均衡调度算法 B.优先数调度算法C.先来先服务算法D.响应比最高者优先算法10.作业调度算法提到的响应比是指( B )。
A.作业计算时间与等待时间之比B.作业等待时间与计算时间之比C.系统调度时间与作业等待时间之比 D.作业等待时间与系统调度时间之比11.作业调度选择一个作业装入主存后,该作业能否占用处理器必须由( D )来决定。
A.设备管理 B.作业控制 C.驱动调度D.进程调度12.系统出现死锁的根本原因是( D )。
第四章一、选择题1、在请求分页系统中,主要的硬件支持有请求分页的页表机制、缺页中断机构和( C)。
A 、时间支持B 、空间支持C 、地址变换机构D 、虚拟存储2、从下列关于虚拟存储器的论述中,选出一条正确的论述。
(B)A.要求作业运行前,必须全部装入内存,且在运行中必须常驻内存;B.要求作业运行前,不必全部装入内存,且在运行中不必常驻内存;C.要求作业运行前,不必全部装入内存,但在运行中必须常驻内存;D. 要求作业运行前,必须全部装入内存,且在运行中不必常驻内存;3、请求分页存储管理方案的主要特点是(C )。
A.不要求将作业装入内存B.不要求使用联想存储器C.不要求将作业全部装入内存D.不要求缺页中断的处理4、在下列特性中,哪一个不是进程的特性( C )。
A.异步性B. 并发性C. 静态性D. 动态性5、通常,用户编写的程序中所使用的地址是( A )。
A.逻辑地址B.物理地址C.绝对地址D.内存地址二.填空题1.引入分段系统,主要是为了满足用户的一系列要求,主要包括了(便于访问)、(分段共享)、(分段保护)、(动态链接)几个方面。
2.设访问页面顺序为:1,3,2,4,1,2,驻留集大小为3,按LRU策略控制上述访问串,应发生(5)次页故障。
# 3、在段页式系统中无快表,为获得一条指令或数据,都需三次访问内存。
第一次从内存中取得(页表起始地址),第二次从内存中取得(物理块号),第三次从内存中取得(指令和数据)。
#4、虚拟存储器的基本特征是(多次性)和(对换性),因而决定了实现虚拟存储器的关键功能是(请求调页和页置换)功能。
**5.在段式存储管理中, 若逻辑地址的段内地址大于段表中该段的段长, 则发生(地址越界)中断。
6. 在存储管理中, 为进程分配内存时, 取满足申请要求且长度最大的空闲区域, 这一算法称为(最坏适应算法)7 在页式存储管理中,由(操作系统)将用户程序划分为若干相等的页.8. 在操作系统的存储管理中,由于进行动态不等长存储分配,在内存中形成一些很小的空闲区域,称之为(碎片)。
操作系统第4章习题带答案第四章⼀、问答题1、同步机制应遵循的准则是什么?2、死锁产⽣的4个必要条件是什么?它们是彼此独⽴的吗?3、简述死锁的定义和死锁产⽣的原因。
4、简述死锁定理和解除死锁的⽅法。
5、什么是安全状态?怎么判断系统是否处于安全状态?6、同步机制应遵循的准则是什么?7、死锁产⽣的4个必要条件是什么?它们是彼此独⽴的吗?⼆、计算题(共20分)1、当前系统中出现下述资源分配情况:利⽤银⾏家算法,试问如果进程P2提出资源请求Request(1,2,2,2)后,系统能否将资源分配给它?答:Request(1,2,2,2)<=(2,3,5,6)申请合法Request(1,2,2,2)<=Available,开始试探性分配,Available=(0,4,0,0) 测试系统是否安全:work= Available,finish=1没有进程的need满⾜<=work系统处于不安全状态,系统拒绝此次资源分配。
2、当前某系统有同类资源7个,进程P,Q所需资源总数分别为5,4。
它们向系统申请资源的次序和数量如表所⽰。
回答:问:采⽤死锁避免的⽅法进⾏资源分配,请你写出系统完成第3次分配后各进程占有资源量,在以后各次的申请中,哪次的申请要求可先得到满⾜?答:第1次申请,Q申请资源2,系统安全,分配第2次申请,P申请资源1,系统安全,分配第3次申请,Q申请资源1,系统安全,分配资源剩余3个,P占有1个资源,Q占有3个资源,第4次分配不安全,拒绝,第5分配系统安全,满⾜。
3、⼀个计算机系统有6个磁带驱动器和4个进程。
每个进程最多需要n个磁带驱动器。
问当n为什么值时,系统不会发⽣死锁?并说明理由答:n=2理由同第4题(进程资源最⼤需求-1)×进程数量+1≤系统资源数量4、若系统有某类资源m×n+1个,允许进程执⾏过程中动态申请该类资源,但在该系统上运⾏的每⼀个进程对该资源的占有量任何时刻都不会超过m+1个。
操作系统第四章习题及答案第四章进程管理1、⼀个由3个页⾯每页有2048个字节组成的程序,将它装⼊⼀个8个物理块组成的存储器中,装⼊的情况如下表所⽰:给出下列逻辑地址,请计算出2617对应的物理地址:2、某请求页式存储管理,允许⽤户编程空间为32个页⾯(每页1KB),主存为16KB, 如有⼀个⽤户程序有10页长,且某时刻该⽤户页⾯映射表如表所⽰。
如果程序执⾏时遇到以下的虚地址:0AC5H ,1AC5H 试计算对应的物理地址。
3、假设某分页系统中,主存储器的容量为1MB ,被分为256块,回答:1)主存地址应该⽤位来表⽰。
2)作业每⼀页的长度为;逻辑地址中的页内地址应该为位。
4、在段式管理系统中,段表为求下⾯逻辑地址对应的物理地址。
12 7 1 4 0 块号页号 95 1938 4 590 13503 90 100 220 2350 1 500 210 0 段长内存起始地址段号(1,10);(2,500);(3,400);(5,32)5、在⼀分页存储管理系统中,逻辑地址长度为16位,页⾯⼤⼩为4096字节,分别计算逻辑地址14AAH,235BH,3B4CH,78DDH所对应的物理地址,并指出可能发⽣何种中断?(8分)注:1表⽰可寻址,0表⽰在外存。
6、在⼀个请求分页系统中,假定系统分配给作业的物理块数为3,并且此作业的页⾯⾛向为2、3、2、1、5、2、4、5、3、2、5、2。
试⽤LRU算法计算出程序访问过程所发⽣的缺页次数和被替换的页⾯序列。
答案:1、P=int(2617/2048)=1 d=569物理地址=4*2048+569=87612、0AC5H的页号是2,对应的物理页号是4,所以物理地址应该为12C5H,1AC5H的页号是6,超过了页表的范围,所以该地址⾮法,产⽣越界中断3、假设某分页系统中,主存储器的容量为1MB,被分为256块,回答:1)主存地址应该⽤ 20 位来表⽰。
2)作业每⼀页的长度为 2048 ;逻辑地址中的页内地址应该为 12 位。
《操作系统》课件项目四设备管理一、教学内容本节课的教学内容选自教材《操作系统》的第四章设备管理。
具体内容包括:设备管理的概念、设备分配与回收、设备请求调度、I/O控制和中断处理。
二、教学目标1. 使学生理解设备管理的概念及其在操作系统中的重要性。
2. 培养学生掌握设备分配与回收的基本方法。
3. 帮助学生了解设备请求调度策略,理解I/O控制和中断处理机制。
三、教学难点与重点1. 教学难点:设备请求调度策略,中断处理机制。
2. 教学重点:设备管理的概念,设备分配与回收方法。
四、教具与学具准备1. 教具:多媒体教学设备,黑板,粉笔。
2. 学具:教材《操作系统》,笔记本,彩色笔。
五、教学过程1. 实践情景引入:以计算机打印文件为例,引导学生思考设备管理的重要性。
2. 概念讲解:讲解设备管理的定义,阐述其在操作系统中的作用。
3. 例题讲解:通过具体例题,讲解设备分配与回收的基本方法。
4. 随堂练习:让学生结合例题,自行设计一个简单的设备分配与回收算法。
5. 知识拓展:介绍设备请求调度策略,讲解I/O控制和中断处理机制。
6. 课堂讨论:组织学生就设备请求调度策略和中断处理机制展开讨论,分享彼此的理解和看法。
六、板书设计1. 设备管理概念2. 设备分配与回收方法3. 设备请求调度策略4. I/O控制与中断处理七、作业设计1. 题目:设计一个简单的设备分配与回收算法。
答案:略2. 题目:简要描述设备请求调度策略。
答案:略3. 题目:解释I/O控制和中断处理机制。
答案:略八、课后反思及拓展延伸1. 课后反思:本节课通过实践情景引入,使学生了解了设备管理的重要性。
在讲解设备分配与回收方法时,通过例题使学生掌握了基本概念。
在知识拓展环节,介绍了设备请求调度策略和中断处理机制,增加了学生对操作系统设备管理的认识。
整体教学过程流畅,学生参与度高,达到了预期的教学目标。
2. 拓展延伸:邀请计算机专业人士进行讲座,让学生更深入地了解操作系统设备管理的实际应用。
第四章 存储器管理1、对如图所示的内存分配情况(其中,阴影部分表示已占用块,空白部分表示空闲块),若要申请一块40KB 的内存,对于最佳适应算法,给出分配区域的首地址( )。
A 、100KBB 、190KBC 、330KBD 、410KB2、如右图所示中,若要申请一块40KB 的内存,使首地址最大的分配算法()。
A 、首次适应算法B 、最佳适应算法C 、最坏适应算法D 、循环首次适应算法3、下列算法中产生“抖动”现象的是( )。
A 、先进先出页面置换算法(FIFO)B 、最近最久未使用(LRU)置换算法C 、最不经常使用(LFU)置换算法D 、最佳(Optimal)置换算法4、存储管理是对内存中( )区域进行管理。
A 、整个内存B 、供用户使用的C 、供系统使用的D 、供程序使用的5、下面是关于存储器管理功能的论述,正确的论述是( )和( )。
A 、内存分配最基本的任务是为每道程序分配内存空间,其他追求的主要目标是提高存储空间的利用率。
B 、为了提高内存保护的灵活性,内存保护通常由软件实现。
C 、对换技术已不是现代操作系统中常用的一种技术。
D 、地址映射是指将程序空间中的逻辑地址变为内存空间的物理地址。
E 、虚拟存储器是在物理上扩充内存容量。
6、在下列存储管理方案中,不适用于多道程序的是( )。
A 、单一连续分配B 、固定分区分配C 、动态重定位分区分配D 、段页式存储分配7、在固定分区存储管理中,每个分区的大小是( )。
A 、相同的B 、可以不同但作业长度固定C 、可以不同但预先固定D 、根据用户要求而定0KB100KB 180KB 190KB 280KB 330KB 390KB410KB 512KB8、在固定分区管理中,为了提高内存的利用率,可采用如下技术()。
A、按经常出现的作业大小来划分分区B、划分分区都相同C、不同请求队列中的作业可以申请相同的分区D、大作业可以申请多个分区9、采用固定分区管理的最大缺点是()。
第四章处理机调度与死锁4.1 知识点汇总1、处理机调度级别⑴调度:选出待分派的作业或进程⑵处理机调度:分配处理机⑶三级调度:高级调度(作业调度)、中级调度(内存对换)、低级调度(进程调度)2、作业状态⑴作业状态分为四种:提交、后备、执行和完成。
⑵作业状态变迁图:图4-1 作业状态及变迁3、作业调度和调度的功能⑴. 作业调度的任务后备状态→执行状态执行状态→完成状态⑵作业调度的功能①记录系统中各个作业的情况②按照某种调度算法从后备作业队列中挑选作业③为选中的作业分配内存和外设等资源④为选中的作业建立相应的进程⑤作业结束后进行善后处理工作4、进程调度和调度的功能1). 进程调度:后备状态→执行状态2). 进程调度时机:任务完成后、等待资源时、运行到时了、发现重调标志3). 进程调度的功能:保存现场、挑选进程、恢复现场5、两级调度模型 作业调度和进程调度的区别6、评价调度算法的指标调度性能评价准则:CPU利用率、吞吐量、周转时间、就绪等待时间和响应时间(1)吞吐量:单位时间内CPU完成作业的数量(2)周转时间:1) 周转时间=完成时刻-提交时刻2) 平均周转时间=周转时间/n3) 带权周转时间=周转时间/实际运行时间4) 平均带权周转时间=带权周转时间/n7、作业与进程调度算法(1)先来先服务(FCFS)调度算法的实现思想:按作业(进程)到来的先后次序进行调度,即先来的先得到运行。
用于作业调度:从作业对列(按时间先后为序)中选择队头的一个或几个作业运行。
用于进程调度:从就绪队列中选择一个最先进入该队列的进程投入运行。
例如设有三个作业,编号为1,2,3。
各作业分别对应一个进程。
各作业依次到达,相差一个时间单位。
①图示出采用FCFS方式调度时这三个作业的执行顺序②算出各作业的周转时间和带权周转时间(2)时间片轮转(RR)调度算法的实现思想:系统把所有就绪进程按先进先出的原则排成一个队列。
新来的进程加到就绪队列末尾。
操作系统第四章课后答案第四章存储器管理1. 为什么要配置层次式存储器?这是因为:a.设置多个存储器可以使存储器两端的硬件能并行工作。
b.采用多级存储系统,特别是Cache技术,这是一种减轻存储器带宽对系统性能影响的最佳结构方案。
c.在微处理机内部设置各种缓冲存储器,以减轻对存储器存取的压力。
增加CPU中寄存器的数量,也可大大缓解对存储器的压力。
2. 可采用哪几种方式将程序装入内存?它们分别适用于何种场合?将程序装入内存可采用的方式有:绝对装入方式、重定位装入方式、动态运行时装入方式;绝对装入方式适用于单道程序环境中,重定位装入方式和动态运行时装入方式适用于多道程序环境中。
3. 何为静态链接?何谓装入时动态链接和运行时动态链接?a.静态链接是指在程序运行之前,先将各自目标模块及它们所需的库函数,链接成一个完整的装配模块,以后不再拆开的链接方式。
b.装入时动态链接是指将用户源程序编译后所得到的一组目标模块,在装入内存时,采用边装入边链接的一种链接方式,即在装入一个目标模块时,若发生一个外部模块调用事件,将引起装入程序去找相应的外部目标模块,把它装入内存中,并修改目标模块中的相对地址。
c.运行时动态链接是将对某些模块的链接推迟到程序执行时才进行链接,也就是,在执行过程中,当发现一个被调用模块尚未装入内存时,立即由OS去找到该模块并将之装入内存,把它链接到调用者模块上。
4. 在进行程序链接时,应完成哪些工作?a.对相对地址进行修改b.变换外部调用符号6. 为什么要引入动态重定位?如何实现?a.程序在运行过程中经常要在内存中移动位置,为了保证这些被移动了的程序还能正常执行,必须对程序和数据的地址加以修改,即重定位。
引入重定位的目的就是为了满足程序的这种需要。
b.要在不影响指令执行速度的同时实现地址变换,必须有硬件地址变换机构的支持,即须在系统中增设一个重定位寄存器,用它来存放程序在内存中的起始地址。
程序在执行时,真正访问的内存地址是相对地址与重定位寄存器中的地址相加而形成的。
第四章
一、问答题
1、什么叫临界资源?什么叫临界区?对临界区的使用应符合哪些规则?(同步机制应遵循的准则是什么?)
2、死锁产生的4个必要条件是什么?它们是彼此独立的吗?
3、何谓死锁?为什么将所有资源按类型赋予不同的序号,并规定所有进程按资源序号递增的顺序申请资源后,系统便不会产生死锁?
4、什么是安全状态?怎么判断系统是否处于安全状态?
5、简述死锁定理和解除死锁的方法。
二、计算和证明
1、当前系统中出现下述资源分配情况:
利用银行家算法,试问如果进程P2提出资源请求Request(1,2,2,2)后,系统能否将资源分配给它?
2、若系统有某类资源m×n+1个,允许进程执行过程中动态申请该类资源,但在该系统上运行的每一个进程对该资源的占有量任何时刻都不会超过m+1个。
当进程申请资源时只要有资源尚未分配完则满足它的申请,但用限制系统中可同时执行的进程数来防止发生死锁,你认为进程调度允许同时执行的最大进程数应该是多少?并说明原因。
3、n个进程共享某种资源R,该资源共有m个,每个进程一次一个地申请或释放资源。
假设每个进程对该资源的最大需求量均小于m,且各进程最大需求量之和小于m+n,试证明在这个系统中不可能发生死锁。
4、当前某系统有同类资源7个,进程P,Q所需资源总数分别为5,4。
它们向系统申请资源的次序和数量如表所示。
回答:
问:采用死锁避免的方法进行资源分配,请你写出系统完成第3次分配后各进程占有资源量,在以后各次的申请中,哪次的申请要求可先得到满足?
5、一个计算机系统有6个磁带驱动器4个进程。
每个进程最多需要n个磁带驱动器。
问当n为什么值时,系统不会发生死锁?并说明理由
6、n个进程共享某种资源R,该资源共有m个可分配单位,每个进程一次一个地申请或释放资源单位。
假设每个进程对该资源的最大需求量均小于m,问各进程最大需求量之和至少小于多少,系统不会发生死锁,并证明。
7. 考虑某一系统,它有4类资源R1,R2,R3,R4,有5个并发进程P0,P1,P2,P3,P4。
请按照银行家算法回答下列问题;
⑴各进程的最大资源请求,已分配的资源矩阵和当前资源剩余向量如下图所示,计算各进程的需求向量组成的矩阵。
⑵系统当前是处于安全状态吗?
⑶当进程P2申请的资源分别为(0,3,2,0)时,系统能立即满足吗?
8、假定系统有4个同类资源和3个进程,进程每次只申请或释放一个资源。
每个进程最大资源需求量为2。
请问,这个系统为什么不会发生死锁?
9、考虑这样一种资源分配策略:对资源的申请和释放可以在任何时刻进行。
如果一个进程的资源得不到满足,则考查所有由于等待资源而被阻塞的进程,如果它们有申请进程所需要的资源,则把这些资源取出分给申请进程。
例如,考虑一个有3类资源的系统,Avai1ab1e=(4,2,2)。
进程A申请(2,2,1),可以满足;进程B申请(1,0,1),可以满足,若A再申请(0,0,1),则被阻塞(无资源可分)。
此时,若C申请(2,0,0),它可以分得剩余资源(1,0,0),并从A已分得的资源中获得一个资源,于是,进程A的分配向量变成:Available=(1,2,1),而需求向量变成:Need=(1,0,1)。
⑴这种分配方式会导致死锁吗?若会,举一个例子;若不会,说明死锁的哪一个必要条件不成立。
⑵这种分配方式会导致某些进程的无限等待吗?
10、.有3个进程P1、P2和P3并发执行。
进程P1需使用资源r3和r1,进程P2需使用资源r1和r2,进程P3需使用资源r2和r3。
⑴若对资源分配不加限制,会发生什么情况,为什么?
⑵为保证进程能执行到结束,应采用怎样的资源分配策略?
11、设有A B、C三个进程,它们共享十个资源,每个进程最大需求量分别为4,7,8,它们对资源请求的序列如下表:(8分)
⑴请画出执行完序号4时的资源分配矩阵;
⑵为使系统不发生死锁,执行完序号6时,3个进程各处于什么状态,获得多少
同类资源?
⑶按照上题时的状态,系统会发生死锁吗?为什么?
三、综合题
1、如果有三个进程R、W1、W2共享一个缓冲器B,而B中每次只能存放一个数。
当缓冲器中无数时,进程R可以将从输入设备上读入的数存放到缓冲器中。
若存放到缓冲器中的是奇数,则允许进程W1将其取出打印;若存放到缓冲器中的是偶数,则允许进程W2将其取出打印。
同时规定:进程R必须等缓冲区中的数被取出打印后才能再存放一个数;进程W1或W2对每次存入缓冲器的数只能打印一次;W1和W2都不能从空缓冲中取数。
写出这三个并发进程能正确工作的程序。
2、设计一种可以避免死锁的资源分配算法,要求写明数据结构和相应方案或算法。
3、写一个管程,用于实现读者——写着问题,要求写者优先。
4、生产者消费者问题
5、请设计检测资源分配时系统是否安全的安全检测方案。
6、有一个仓库,可以存放A和B两种产品,但要求:1)每次只能存入一种产品(A或B);2)-N<A产品数量—B产品数量<M。
其中,N和M是正整数。
试用同步算法描述产品A与产品B的入库过程。
7、在一个系统中,不采用死锁避免和预防措施,但当死锁发生后需要能够检测出来,请设计一个可行的死锁检测方案。
8、一个数据文件或记录(统称数据对象),可被多个进程共享。
有些读进程要求读,而另一些写进程对数据对象进行写或修改。
允许多个写进程同时读一个共享对象,决不允许一个写进程和其他读进程或写进程同时访问共享对象。
请用信号量或管程为工具,实现读写进程并发的正确管理。
9、假定有一个信箱可存放N封信,当信箱不满时发信者可把信件送入信箱;当信箱中有信时收信者可从信箱中取信。
用指针R,K分别表示可存信和取信的位置,请用信号量来管理这个信箱,使发信者和收信者能正确工作。
10、考虑三个吸烟者进程和一个经销商进程的系统。
每个吸烟者连续不断地做烟卷并抽他做好的烟卷,做一支烟卷需要烟草、纸和火柴三种原料。
这三个吸烟者
分别掌握有烟草、纸和火柴。
经销商源源不断地提供上述三种原料,但他只将其中的两种原料放在桌上,具有另一种原料的吸烟者就可以做烟卷并抽烟,且在做完后给经销商发信号,然后经销商再拿出两种原料放在桌上,如此反复。
试设计一个同步算法来描述他们的活动。
11、现有四个进程R1、R2、W1、W2,它们共享可以存放一个数的缓冲器B。
进程R1每次把来自键盘的一个数存入缓冲器B中,供进程W1打印输出;进程R2每次从磁盘上读一个数存放到缓冲器B中,供进程W2打印输出。
为防止数据的丢失和重复打印,问怎样用信号量操作来协调这四个进程的并发执行。
12、信号量方法控制进程的执行顺序。
13、a,b两点之间是一段东西向的单行车道,现要设计一个自动管理系统,管理规则如下:当ab之间有车辆在行驶时同方向的车可以同时驶入ab段,但另一方向的车必须在ab段外等待;当ab之间无车辆在行驶时,到达a点(或b点)的车辆可以进入ab段,但不能从a点和b点同时驶入,当某方向在ab段行驶的车辆驶出了ab段且暂无车辆进入ab段时,应让另一方向等待的车辆进入ab段行驶。
请用信号量机制为工具,对ab段实现正确管理以保证行驶安全。
14、哲学家就餐问题
15、某寺庙有小和尚和老和尚各若干人,水缸一只,由小和尚提水入缸给老和尚饮用。
水缸可容水10桶,水取自同一口水井中。
水井径窄,每次仅能容一只水桶取水,水桶总数为3个。
若每次入、取水仅为1桶,而且不可同时进行。
试用一种同步工具写出小和尚和老和尚的活动过程。