《2022年操作系统第6章习题带答案》由会员分享,可在线阅读,更多相关《2022年操作系统第6章习题带答案(6页珍藏版)》请在金锄头文库上搜索。
1、第六章一、问答题1、什么是文件的逻辑结构?什么是文件的物理结构?2、为了能够查找到文件的位置,在采用连续文件、链接文件和索引文件时,在目录中需要登记哪些内容?3、磁盘容错技术可以分为哪三级?4、目前最广泛采用的目录结构是哪种?它有什么优点?5、文件在磁盘上存放的形式有几种?它们与存取方法有何关系?物理结构顺序结构链接结构索引结构直接文件存取方法顺序顺序(显式 隐式)顺序顺序随机(显式)随机随机按键6、简述以下移臂调度算法的思想:先来先服务调度算法、最短查找时间优先算法、电梯调度算法。7、简述文件控制块中包含的内容。8、假设多个用户共享一个文件目录系统,用户甲要用文件A、B、C 、E,用户乙要用
2、文件 A、D、E、F。已知用户甲的文件A 与用户乙的文件A实际上不是同一个文件;用户甲的文件 C与用户乙的文件 F实际上是同一个文件; 甲、乙两用户的文件 E是同一个文件。试问你是否可以拟定一种文件目录组织方案,使得甲、乙两用户既能共享文件而又不造成混乱?答:采用多级目录结构,文件目录分解为基本目录和符号目录,只要在不同文件符号目录中使用相同文件内部标识符,甲、乙两用户既能共享文件而又不造成混乱。画图并简要说明二、计算题精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 1 页,共 6 页1、假定盘块的大小为1KB,硬盘的大小为10GB,采用显示链接分
3、配方式时,请问文件分配表只是占用多大空间? 磁盘块数: 10GB/1KB=10M 表达 10M 盘块, FAT 每项至少需要 24 位,即 3 个字节所以文件分配表至少占用3B*10M=30M 2、系统中磁头停留在磁道号为70 的磁道上,这时先后有 4 个进程提出了磁盘访问请求,要访问磁盘的磁道号按申请到达的先后顺序依次为:45,68,28,90。移动臂的运动方向: 沿磁道号递减的方向移动。 若分别采用 FCFS 磁盘调度算法、SSTF算法, SCAN 算法时,所需寻道长度分别为多少(走过多少柱面)?0 号磁道是最里面还是最外面的一个磁道?提示: FCFS磁盘调度算法: 70-45-68-28
4、-90 SSTF算法: 70-68-90-45-28 SCAN 算法: 70-68-45-28-90 3、某系统采用 UNIX操作系统的专用块内容为:空闲块数3,然后依次登记的空闲块号为 77,89,60 ,问此时若一个文件A 需要 5 个盘块,系统进行分配后有个文件 B被删除,它占用的盘块块号为100,101,109,500 ,则回收这些盘块后专用块的内容是什么?写出整个分析过程。空闲块数 2,然后依次登记的空闲块数为109、500 4、在实现文件系统时,为了加快文件目录的检索速度,可利用“FCB分解法” 。假设目录文件存放在磁盘上,每个盘块512B 。FCB占 64B,其中文件名占 8B,
5、通常将 FCB分解为符号目录项和基本目录项两部分,其中符号目录项大小为10B:基本目录项大小为多少字节? 假设某一目录文件共有254 个 FCB ,试分别给出采用分解法之前和之后,对该目录文件分别的平均访问磁盘次数: 一般地,若目录文件分解前占用N个盘块,分解后符号目录文件占用M个盘块,请给出访问磁盘次数减少的条件:精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 2 页,共 6 页基本目录项大小为多少字节?64-8=56B 假设某一目录文件共有254 个 FCB ,试分别给出采用分解法之前和之后,对该目录文件分别的平均访问磁盘次数:答:分解前:FC
6、B占用块数:254*64/512=32 块,平均访问磁盘次数:(1+32)/2=16.5 分解后: FCB占用块数: 254*10/512=5 块,平均访问磁盘次数: (1+5)/2=3 一般地,若目录文件分解前占用N 个盘块,分解后符号目录文件占用M个盘块,请给出访问磁盘次数减少的条件:(1+N)/2NM+2 5、 某系统中磁盘的每个盘块大小为1KB, 外存分配方法采用中的混合索引结构,其中索引节点中直接地址6 项,一级索引地址 2 项,二级索引地址 1 项,每个盘块号占用 4 个字节,请问该系统中允许的文件最大长度是多少?一个盘块可记录的盘块号的数量为:1KB/4=256 直接地址:记录6
7、 个文件所占物理块的块号一级索引:记录256*2=512 个文件所占物理块的块号二级索引:记录256*256 个文件所占物理块的块号该系统中允许的文件最大长度(256*256+256*2+6)*1KB= 6、有一个大小为 500M的硬盘,盘块的大小为1KB,试计算其 FAT的大小。由题意可知, 该硬盘共有 500K 个盘块,故 FAT 中共有 500K 个表项;如果盘块从 1 开始编号,为了能保存最大的盘块号500K,该 FAT 表项最少需要 19 位,将它扩展为半个字节的整数倍后,可知每个FAT 表项需 20 位,即 2.5 个字节。因此, FAT 需占用的存储空间的大小为:2.5500K=
8、1250KB7、一个可移动磁头的磁盘具有200 个磁道,其编号为 0199,当它刚刚结束了125 道的存取后,现正在处理 143道的请求, 假设系统当前 I/0 请求序列以 FIFO顺序排列如下: 86,147,91,177,94,150,102,175,130。试问对以下几种精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 3 页,共 6 页磁盘调度算法而言,满足以上请求序列,磁头将如何移动? 扫描法 SCAN 最短查找时间优先算法SSTF SSTF :143 147 150 130 102 94 91 86 175 177 总移动距离 162 S
9、CAN :143 147 150 175 177 199 130 102 94 91 86 总移动距离 169 8、 有一计算机系统采用如下图所示的位示图(行号、列号都从0 开始编号)来管理空闲盘块。如果盘块从0 开始编号,每个盘块的大小为1KB 。现要为文件分配两个盘块,试具体说明分配过程。查位示图,找到两个为0 的位,第 3 字第 11 位和第 4 字第 2 位;计算出块号,3*16+11+1=60,4*16+2+1=67,然后将 60,67 分配给文件若要释放磁盘的第300 块,应如何处理?0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0 1 1 1 1 1
10、 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 1 1 1 1 1 0 1 1 1 1 0 1 1 1 1 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 6 首先计算 100块位示图对应位置字号: (100-1)/16=6 ,位: (100-1)%16=3 然后将第 6 字第 3 位置 09、假定磁盘转速为6000r/min ,磁盘格式化时每个盘面被分为8 个扇区,现有一个文件共有 A H八个逻辑记录要存放在同一磁道上供处理程序
11、使用,假设每个记录的大小与扇区的大小相同,处理程序每次从磁盘读出一个记录后要花2.5ms 的时间。若忽略其他辅助时间,请回答下列问题:1. 在假设已经顺序存放好这8 个记录,那么读出该文件需要多少时间?2. 采用一个优化的数据存放方法, 画出各个记录的存放位置, 计算该文件的读出时间,并与 1 进行比较说明。见课本 233精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 4 页,共 6 页10、存放在某个磁盘上的文件系统,采用混合索引分配方式,其FCB中共有 13个地址项,第09 个地址项为直接地址,第10 个地址项为一次间接地址,第11 个地址项为
12、二次间接地址,第12 个地址项为三次间接地址。如果每个盘块的大小为 4K字节,若盘块号需要用4 个字节来描述,请问该系统中允许的文件最大长度是多少?计算方法同 5 题由题意可得,每个盘块最多存放4K/41K个盘块地址。4K(101K1K1K1K1K1K) 40K 4M 4G 4T11、 UNIX 系统采用空闲块成组连接的方法管理磁盘空闲空间,图中是采用 UNIX操作系统的某系统的空闲块成组连接示意图,问此时若一个文件A 需要 5 个盘块,则系统会将哪些盘块分配给它?若之后有个文件B 被删除,它占用的盘块块号为 333、334、404、405、782,则回收这些盘块后专用块的内容如何?图某系统磁
13、盘空闲块情况分配给它 12、56、49、50和 51 盘块;回收这些盘块后专用块的内容为:12、 实现文件系统时, 为加快文件目录的检索速度, 可利用“文件控制块分解法”。假设目录文件分解前占用n 个盘块,分解后改用m 个盘块存放文件名和文件内空闲块数 4 334 404 405 782 空闲块数4 50 49 56 12 专用块空闲块数100 150 149 52 51 空闲块数100 0 449 351 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 5 页,共 6 页部号,请给出访问磁盘次数减少的条件。访问磁盘次数减少的条件为:(n1)/2(
14、m+1)/2+1 即 mn- 2 14、 假设计算机系统采用CSCAN(循环扫描 )磁盘调度策略 ,使用 2KB 的内存空间记录 16384 个磁盘的空闲状态请说明在上述条件如何进行磁盘块空闲状态的管理。设某单面磁盘的旋转速度为每分钟6000 转,每个磁道有 100 个扇区,相临磁道间的平均移动的时间为1ms。若在某时刻,磁头位于100 号磁道处,并沿着磁道号增大的方向移动,磁道号的请求队列为50,90,30,120 对请求队列中的每个磁道需读取1 个随机分布的扇区,则读完这个扇区点共需要多少时间?需要给出计算过程。1. 2KB = 2*1024*8bit = 16384bit 。因此可以使用
15、位图法进行磁盘块空闲状态管理,每 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 所以,读完这个扇区点共需要 170ms + 20.4ms = 192.4ms 。三、应用题参考书中方案解答1、某系统中文件系统采用的物理文件结构为显式链接结构,请设计一个合适的磁盘空间管理方案。(包括数据结构和分配、回收磁盘空间的基本方法)。2、某系统中文件系统采用的物理文件结构是混合索引结构,请设计一个该系统的磁盘空间管理方案。 (包括数据结构和分配、回收磁盘空间的基本方法)。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 6 页,共 6 页