操作系统概念第七版习题答案(中文版)完整版 联系客服

发布时间 : 星期四 文章操作系统概念第七版习题答案(中文版)完整版更新完毕开始阅读9b5451d36f1aff00bed51e4b

b. 程度上可以任意大小和动态分配。

c. 程度上可以几个固定的尺寸,这些尺寸是预先确定的。

答:如果所有的程度上是相同的尺寸,大小是预先确定的,那么它简化了块分配计划。一个简单的位图或空闲状态的名单程度就足够了。如果程度上可以任意大小和动态分配,则更复杂的分配计划是必需的。这可能很难找到一个程度的适当规模而且它可能会存在外部碎裂.。人们可以使用好友系统分配器讨论了前几章设计一个适当的分配器。当程度上可以几个固定的尺寸,而这些尺寸可以预定,人们必须保持一个单独的位图或为每个名单给以可能大小.. 这项计划是中级复杂性和中级灵活性的比较。

11.2使用FAT链合作区块的档案来进行变化相联系的分配有哪些优势?

答:它的优势是,在访问块是储存在中间的文件时候,在FAT里跟踪指针可以决定它的位置,而不是访问所有个别区块中的档案顺序的方式找到指针的目标块。

通常情况下,大多数的FAT可缓存在存储器里 ,因此,指针可以通过记忆体确定,而不用通过磁盘块。

11.3假设有一个系统,它的空闲空间保存在空闲空间链表中:

a. 假设指向空闲空间链表的指针丢失了,系统能不能重建空闲空间链表,为什么?

b. 试想一个文件系统类似UNIX的使用与分配索引,有多少磁盘I / O操作可能需要阅读的内容,一个小地方的档案在a/b/c?假设此时没有任何的磁盘块,目前正在缓存。 c.设计一个方案以确定发生内存错误时候总不会丢失链表指针 答:

a.为了重建自由名单,因此有必要进行“垃圾收集” 。这就需要搜索整个目录结构,以确定哪些网页已经分配给了工作。这些剩余的未分配的网页可重新作为自由空间名单。 b.在自由空间列表里指针可存储在磁盘上,但也许在好几个地方。

c.指针可以存储在磁盘上的数据结构里或者在非挥发性RAM ( NVRAM. )

11.4有些档案系统允许磁盘存储将分配在不同级别的粒度。举例来说,一个文件系统可以分配4 KB的磁盘空间作为单一的一个4字节的块或8个512字节的块。我们如何能利用这种灵活性来提高性能?对自由空间管理做出哪些修改以支持这一功能?

答:此项计划将减少内部分裂。如果文件是5字节,然后可以分配4 KB的区块和两个毗连的512字节的块。除了维持一个位图的自由块,一个目前正在使用的区块内也将保持额外的状态。当所有的分块成为空闲时候,该分配器将不得不审查这笔额外分配状态分块和凝聚的分块,以获取更大的块。

11.5讨论一旦难以维持的一致性的系统导致计算机崩溃,如何性能优化的文件系统。 答:由于延迟更新数据和元数据可能出现最主要的困难。在希望同样的数据可能被更新时候更新可能会推迟,或更新的数据可能是临时性的,而且在不久后可能会被删除。

但是,如果系统崩溃,则不必致力于延迟更新,文件系统的一致都将被破坏。

11.6 设想一个在磁盘上的文件系统的逻辑块和物理块的大小都为512B。假设每个文件的信息已经在内存中,对3种分配方法(连续分配,链接分配和索引分配),分别回答下面的问题: A,逻辑地址到物理地址的映射在系统中怎么样进行的?(对于索引分配,假设文件总是小于512块长)

B,假设现在处在逻辑块10(最后访问的块是块10),限制想访问块4,那么必须从磁盘上读

多少个物理块)

答:设想Z是开始文件的地址(块数) ,

a.毗连。分裂逻辑地址由512的X和Y所产生的份额和其余的分别。 1:将X加入到Z获得物理块号码。 Y是进入该区块的位移。 2.:1

b.联系。分裂逻辑地址由511的X和Y所产生的份额和其余的分别。 1.:找出联系名单(将X + 1块) 。 Y + 1是到最后物理块的位移 2.:4

c.收录。分裂的逻辑地址由512的X和Y所产生的份额和其余的分别。

1.:获得该指数块到内存中。物理块地址载于该指数在所在地块10, Y是到理想的物理块的位移。 2.:2

11.7 一个存储设备上的存储碎片可以通过信息再压缩来消除,典型的磁盘设备没有重新定位或基址寄存器(像内存被压缩时用的一样),怎样才能重定位文件呢?给出为什么文件再压缩和重定位常常被避免使用的3个原因。

答:移动文件二级存储涉及大量开销—数据块都必须读入内存,并写回了他们的新地点. 此外,移动登记册只适用于连续的文件,和许多磁盘文件不是一种顺序。相同的,许多新的档案不需要连续的磁盘空间; 如果是以逻辑顺序区块保持的磁盘系统,甚至连续档案可用于非相邻块之间的联系。

11.8在何种情况下会使用内存作为RAM磁盘更加有用而不是用它作为一个磁盘高速缓存? 答:在用户(或系统)确切地知道什么样的数据情况下将是必要的。缓存的算法为基础的,而RAM磁盘是用户导向。

11.9试想增加下列远程文件访问协议。每个客户端保持一个名称缓存,缓存翻译的文件名,以对应相应的文件句柄。哪些问题我们在执行名称缓存应该考虑到?

