2011计算机考研操作系统资料
- 格式:doc
- 大小:126.50 KB
- 文档页数:15
答案:
1. 2011年考研真题
44.
对于直接映射方式的解释:若Cache总共分为m块,那么Cache的行号i和主存的块号j 有如下关系:i=j%m。
46.
2. 2010年考研真题
45.
(1)2KB = 2*1024*8bit = 16384bit。
因此可以使用位图法进行磁盘块空闲状态管理,(勤思考研)每1bit表示一个磁盘块是否空闲。
(2)每分钟6000转,转一圈的时间为0.01s,通过一个扇区的时间为0.0001s。
根据CSCAN算法,被访问的磁道号顺序为100 →120 → 30→ 50 → 90,因此,寻道用去的总
时间为:(20 + 90 + 20 + 40)* 1ms = 170ms
总共要随机读取四个扇区,用去的时间为:(0.01*0.5 + 0.0001)*4 = 0.0204s = 20.4ms 其中,0.01*0.5为平均旋转延迟,0.0001为读取一个磁道上一个扇区的平均时间。
所以,读完这个扇区点共需要170ms + 20.4ms = 192.4ms。
46.。
2011年计算机考研统考真题【1】设n是描述问题规模的非负整数,下面的程序片段的时间复杂度是()。
x=2;while(x<n/2)x=2*x;A.O(log2n)B.O(n)C.O(nlog2n)D.O(n2)【解析】A。
容易看出,程序基本操作为x=2*x;基本操作执行的次数即为程序的时间复杂度,因此可设基本操作执行k次结束,则有:执行第1次:x=2×2=21+1=4;执行第2次:x=4×2=22+1=8;执行第3次:x=8×2=23+1=16;……执行第k次:x=2k+1。
由循环结束条件知:x<n/2,即2k+1<n/2时结束,即k<log2n-2,即k=log2n+C(为方便说明,其中C为起修正作用的常数)。
综上得:时间复杂度为O(log2n)。
【2】元素a,b,c,d,e依次进入初始为空的栈中,若元素进栈后可停留、可出栈,直到所有元素都出栈,则在所有可能的出栈序列中,以元素d开头的序列个数是()。
A.3B.4C.5D.6【解析】B。
若要保证出栈序列以d开头,则前三个元素必连续进栈,中间不能出现出栈的情况,然后d出栈,此时栈内元素由底到顶为,a,b,c,栈外元素为e,出栈序列中元素为d。
因为a,b,c三个元素在栈内的顺序已定,由栈的先进后出原则,其在出栈序列中的相对位置必为…c…b…a…;加上d的位置已定,所以出栈待定序列必为d…c…b…a…。
显然在栈外的e可以在任何时候出栈入栈,即可以出现在以上待定序列中任何一个省略号的位置,即出栈序列可为:1:d,e,c,b,a;2:d,c,e,b,a;3:d,c,b,e,a;4:d,c,b,a,e。
【3】已知循环队列存储在一维数组A[0…n-1]中,且队列非空时front和rear分别指向队头和队尾元素。
若初始时队列为空,且要求第1个进入队列的元素存储在A[0]处,则初始时front和rear的值分别是()。
数据结构第一题,关于时间复杂度int i=1;while(i<n/2)i=i*2;选A:O(logn)第二题a,b,c,d,e进栈,可以出栈,再进栈,以d为首的出栈顺序选B ,4个第三题,队列的队首和队尾分别指向最早进队,最后进队的元素,为使第一个进队元素在A[0],front和rear分别指向?选项有0,0;0,n-1;n-1,0;n-1,n-1;貌似选A和C的都有。
第四题。
求完全二叉树的叶子结点个数。
大家都会吧。
选C。
第五题,前序遍历1234,后序遍历4321,问中序不可能是A:1234 B 2341 C 3214 D 4321选C(三四五之间顺序可能有错)第六题:2011个结点的树,116个叶子结点,转化成二叉树后没有右孩子的结点个数选项是115,116,1895,1896选D的比较多第七题:一堆二叉树的排序序列,不可能的是哪个,选A。
第八题关于图的判断哪几个正确的。
一是环路是简单回路(更正),二是邻接矩阵适合稀疏图,三是某图如果存在拓扑排序则不存在环路。
貌似只有三是对的。
第九题判断哪几个正确的。
提高散列表查找效率的选择。
一是提高装填因子,二是设计合理的函数处理碰撞。
三,忘了,也是什么减少碰撞的反正见到几个选D的第十题。
快速排序的存储结构:大家选A的多,顺序结构。
十一题:堆排序的调整。
选B的多,2次。
A:1次。
C:3次D:4次。
组成原理12 用于表示浮点数运算的性能指标。
显然选D,MFLOPS。
13 不能随机访问的存储器,A EPROM,B CDROM C和D是SRAM和DRAM (C和D具体哪个是哪个我不知道)选B的多。
14 考查IEEE754标准。
-8.25的表示。
选A。
C104XXXXX。
15 考查存储器的,引用某位道友的回忆,逻辑可寻址的范围为2^26,物理内存的寻址范围2^25,问MAR的位数至少是多少见过几个选C的,25位。
也有选26位的。
16 记得了,很简单的一道!不需要偏移地址的指令寻址方式。
操作系统一、分析设计题1.桌子上有一个盘子,可以放一个水果,爸爸总是放苹果到盘子中,而妈妈总是放香蕉到盘子中,一个儿子专等吃盘子中的香蕉,而一个女儿专等吃盘子中的苹果,请用wait.、single原语来实现爸爸、妈妈、儿子和女儿之间的同步互斥关系。
Empty:记录允许向盘子中放水果的个数,初值为1Apple:是否允许从盘子中取苹果初值是0Banana :是否允许从盘子中取香蕉初值是0Mutex::向盘中取、放操作是一个互斥操作,也就说盘子对于取、放水果而言是一个临界资源,为此设置一个信号量,其初值为12.有一个阅览室,读者进去时必须先在一张登记表上进行登记,该表为每一座位列出一个表目,包括座位号、姓名,读者离开时撤销登记信息。
阅览室共有100个座位,试用wait 、single操作描述这些进程间的同步关系。
Seats:表示阅览室中空座位数,其值为100Readers:记录阅览室中的读者数,其初值为0Mutex:互斥信号(对读者而言,阅览室是一个临界资源,任何时刻最多只有一位读者填写登记表或撤销登记)其初值为1。
(1、2中任选1题)3.某操作系统采用从他分区存储管理技术。
操作系统在低地址站用了100KB的空间,用户区主存从100KB处开始占用512KB。
初始时,用户区全部为空闲,分配时截取空闲分区的低地址部分座位已分配区。
在执行以下申请,释放操作序列后,请求300KB,请求100KB,释放300KB,请求150KB,请求50KB,请求90KB,进行如下回答(1)采用首次适应算法时,主存中有哪些空闲分区?画出主存分布图,并指出空闲分区的首地址和大小(2)采用最佳适应算法时,主存中有哪些空闲分区?画出主存分布图,并指出空闲分区的首地址和大小(3)若随后又请求80KB,针对上述两种情况产生什么后果?说明为什么?二、进程管理部分1.进程与线程的典型应用分析2.进程通信中有阻塞和无阻塞现象3.静态优先级与动态优先级4.进程中的调度与切换5.实时系统中的一种互斥方法三、应用型题目1.现代操作系统调度策略研究2.关于操作系统发展的现状的研究3.操作系统的研究意义4.当前操作系统的创新之处和存在问题5.嵌入式操作系统应用研究6.嵌入式操作系统面向领域的扩展技术研究7.基于.NET平台的分布式应用系统的研究及应用8.面向对象技术在实时系统中研究与应用9.文件管理分析研究(在操作系统中如果你做文件管理,你认为文件该如何管理?)。
2011 操作系统考研真题及答案1、下列的选项中,满足短任务优先且不会发生饥饿现象的调度算法是( B )A、先来先服务B、高响应比优先C、时间片轮转D、非抢占式短任务优先2、下列选项中,在用户态执行的是( A )A、命令解释程序B、缺页处理程序C、进程调度程序D、时钟中断处理程序3、在支持多线程的系统中,进程P创建的若干个线程不能共享的是( D )A、进程P的代码段B、进程P中打开的文件C、进程P的全局变量D、进程P中某线程的栈指针4、用户程序发出磁盘I/O请求后,系统的正确处理流程是( B )A.用户程序→系统调用处理程序→中断处理程序→设备驱动程序B.用户程序→系统调用处理程序→设备驱动程序→中断处理程序C.用户程序→设备驱动程序→系统调用处理程序→中断处理程序D.用户程序→设备驱动程序→中断处理程序→系统调用处理程序5此时的安全序列是( D )A、P1,P2,P3,P4B、P1,P3,P2,P4C、P1,P4,P3,P2D、不存在6、在缺页处理过程中,操作系统执行的操作可能是( D )I、修改页表II、磁盘I/O III、分配页框A、仅I、IIB、仅IIC、仅IIID、I、II和III7、当系统发生抖动(thrashing)时,可以采取的有效措施是( A )I、撤销部分进程II、增加磁盘交换区的容量III、提高用户进程的优先级A、仅IB、仅IIC、仅IIID、仅I、II8、在虚拟内存管理中,地址变换机构将逻辑地址变换为物理地址,形成该逻辑地址的阶段是( B )A、编辑B、编译C、链接D、装载9、某文件占10个磁盘块,现要把该文件磁盘块逐个读入主存缓冲区,并送用户区进行分析。
假设一个缓冲区与一个磁盘块大小相同,把一个磁盘块读入缓冲区的时间为100μs,将缓冲区的数据传送到用户区的时间是50μs,CPU对一块数据进行分析的时间为50μs。
在单缓冲区和双缓冲区结构下,读入并分析完该文件的时间分别是(B )A、1500μs、1000μsB、1550μs、1100μsC、1550μs、1550μsD、2000μs、2000μs10、有两个并发执行的进程P1和P2,共享初值为1的变量x。
《操作系统》11级试卷B参考答案及评分标准二、填空题1.资源程序2.互斥同步3.功能号恢复现场4.一代码5.设备驱动设备无关6.空闲让进让权等待7. 非抢占短进程优先8.物理逻辑(可对换)9.160 300 10. 0BD 28BD三、看图分析题1.└4800000/512┘=9375;4800000mod512=0 (1分)因为9375>521,所以应按二次间接寻址9375-521=8854 (1分)└8854/512┘=17;8854mod512=150 (1分)在二次间接块的17表目、一次间接块的150表目处寻找到数据块9375,在块内位移量为0。
(2分)2.①运行—就绪: 时间片到时,或有更高优先级的进程出现(2分)②就绪—运行: 被调度程序选中(1分)③运行—等待: 等待某事件发生(1分)④等待—就绪: 等待的事件发生了(1分)四、计算分析题带权平均周转时间:T2s=(60/60+60/20+70/30+70/10)/4=3.3(1分)抢占式短作业优先(3分)带权平均周转时间:T2s=(120/60+20/20+40/30+10/10)/4=1.33(1分)2.P表示引用串;M表示主存页面号:F表示是否缺页,×缺页,√在内存(1分)FIFO先进先去(2分)LRU最长最久未使用(2分))OPT最优置换(2分3.(10分)基于银行家算法的资源分配(i)在T0时刻存在安全序列< P1, P3, P0, P2, P4>,所以系统是安全的。
(3分)(ii)P3在T1时刻发出请求向量Request3(0, 1, 0)①系统按银行家算法进行检查:(1分)(A) Request3 (0,1,0)<=Need3 (0,1,1),资源申请合理;(B) Request3(0,1,0)<=A vailable(2,2,0),可利用资源总量可以满足资源申请;②系统试探性地满足P0请求,并对系统状态进行修改:(1分)A vailable(2,1,0),Allocation3 (2,2,1),Need3 (0,0,1);③系统调用安全性算法进行资源分配检查:(3分)由此可知,存在安全序列< P1, P3, P0, P2, P4>,所以系统安全,可以执行分配。
历年操作系统考研真题注:所附答案为个⼈整理,不是标准答案,仅供参考。
2009年计算机专业考研真题——OS⼀、试题23. 单处理机系统中,可并⾏的是()。
I. 进程与进程II. 处理机与设备III. 处理机与通道IV. 设备与设备A. I、II和IIIB. I、II和IVC. I、III和IVD. II、III和IV24. 下列进程调度算法中,综合考虑进程等待时间和执⾏时间的是()。
A. 时间⽚轮转调度算法B. 短进程优先调度算法C. 先来先服务调度算法D. ⾼响应⽐优先调度算法25. 某计算机系统中有8台打印机,有K个进程竞争使⽤,每个进程最多需要3台打印机。
该系统可能会发⽣死锁的K的最⼩值是()。
A. 2B. 3C. 4D. 5【解析】3k<8+k => k<4(n个进程共享m个同类资源,若每个进程都需要⽤该类资源,⽽且各进程对该类资源的最⼤需求量之和⼩于m+n。
则该系统不会因竞争该类资源⽽阻塞。
)26. 分区分配内存管理⽅式的主要保护措施是()。
A. 界地址保护B. 程序代码保护C. 数据保护D. 栈保护27. ⼀个分段存储管理系统中,地址长度为32位,其中段号占8位,则段长最⼤是()。
A. 2的8次⽅字节B. 2的16次⽅字节C. 2的24次⽅字节D. 2的32次⽅字节28.下列⽂件物理结构中,适合随机访问且易于⽂件扩展的是()。
A. 连续结构B. 索引结构C. 链式结构且磁盘块定长D. 链式结构且磁盘块变长29. 假设磁头当前位于第105道,正在向磁道序号增加的⽅向移动。
现有⼀个磁道访问请求序列为35,45,12,68,110,180,170,195,采⽤SCAN调度(电梯调度)算法得到的磁道访问序列是()。
A. 110,170,180,195,68,45,35,12B. 110,68,45,35,12,170,180,195C. 110,170,180,195,12,35,45,68D. 12,35,45,68,110,170,180,19530. ⽂件系统中,⽂件访问控制信息存储的合理位置是()。
2011年10月自考操作系统复习资料二计算机系统是由硬件系统和软件系统两部分组成,操作系统是软件系统的一个组成部分,它是直接在硬件系统的基础上工作的,所以在研究操作系统之前,先必须对计算机系统的结构有一个基本的了解,本章就是讲述计算机系统结构的基本知识。
本章的考核知识点是:1.计算机系统的层次结构2.硬件环境3.操作系统结构学习本章要求:了解计算机系统的结构,有关硬件的I/O中断和存储结构,硬件的保护措施;有关操作系统的结构,操作系统提供的使用接口。
重点是:硬件环境和操作系统的结构一、计算机系统的层次结构( 识记)现代的通用计算机系统是由硬件和软件组成的一种层次式结构,最内层是硬件系统,最外层是使用计算机系统的人,人与硬件系统之间是软件系统操作系统的运行方式中断机制中央处理器CPU 在任何时刻只能被一个程序占用,在它执行程序的时候,如果有另外的事件发生,比如用户又打开了一个程序,那么这时候怎么办呢? 这就需要由计算机系统的中断机制来处理了。
中断机制包括硬件的中断装置和操作系统的中断处理服务程序。
当出现新的事件时,中断装置就判别到有新事件发生,于是送出一个中断信号,告诉操作系统,操作系统根据这个中断的优先级来确定先执行新事件还是继续执行原来的任务。
中断现场的保护和恢复二、硬件环境(识记)(1)CPU和外设的并行工作在一台通用的计算机系统中,通过输入输出控制系统完成外围设备与主存储器之间的信息传送。
各种外设连接在相应的设备控制器上,通过通道把设备控制器连接到公共的系统总线上。
这种结构允许CPU和各种外围设备同时并行工作。
(2)I/O中断的作用当中央处理器执行到一条“启动外设”指令时,便把设备的控制权交给输入输出控制系统,然后,中央处理器和外围设备便可以并行工作,直到外设工作完成。
之后,会形成一个“I/O 中断”事件(输入输出结束),通知操作系统的服务处理程序完成后继工作。
利用硬件的中央处理器与外围设备的并行工作能力,以及各外围设备之间的并行工作能力,操作系统能让多个程序同时执行。
(清华大学1998年试题)(判断题)判断对与错:①进程由进程控制块和数据集以及对该数据集进行操作的程序组成。
②进程上下文是进程执行活动全过程的静态描述。
③并发是并行的不同描述,其原理相同。
提示:本题考核的是进程的结构、进程上下文,及进程的特征。
涉及的内容有:①进程的结构由PCB、数据集和程序代码组成。
②进程上下文是进程执行活动全过程的描述,主要包括系统中与执行该进程有关的各种寄存器的值,比如数据寄存器、地址寄存器和程序状态字(PSW),还有程序段经编译后形成的机器指令集、数据集及各种堆栈值和PCB结构等。
③程序的并发执行是指,一组在逻辑上互相独立的程序或程序段在执行时间上相互重叠,即一个程序段尚未结束,另一个程序段的执行已经开始。
应当注意,并发性和并行性是决然不同的。
程序的并行执行是指一组程序同时按独立的、异步的速度执行;而并发性是指程序执行时间上的重叠,不等于程序同时运行。
【第四题】(南京大学1997年试题)(论述题)操作系统中为什么要引入进程的概念?为了实现并发进程间的合作和协调工作,以及保证系统的安全,操作系统在进程管理方面应做哪些工作?提示:本题考核进程的一般概念。
涉及的内容有:①让程序并发方式执行,能够充分利用系统资源,提高系统的处理能力。
但由于系统资源是有限的,诸多并发执行的程序在共享资源的同时,必将引起资源的竞争。
此时如果不制定特定的规则和方法,必将使这种共享和竞争呈现无序状态。
程序的执行结果也将不可避免地失去封闭性和可再现性,从而得不出正确的、预期的结果。
正因为如此,多道程序设计中需要引入一个能描述程序执行过程,且能用来共享资源的基本单位——那就是“进程”。
因此,进程可以被定义为“可并发执行的程序在一个数据集合的执行过程”。
②操作系统对进程管理方面应做如下工作:进程控制。
包括进程创建与撤消,进程在运行过程中的状态转换,以及实现对进程控制块的维护等操作。
∙ 进程调度。
操作系统必须按一定算法在就绪进程中选择一个进程,把处理机分配给它,使它顺利地投入运行。
为此,进程调度应具有CPU 现场信息的保护和恢复功能。
∙ 进程同步。
对于一组合作的进程,它们的推进速度应当受到某种约束,以便协调一致地向前推进。
因此系统必须设立同步控制机制,对所有进程的运行进行协调。
协调方式包括进程互斥方式和进程同步方式。
∙ 进程通信。
在多道程序环境下,进程之间往往要互相发送一些信息。
操作系统应提供有关的通信调用和通信规范,保证实现这些进程之间的信息交换。
进程之间的通信种类是很多的,控制机制也有很多。
(西安电子科技大学2001年试题)1.请回答下列问题:(1)该系统采用了怎样的进程调度算法?说明理由。
(2)把图中发生①-④的状态变化原因填入下表中。
(1)该系统采用的是“时间片轮转调度算法”。
该调度算法让就绪进程按就绪的先后次序排成队列,每次总是选择就绪队列中的第一个进程占用处理器,但规定只能使用一个“时间片”。
如果一个时间片用完,进程工作尚未结束,则它也必须让出处理器而被重新排到就绪队列的末尾,等待再次运行,当再次轮到运行时,重新开始使用一个新的时间片。
这样,就绪队列中的进程就依次轮流地占用处理器运行。
(2)③注意(南京大学2001年试题).________可能会引起处理机从一个进程转到另一个进程。
(A )一个进程从运行状态变为等待状态 (B )一个进程从运行状态变为就绪状态 (C )一个就绪状态进程的优先级降低 (D )一个进程运行完成而撤离系统 (E )一个就绪状态进程的优先级升高 【答案】ABDE【第一题】(青岛大学2002年试题)青岛崂山有一处景点称作上清宫,游客在宫内游玩之后可以在宫门口免费搭乘轿车游览崂山的风景区,游览完毕再返回宫门口(如下图所示)。
已知风景区内的轿车总量为M 辆,游客总数为N ,约定: (1)每辆轿车限乘一位游客;(2)如果有空闲的轿车,应当允许想游览的游客乘坐; (3)无空闲轿车时,游客只能排队等待; (4)若没有想游览的游客,空闲的轿车也要等待。
试利用P 、V 操作实现N 个游客进程与M 辆轿车进程的同步操作过程。
提示:本题中游客乘坐轿车游览风景区是免费的,因此程序设计中不需要考虑付费环节。
分析:本题考核的要点是进程同步问题。
我们定义了3个信号量car_avail,car_taken和take_off,实现游客进程与轿车进程的同步操作。
BeginSemaphore:car_avail,car_taken,take_off;car_avail:=0; car_taken:=0; take_off:=0;cobeginprocess passenger()begin逛上清宫;P(car_avail);Take_in_car(); // 游客上车V(car_taken);P(finished);Take_off_car(); // 游客下车V(that_off);endprocess car()beginrepeatV(car_avail);P(car_taken);Take_a_visit(); // 游览崂山风景区;V(finished);P(that_off);Until false;endcoendend.【第二题】(西安电子科技大学2000年试题)有一个理发师,一把理发椅和n把供等候理发的顾客坐的椅子。
如果没有顾客,则理发师便在理发椅子上睡觉;当一个顾客到来时,唤醒理发师进行理发。
如果理发师正在理发时又有新顾客到来,有空椅子可坐,他就坐下来等,如果没有空椅子,就立即离开。
为理发师和顾客各编一段程序描述他们的行为,要求不能带有竞争条件。
分析:这是一个比较复杂的进程同步问题。
需要设计两个进程:∙顾客进程Customer()∙理发师进程Barber()特定义两个信号量customers和barbers实现进程的同步,并定义信号量S实现进程的互斥。
程序代码如下:Begin// 定义信号量并初始化int CHAIRS:= n //为等候的顾客准备的椅子数semaphore: customers=0;semaphore: barbers=0;semaphore: cut=0;semaphore: finish=0;semaphore: mutex=1; //用于互斥的信号量int waiting=0;Cobegin//定义并发进程Process Customer(){P(mutex);if(waiting>CHAIRS)thenV(mutex) //没有空椅子,离开else{w aiting=waiting+1;V(mutex);V(customers); // 唤醒理发师SIT_ON_chair(); // 坐在椅子上等候P(barbers); // 等待理发召唤Stand_up(); // 从椅子上起身P(mutex);注意waiiting=waiting-1; V(mutex);SIT_ON_cut_chair(); // 坐在理发椅上V(cut); // 告诉理发师可以开始理发P(finish); // 等待理发完成}}void barber(){while(T){P(customers); // 等待顾客到来Clear_cut_chair(); // 整理一下理发椅子V(barbers); // 召唤一个顾客P(cut); // 等待顾客就座CUT_hair(); // 理发V(finish); // 告诉顾客已结束}}Coend// 并发进程的定义结束End.讨论:①代码中带阴影的部分可以从顾客进程移到理发师进程中处理。
②该算法中没有涉及顾客理发后的付款过程。
【第三题】(中国科学技术大学1998年试题)(程序阅读)何谓临界区?下面给出的实现两个进程互斥的算法是安全的吗?为什么?#define TRUE;#define FALSE;int flag[2];flag[0]=flag[1]=FALSE;enter-crtsec(i)int i;{WHILE(flag[1-i]);flag[i]=TRUE;}leave-crtsec(i)int i;{flag[i]=FLASE;}process I: /*i=0 OR I=1*/……enter-crtsec (i); /*进入临界区*/IN CRTICAL SECTIONLeave-crtsec(i); /*离开临界区*/……提示:本题的考核要点是临界资源访问。
①临界资源指的是一次仅允许一个进程使用的资源。
在进程中用于访问临界资源的程序段称为临界区(CRTICAL SECTION)。
由于系统中的各进程在逻辑上是独立的,因此它们各自以独立的速度向前推进。
然而它们又都需要系统中的资源,当这些资源为临界资源时,就产生了互斥访问的问题。
临界区的概念由此产生。
②本题给出的算法是不安全的。
因为,在进入临界区前执行的过程enter-crtsec()和退出临界区后执行的过程Leave-crtsec()都不是原子操作。
因而不能避免两个或更多进程进入临界区。
【第四题】(南京大学2000年试题)为了让用户进程互斥地进入临界区,可以把整个临界区实现成不可中断的过程,即让用户具有屏蔽所有中断的能力。
每当用户程序进入临界区的时候,屏蔽所有中断。
当出了临界区的时候,再开放所有中断。
你认为这种方法有什么缺点。
提示:本题考核的要点是临界资源的使用。
为了达到互斥使用临界资源的目的,将访问临界资源的程序放在中断被屏蔽的状态下运行。
这样做虽然可以达到互斥访问的目的,但并不可取。
因为,一般情况下,进程对临界资源的访问时间都比较长,比如访问内存中的一个缓冲区环,就需要判断环内是否已满或为空,然后对当前缓冲区进行访问,最后再移动环上的指针。
如果让中断屏蔽时间拖的太长,有可能错过对某些特别紧迫的中断信号的响应,以致丧失了最佳处理时机。
【第五题】(中国科学院计算技术研究所1996年试题)Dijkstra提出的银行家算法的主要思想是什么?它能够用来解决实际中的死锁问题吗?为什么?提示:本题的考核要点是银行家(Banker)算法。
涉及的内容有:①银行家算法是一种解决死锁问题的方法。
该算法模拟了银行在经营中的贷款策略。
当用户提出资源请求时,先计算该次分配后是否会导致系统不安全,即是否存在一种顺序,使得所有的进程都能执行结束。
若安全则将资源分配给用户,否则拒绝分配。
②从理论上说,该算法有是很有意义的,但在实际实施中却有一定难度。
因为算法所假设的一些条件太多,诸如,让用户提交作业需求资源的最大数目并不容易,算法本身涉及的数据结构太复杂等。
③银行家算法比较耗时,而每当一个用户提出资源请求时,都需要调用银行家算法测算一遍,无形中使系统的开销加大,降低了处理机的利用率。