《操作系统课后习题.docx》由会员分享,可在线阅读,更多相关《操作系统课后习题.docx(11页珍藏版)》请在三一办公上搜索。
1、操作系统课后习题第一章1、设计现代OS的主要目标是什么?答:其主要目标是有效性、方便性、可扩充性、开放性。9、OS有哪几个特征?其最基本的特征是什么?答:OS 有并发、共享、虚拟和异步这四个基本特征。并发特征是操作系统最重要的特征;14、是什么原因使操作系统具有异步性特征?答:进程是以人们不可预知的速度向前推进,此即进程的异步性。第二章4、程序并发执行时为什么会失去封闭性和可再现性?答:程序在并发执行时,是多个程序共享系统中的各种资源,因而这些资源的状态将由多个程序来改变,致使程序的运行换去了封闭性,这样,某程序在执行时,必然会受到其它程序的影响。程序在并发执行时,由于失去了封闭性,也将导致其
2、再失去可再现性。5、在操作系统中为什么要引入进程的概念?它会产生什么样的影响?答:因为使程序能并发执行,且为了对并发执行的程序加以描述和控制,人们引入了“进程”的概念。8、试说明进程在三个基本状态之间转换的典型原因。答:处于就绪状态的进程,在调度程序为之分配了处理机之后,该进程便可执行,相应地,它就由就绪状态转变为执行状态。正在执行的进程也称为当前进程,如果因分配给它的时间片已完而被暂停执行时,该进程便由执行状态又回复到就绪状态;如果因发生某事件而使进程的执行受阻,使之无法继续执行,该进程将由执行状态转变为阻塞状态。21、如何利用信号量机制来实现多个进程对临界资源的互斥访问?举例说明。答:为使
3、多个进程能互斥地访问某临界资源,只须为该资源设置一互斥信号量mutex,并设其初始值为1,然后将各进程访问该资源的临界区CS置于wait和signal操作之间即可。这样,每个欲访问该临界资源的进程,在进入临界区之前都要先对mutex执行wait操作,若该资源此刻未被访问,本次wait操作成功,进程便可进入自己的临界区,这时若再有其他进程也欲进入自己的临界区,由于对mutex执行wait操作必然失败,因而阻塞,从而保证了该临界资源能被互斥地访问。当访问临界资源的进程退出临界区后,又应对mutex执行signal操作,释放该临界资源。利用信号量实现进程互斥地进程可描述如下:Var mutex:se
4、maphore :=1;BeginParbeginProcess 1 : beginRepeatWait(mutex);Critical sectionSignal(mutex);Remainder sectionUntil false;EndProcess 2 : beginRepeatWait(mutex);Critical sectionSignal(mutex);Remainder sectionUntil false;EndParend24、试修改下面生产者-消费问题中,如果将两个wait操作即wait(full)和wati(mutex)互换位置,或者将signal(mutex)与s
5、ignal(full)互换位置,结果会如何?答:.a. wait(full)和wait(mutex)互换位置后,因为mutex 在这儿是全局变量,执行完wait(mutex),则mutex赋值为0,倘若full 也为0,则该生产者进程就会转入进程链表进行等待,而生产者进程会因全局变量mutex 为0 而进行等待,使full 始终为0,这样就形成了死锁.b. 而signal(mutex)与signal(full)互换位置后,从逻辑上来说应该是一样的.25、我们为某临界资源设置一把锁W,当W=1 时表示关锁;当W=0时表示锁已打开,试写出开锁和关锁原语,并利用它们去实现互斥。整型信号量:lock(
6、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;end第三章2、在抢占调度方式中,抢占的原则是什么?答:抢占调度方式是1、优先权原则:通常是对一些重要的和紧急的作业赋予较高的优先权。2、
7、短作业优先原则:当新到达的作业比正在执行的作业明显的短时,将轻暂停当前长作业的执行,将处理机分配给新到的短作业,使之优先执行;或者说,短作业或以抢占当前较长作业的处理机。时间片原则:各进程按时间片轮流运行,当一个时间片用完后,便停止该进程的执行而重新进行调度。4、在批处理系统、分时系统和实时系统中,各采用哪几种进程调度算法?答:在批处理系统中,为了照顾为数众多的短作业,应采用短作业优先的调度算法;在分时系统中,为了保证系统具有合理的响应时间,应采用轮转法进行调度;在实时操作系统中,应采用实时调度。6. 试比较FCFS和SPF 两种进程调度算法相同点:两种调度算法都是既可用于作业调度,也可用于进
8、程调度;不同点:FCFS 调度算法每次调度都是从后备队列中选择一个或是多个最先进入该队列的作业,将它们调入内存,为它们分配资源,创建进程,然后插入到就绪队列中。该算法有利于长作业/进程,不利于短作业/进程。SPF 调度算法每次调度都是从后备队列中选择一个或若干个估计运行时间最短的作业,将它们调入内存中运行。该算法有利于短作业/进程,不利于长作业/进程。7.为什么说多级反馈队列能较好地满足各种用户的需要?A对于终端型作业用户,由于终端型作业用户所提交的作业,大都属于交互型作业,系统只要能使这些进程在第一队列所规定的时间内完成,便可使终端型作业用户都感到满意。B.对于短批处理作业用户,很短的批处理
9、型作业如果仅紫第一队列中执行一个时间片即可完成,便可获得与终端型号作业一样的相应时间,对于稍长的作业,通常也只需要在第二队列和第三队列中各执行个时间片即可完成,其周转时间仍然很短。C.对于长批处理作业用户,用户也不必担心其作业长期得不到处理。11.什么事最低松弛度有限调度算法?举例说明。答:该算法是根据任务紧急程度,来确定任务的优先级。任务的紧急程度越高,为该任务所赋予的优先级就越高,以使之优先执行。例如,一个任务在200ms时必须完成,而它本身所需要的运行时间就有100ms,因此,调度程序必须在100ms之前调度执行,该任务的紧急程度为100ms。在实现该算法时要求系统中有一个按松弛度排序的
10、实时任务就绪队列,松弛度最低的任务排在队列最前面,调度程序总是选择就绪队列中的队首任务执行。18.请详细说明可通过哪些途径预防死锁。答:1、摒弃“请求和保持”条件:在采用这种方法时,系统规定所有进程在开始运行之前,都必须一次性地申请其在整个运行过程所需的全部资源。此时,若系统有足够的资源分配给某进程,便可把其需要的所有资源分配给该进程,这样,该进程在整个运行期间便不会再提出资源要求,从而摒弃了请求条件。2、摒弃“不剥夺”条件:在采用这种方法时系统规定,进程是逐个地提出对资源的要求的。当一个已经保持了某些资源的进程,再提出新的资源请求而不能立即得到满足时,必须释放它已经保持了的所有资源,等以后需
11、要时再重新申请。这意味着某一进程已经占有的资源,在运行进程中会被暂时地释放掉,也可认为是被剥夺了,从而摒弃了“不剥夺”条件。3、摒弃“环路等待”条件:在这种方法中规定,系统将所有资源按类型进行线性排队,并赋予不同的序号。所有进程对资源的请求必须严格按照资源序号递增的次序提出,这样,在所形成的资源分配图中,不可能再出现环路,因而摒弃了“环路等待”条件。第四章5、为什么要引入动态重定位?如何实现?答:a. 为了在程序执行过程中,每当访问指令或数据时,将要访问的程序或数据的逻辑地址转换成物理地址,引入了动态重定位.b. 可在系统中增加一个重定位寄存器,用它来装入(存放)程序在内存中的起始地址,程序在
12、执行时,真正访问的内存地址是相对地址与重定位寄存器中的地址相加而形成的,从而实现动态重定位12、在具有块表的段页式存储管理方式中,如何实现地址变换?答:首先,必须配置一段表寄存器,在其中存放段表始址和段长TL。进行地址变换是,先利用段号S,与段长TL进行比较,若S<TL,表示未越界,于是利用段表始址和段号来求出该段对应的段表项在段表中的位置,丛中求出该段的页表始址,并利用逻辑地址中的段内页号P来获得对应页的页表项位置,从中读出该页所在的物理块号b,再用块号b和页内地址构成物理地址。14、分页和分段存储管理有何区别?答:主要表现在页是信息的物理单位,分页是为实现离散分配方式,以消减内存的外零
13、头,提高内存的利用率。或者说,分页仅仅是由于系统管理的需要而不是用户的需要。段则是信息的逻辑单位,它含有一组其意义相对完整的信息。分段的目的是为了能更好地满足用户的需要。页的大小固定且由系统决定, 由系统把逻辑地址划分为页号和页内地址两部分,是由机器硬件实现的,因而在系统中只能有一种大小的页面;根据信息的性质来划分。分页的作业地址空间是一维的,即单一的线性地址空间,程序员只需利用一个记忆符,即可表示一个地址;而分段的作业地址空间则是二维的,程序员在标识一个地址时,即需给出段名,又需给出段内地址。16、虚拟存储器有哪些特征?其中最本质的特征是什么?答:多次性、对换性、虚拟性;值得说明的是,虚拟性
14、是以多次性和对换性为基础的,或者说,仅当系统允许将作业分多次调入内存,并能将内存中暂时不运行的程序和数据换至盘上时,才有可能实现虚拟存储器;而多次性和对换性又必须建立在离散分配的基础上。第五章8、试说明DMA的工程流程。答:当CPU 要从磁盘读入一数据块时,便向磁盘控制器发送一条读命令。该命令被送到其中的命令寄存器中。同时,还须发送本次要将数据读入的内存起始目标地址,该地址被送入内存地址寄存器中;本次要读数据的字数则送入数据计数器中,还须将磁盘中的源地址直接送至DMA 控制器的I/O 控制逻辑上,然后启动DMA 控制器进行数据传送,以后CPU 便可去处理其它任务。此后,整个数据传送过程便由DM
15、A控制器进行控制。当DMA 控制器已从磁盘中读入一个字的数据送入数据寄存器后,再挪用一个存储器周期,将该字传送到MAR 所指示的内存单元中。按着便对MAR 内容加1,将DC 内容减1.若减1 后DC 内容不为0,表示传送未完,便继续传送下一个字;否则,由DMA 控制器发出中断请求。9、引入缓冲的主要原因是什么?答:操作系统引入缓冲机制的主要原因归结为以下几点:缓和CPU与I/O设备间速度不匹配的矛盾;减少对CPU的终端频率,放宽对中断响应时间的限制;提高CPU与I/O设备之间的并行性。17、何谓设备虚拟?实现设备虚拟时所依赖的关键技术是什么?答:设备虚拟是指设备本身虽是独占设备,但经过某种技术
16、处理,可以把它改造成虚拟设备。实现设备邪虚拟:由于可虚拟设备是指一台物理设备在采用虚拟技术后,可变成多台逻辑上的所谓虚拟设备,因而说,一台可虚拟设备是可共享的设备,可以将它同时分配给多个进程使用,并对这些访问该设备的先后次序进行控制。18、试说明SPOOLing系统的组成。答1、输入井和输出井:这是在磁盘上开辟的两个大存储空间。2、输入缓冲区和输出缓冲区:为了缓和CPU和磁盘之间速度不匹配的矛盾,在内存中要开辟两个缓冲区,输入缓冲区和输出缓冲区。3、输入进程SPi 和输出进程SP0:这里利用两个进程来模拟脱机I/O 时的外围控制机。23.设备中断处理程序通常需要完成哪些工作?答:设备中断程序通
17、常需要完成以下工作:唤醒呗阻塞的驱动程序进程;保护被中断进程的CPU环境;分析中断原因、转入相应的设备中断处理程序;进行中断处理;恢复被中断进程的现场。第六章4、何谓逻辑文件?何谓物理文件?答:逻辑文件:这是从用户观点出发所观察到的文件组织形式,是用户可以直接处理的数据及其结构,它独立于文件的物理特性,又称为文件组织。物理结构:又称为文件的存储结构,是指文件在外存上的存储组织形式。这不仅与存储介质的存储性能有关,而且与所采用的外存分配方式有关。8、试说明顺序文件的结构及其优点。答:第一种是结构:各记录之间的顺序与关键字无关。第二种情况是顺序结构:指文件中的所有记录按关键字排列。可以按关键词的长
18、短从小到大排序,也可以从大到小排序;或按其英文字母顺序排序。顺序文件的最佳应用场合是对诸记录进行指存取时,即每次要读或写一大批记录时。此时,对顺序文件的存取效率是所有逻辑文件中最高的;此外,也只有顺序文件才能存储在磁带上,并能有效地工作。9、在链接式文件中常用哪种链接方式?为什么?答:采取离散分配方式:链接方式又可分为隐式链接和显式链接两种形式,。在彩隐式链接分配方式时,在文件目录的每个目录项中,都须含有指向链接文件第一个盘块和最后一个盘块的指针。显式链接这是指把用于链接文件各物理块的指针,显式地存放在内存的一张链接表中。19、有一计算机系统利用图6-33 所示的位示图来管理空闲盘块。盘块的大
19、小为1KB,现要为某文件分配量个盘块,试说明盘块的具体分配过程。分配量个盘块的过程如下:1、顺序扫描位示图,从中找到第一个值为0 的二进制位,得到其行号i=3,列号j=3。2、将所找到的二进制位转换成与之对应的盘块号。盘块号计算公式为:b=*16+3=35;3、修改位示图,令map3,3=1,并将该盘块分配出去。类似地,可使用相同的方法找到第二个值为0 的二进制位,得到行号i=4,列号j=7,其对应的盘块号为55,令mapi,j=1,并将该盘块分配出去。26、引入检查点的目的是什么?引入检查点后又如何进行恢复处理?答:引入检查点的目的,是使对事物记录表中事务记录的清理工作经常化,即每隔一定时间便做一次下述工作:首先是将驻留在易失性存储器中的当前事务记录表中的所有记录,输出到稳定存储器中;其次是将驻留在易失性存储器中的所有已修改数据,输出到稳定存储器中;然后是将事务记录表中的<检查点>记录,输出到稳定存储器中;最后是每当出现一个<检查点>记录时,系统便执行恢复操作,利用redo和undo过程实现恢复功能。
链接地址:https://www.31ppt.com/p-3549703.html