答:其中的一个问题是保持一致的名称缓存。如果缓存条目变得不一致,则应该更新或应检测不一致的地方。如果发现不一致后,然后应该有一个兜底机制,以确定新的翻译名称。此外,另一个相关的问题是是否有名称查找执行的一个组成部分的时间为每个子目录的路径,或是否是在一个单一的射击服务器。如果是运行的一个组成部分的时间,则在用户端可能会获得更多的资料翻译所有的中间目录。另一方面,它增加了网络流量作为一个单一的名称查找原因序列部分名称查找。

11.10解释为什么记录元数据更新能确保文件系统从崩溃中恢复过来?

答:对于档案系统崩溃后的重恢复,它必须是一致的或必须能够取得一致。因此,我们必须证明,测井数据在不断更新的档案系统中是一致的或有能力达成一致的状态。对于一个不一致的文件系统,元数据必须不完全是书面的或在文件系统的数据结构是错误的。测井数据的写入的是一个连续的记录。

完整的交易是在它被转移到文件系统结构之前被写入的,如果在文件系统数据更新时系统崩溃,根据记录器里的信息,这些更新仍能完成。因此可以说,记录器确保了文件系统的变化的完成(不论是在系统崩溃前还是之后)。因为信息是连续写入到记录器中的,因此变化的

命令保证是正确的。如果改变未完全写入记录其中,它便未改变文件系统结构,便会被丢弃。因此,通过数据记录重播,结构是相容的或接近相容的。

11.11 设想下面的备份方法:

第一天:将所有的文件从磁盘拷贝到备份介质。

第二天:将从第一天开始变化的文件拷贝到另一介质。

第三天:将从第一天开始变化的文件拷贝到另一介质。 与11.7.2小节中的方法不同。并非将所有从第一次备份后改变的文件都拷贝。与小节中的方法相比有什么优点?有什么缺点?恢复操作是更简单还是更复杂了?为什么?

【答】还原比较容易,因为你可以去备份磁带上,而不是充分磁带。没有中间磁带需要读取。更多的磁带被用作多个文件变化。

12.1 除了FCFS,没有其他的磁盘调度算法是真正公平的(可能会出现饥饿)。 a:说明为什么这个断言是真。

b:描述一个方法,修改像SCAN这样的算法以确保公平性。

C:说明为什么在分时系统中公平性是一个重要的目标。

D:给出三个以上的例子,在这些情况下操作系统在服务I/O请求时做到“不公平”很重要。

【答】a. 人们提出了关于磁头目前具备理论上可以尽快达到这些要求的磁道新要求

b. 所有那些预定的年龄更老的要求可能是“被迫”处于队列的顶端,一个有关为每个位可定表明,没有任何新的要求可提前这些请求。对于SSTF,其余的队列将不得不根据最后的这些“旧”的要求重新组织。

c. 为了防止超长的响应时间。

d. 寻呼和交换应优先于用户的要求。

为了其他内核启动的I / O,如文件系统元数据的写入,优先于用户I / O可能是可取的。如果内核支持实时进程的优先次序,这些进程的I / O请求该是有利的。

12.2 假设一个错哦盘驱动器有5000个柱面,从0到4999,驱动器正在为柱面143的一个请求提供服务,且前面的一个服务请求是在柱面125.按FIFO顺序,即将到来的请求队列是 86,1470,913,1774,948,1509,1022,1750,130 从现在磁头位置开始,按照下面的磁盘调度算法,要满足队列中即将到来的请求要求磁头总的移动距离(按柱面数计)是多少?

a. FCFS b. SSTF c. SCAN d. LOOK e. C-SCAN

【答】a. FCFS的调度是143 , 86 , 1470 , 913 , 1774 , 948 , 1509 , 1022 , 1750 , 130 。总寻求距离是7081 。

b. SSTF的调度是143 , 130 , 86 , 913 , 948 , 1022, 1470, 1509, 1750, 1774。总寻求距离是1745。

c. SCAN的调度是143 , 913 , 948 , 1022, 1470, 1509, 1750, 1774 , 4999 , 130 , 86 。总寻求距离是9769 。

d. LOOK的调度是143 , 913 , 948 , 1022, 1470, 1509, 1750, 1774, 130 , 86 。总寻求距离是3319 。

e. C-SCAN的调度是143 , 913 , 948 , 1022 , 1470 , 1509 , 1750 , 1774 , 4999 , 86 , 130 。总寻求距离是9813 。

f. C-LOOK的调度是143 , 913 , 948 , 1022 , 1470 , 1509 , 1750 , 1774 , 86 , 130 。总寻求距离是3363 。

12.3 。。。。。

【答】d. ( 65.20 -3 1.52) / 6 5.20= 0 .52。百分比加速超过营运基金FCFS是52 % ,对争取时间。如果我们的开销包括转动延迟和数据传输,这一比例将加速减少。

12.4 假设题12.3中的磁盘以200RPM速度转动。 A:磁盘驱动器的平均旋转延迟时间是多少? B:在a中算出的时间里,可以寻道多少距离?

【答】A 7200转120轮换提供每秒。因此,充分考虑轮换8.33毫秒,平均旋转延迟(一个半轮换)需要4.167毫秒。

B 求解:吨= 0.7561 + 0.2439 √ L

t = 4.167

使L为195.58 ,

因此,在一个平均旋转延迟的期间我们可以寻找超过195个轨道(约4 %的磁盘)。