操作系统第6章练习题 - 复习专用 (2)

愿你安好。 分享 2020-06-28 下载文档

盘块分配给它?若之后有个文件B被删除,它占用的盘块块号为333、334、404、405、782,则回收这些盘块后专用块的内容如何?

空闲块数4 空闲块数空闲块数 100 100 50 150 0 49 149 449 56

12 … …

… 52 351

专用块 51 …

图 某系统磁盘空闲块情况

7.为了实现按名存取,文件目录至少应包含哪些内容?

8.用户A有名为W1,W2和W3的三个私有文件,用户B有名为J1和J2的两个私有文件,这两个用户都需要使用共享文件T。文件系统对所有用户提供按名存取的功能,为保证存取的正确性,文件系统应设置合理的目录结构,请画出文件系统设计的目录结构。

9.假定有一个磁盘组共有100个柱面,每个柱面上有8个磁道,每个盘面被划分成8个扇区。柱面、磁道、扇区的编号均从“0”开始,请问磁盘盘块的编号和磁盘的柱面号、磁头号和扇区号有什么关系?

10.假定有一个磁盘组共有199个柱面,每个柱面上有16个磁道,每个盘面被划分成8个扇区。现有一个含有700个逻辑记录的文件,逻辑记录的大小与扇区大小一致,该文件以顺序结构的形式被存放到磁盘上。柱面、磁道、扇区的编号均从“0”开始,逻辑记录的编号也从“0”开始。该文件信息从1柱面、5磁道、0扇区开始存放,试问: ①该文件的第380个逻辑记录应存放在哪个柱面的第几磁道的第几个扇区? ②第2柱面的第1磁道的第7扇区中存放了该文件的第几个逻辑记录?

11.假定某磁盘的旋转速度是每圈20毫秒,格式化时每个盘面被分成10个扇区,现有10个逻辑记录存放在同一磁道上,安排如下表所示。

扇区号 1 2 3 4 5 6 7 8 9 10 逻辑记录 A B C D E F G H I J 处理程序要顺序处理这些记录,每读出一个记录后处理程序要花4毫秒的时间进行处理,然后再顺序读下一个记录并处理,直到处理完这些记录,回答: ①顺序处理完这10个记录总共花费了多少时间?

6

②请给出一种记录优化分布的方案,使处理程序能在最短时间内处理完这10个记录,并计算优化分布时需要花费的时间。

12.某系统中磁盘的每个盘块大小为1KB,外存分配方法采用索引分配方式中的混合分配方式,其中索引节点中直接地址4项,一次间接地址2项,二次间接地址1项,每个盘块号占用4个字节,请问该系统中允许的文件最大长度是多少? 13.某系统文件系统采用的物理文件结构是链接结构,请设计一个该系统的磁盘空间管理方案。(包括数据结构和分配、回收磁盘空间的基本方法),并写出磁盘空间的分配算法。

参考答案 一、单项选择 1.A 2.C 3.B 4.A 5.B 6.D 7.C 8.C 9.D 10.B 11.A 12.D 13.D 14.C 15.B 16.A 17.A 18.B

二、多项选择题

1.ABD 2.BDE 3.ABCD 4.CE 5.AE 6.CE

三、问答题:

1.①一个逻辑记录占用一个物理块,磁盘空间的利用率:

48/512=9.375%

②为了有效地利用磁盘空间,采用记录成组的办法。

若记录不能跨块,则每个盘块中可记录: [512/48]=10 空间利用率: 48*10/512=93.75%

3.①采用记录成组方式,才能有效地利用磁盘空间,采用不跨块记录方式,每个盘块中存放两个逻辑记录。共10个逻辑记录,需要5个盘块。

文件目录 ②

0 1 2 3 4

5 6 7 17 8 9 7

10 11 12 13 14

15 16 17 18 18 19 19 -1

③首先计算该字符在第几个逻辑记录中, 1452/250 =6; 计算出在第几个盘块中, 6/2 =3; 从目录中读出第一个盘块号9;

读出第一个盘块9,得到下一个块号7; 读出第二个盘块7,得到下一个块号17;

文件名 起始地址 ABC 9 7

读出第三个盘块17,从中分离出第6个(该盘块中第2个)记录。

4.系统应该采用二级或多级的目录结构才能区别这些文件,目录结构:

主文件目录 user1 user2 ? 用户文件目录 abc u2 ? Us abc ? 文件

5.①此位示图需要字数为:

3200/16=200

②文件需要盘块数为: 3200/512=7块

该文件得到19、23、24、25、26、36和37块。 6.文件A得到的盘块块号为12、56、49、50和51。

删除文件B后,专用块中内容为:

空闲块数4,块号依次为334、404、405、782。

7.至少在目录项中指出文件名和文件在存储介质上的位置。 8.采用二级或多级目录

主文件目录 A B ? W1 W2 W3 … T T J1 J2 … 文件

9.磁盘盘块的编号和磁盘的柱面号、磁头号和扇区号的对应关系:

盘块的编号=扇区号+8×磁头号+8×8×柱面号 柱面号=[盘块的块号/(8×8)] N=盘块的块号 % (8×8) 磁头号=[N/8] 扇区号=N % 8

10.①该文件的第380个逻辑记录应存放在4柱面的4磁道的第4个扇区。 ②第2柱面的第1磁道的第7扇区中存放了该文件的第103个逻辑记录。

11.①因为每个记录读出后,需等待上一个记录处理后,才能读下一个记录,所以顺序处理一个记录时,读一个记录后,下一个记录已经走过,因此只好在等磁盘旋转下一周时才能读出,进行处理,所以共花费了时间:20×10+4=204毫秒 ②优化方案:

扇区号 1 2

逻辑记录 A H 8

3 4 5 6 7 8 9 10 E B I F C J G D 因为每个记录读出需20/10=2毫秒,处理需4毫秒,按上述分布,处理完一个记录正好磁头转到一个记录,所以处理时间需要:(2+4)×10=60毫秒。

12.系统中允许的文件最大长度=4X1+2X256X1+256X256X1=6+512+65536=66052KB 13.这里仅给出利用“位示图”进行磁盘空间的分配和回收的方法。 ⑴位示图

对每个磁盘可以用一张位示图指示磁盘空间的使用情况。一个磁盘的分块确定后,根据总块数决定位示图由多少字组成,位示图中的每一位与一个磁盘块对应,某位为“1”状态表示相应块已被占用,为“0”状态的位所对应的块是空闲块。块号、位号、字号决从“0”开始编号。 ⑵磁盘块的分配

当有文件要存放到磁盘上时,查位示图中为\的位,表示对应的磁盘块空闲可供使用。根据查到的位所在的字号和位号可计算出对应的块号,同时在该位填上占用标志“1”。

块号=字号×字长+位号

于是,文件信息就可按确切的地址存放到找到的磁盘块上。 #define false 0 #define true 1

bit map[n][m]; /*位示图,共n个字,每个字有m位*/ allocate( ) {

int i,j;

for(i=0;i

if(map[i][j]==0) {

map[i][j]=1;

return(i*m+j);/*返回对应块号*/ }

return(false); }

⑶磁盘块的回收

当删除文件归还存储空间时,可以根据归还块的块号推算出在位示图中的位置,或由物理地址计算出对应的块号后再确定在位示图中的位置,把这一位的“1”清成“0”,表示该块成为空闲块了。

字号=[块号/位示图中字长] 位号=块号mod位示图中字长

9


操作系统第6章练习题 - 复习专用 (2).doc 将本文的Word文档下载到电脑

下一篇:厂商银三方合作协议和质押监管协议

相关推荐
相关阅读
本类排行
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 7

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xxxxxx QQ:xxxxxx