磁盘存储器管理--习题分析复习过程
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
磁盘存储器管理--习
题分析
1、系统中磁头停留在磁道号为100的磁道上,这时先后有4个进程提出了磁盘访问请求,要访问磁盘的磁道号按申请到达的先后顺序依次为:55、120、39、110。移动臂的运动方向:沿磁道号递减的方向移动。若分别采用FCFS磁盘调度算法、SSTF算法、SCAN算法时,所需寻道长度分别为多少?
FCFS算法:100-55+ 120-55+ 120-39+ 110-39 = 262
SSTF算法:110-100 +120-110 + 120-55 + 55-39 = 101
SCAN算法: 100-55+ 55-39 +110-39 + 120-110 = 142
2、假设磁盘有200个磁道,磁盘请求队列中是一些随机请求,它们照到达的次序分别处于55、58、39、18、90、160、150、38、184号磁道上,当前磁头在100号磁道上,并向磁道号增加的方向上移动。请给出按FCFS、SSTF、SCAN及CSCAN算法进行磁
1、在FAT16文件系统中,且每个盘块的大小是512字节,
1)如果每个簇可以有4个盘块,可以管理的最大分区空间是多少?
2)如果每个簇可以有64个盘块,可以管理的最大分区空间又是多少?
答: 1)216 * 4 * 512 = 128M
2)216 * 64 * 512 = 2G
2、某操作系统的磁盘文件空间共有500块,若用字长为32位的位示图管理盘块空间,试问:
1)位示图需要多少个字?
2)如果b(盘块号), i, j从1开始计数,第i字第j位对应的块号是多少?
3)如果b(盘块号), i, j 从0开始计数,第i字第j位对应的块号是多少?
答:
1)[500/32] =16
2) b = 32* (i-1) +j
3)b= 32*i+j
3、有3200个磁盘块可用来存储信息,如果用字长为16位的字来构造位示图,若位示图部分内容如图所示。
1)位示图共需多少个字?
2)若某文件长度为3200B,每个盘块为512个字节,采用链接结构且盘块从1开始计
数,系统将为其分配哪些磁盘块?
3)试具体说明分配过程。
4)若要释放磁盘的第300块,应如何处理?
1)3200/16=200
2)3200/512 =7 ; 20、24、25、26、27、37和38
3)顺序检索位示图,从中找到第一个值为0的二进制位,得到行号i=2,列号j=4 ;计算出找到的第一个盘块是 B1 = (2-1)*16+4=20
第二个值为0的二进制位,得到行号i=2,列号j=8. ;计算出找到的第一个盘块是B2=(2-1)*16+8=24
………….
修改位示图,令Map[2,4]=Map[2,8] = …..=1,并将对应块20、24……. 分配出去。
4)计算出磁盘第300块所对应的二进制位的行号i和列号j :
i = (300-1)/16 + 1 = 19 j = (300-1)MOD16 + 1= 12 修改位示图,令
Map[19,12]=0,表示对应块为空闲块。
4、有一计算机系统利用下图所示的位示图(行号、列号都从0开始编号)来管理空闲盘块。如果盘块从1开始编号,每个盘块的大小为1KB。
(1)现要为文件分配两个盘块,试具体说明分配过程。
(2)若要释放磁盘的第300块,应如何处理?
(编号从0开始)
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 1 1 1 1
1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 0 1 1 1 1 0 1 1 1 1
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
答:(1)为某文件分配两个盘块的过程如下:
①顺序检索位示图,从中找到第一个值为0的二进制位,得到其行号il=2,列号
jl=2。第二个值为0的二进制位,得到其行号i2=3,列号j2=6。
②计算出找到的两个空闲块的盘块号分别为:
b1=i1×16+j1+1=2×16+2+1=35
b2=i2×16+j2+1=3×16+6+1=55
③修改位示图,令map[2,2]=map[3,6]=1,并将对应块35、55分配出去。
(2)释放磁盘的第300块时,应进行如下处理:
①计算出磁盘第300块所对应的二进制位的行号i和列号j:
i=(300-1)/16=18,j =(300-1)%16=11
②修改位示图,令map[18,11]=0,表示对应块为空闲块。
1、存放在某个磁盘上的文件系统,采用混合索引分配方式,其FCB中共有13个地址项,第0~9 个地址项为直接地址,第10个地址项为一次间接地址,第11个地址项为二次间接地址,第12个地址项为三次间接地址。如果每个盘块的大小为4KB,若盘块号需要用4个字节来描述,请问系统中允许文件的最大长度是多少?
直接地址: 10 * 4KB +
一次间接地址:(4KB/4B)* 4KB +
二次间接地址:(4KB/4B)* (4KB/4B) * 4KB +
三次间接地址:(4KB/4B)* (4KB/4B) * (4KB/4B) * 4KB
= 40KB+4MB+4GB+4TB
2、设有一分页存储管理系统,向用户提供的逻辑地址空间最大为16页,每页4096字节,
①试问逻辑地址至少应为多少位?
每页4096B,所以页内位移部分地址需要占12个二进制位,
逻辑地址空间最大为16页,所以页号部分地址需要占4个二进制位。故逻辑地址至少应为16位。
3、在两级索引分配方式下,如果每个盘块的大小为4KB,每个盘块号占4个字节,
①所允许的文件最大长度是多少?
(4KB/4B) * (4KB/4B) * 4KB = 4GB
4、请分别解释在连续分配方式、隐式链接分配方式、显式链接分配方式和索引分配方式中如何将文件的字节偏移量3500转换为物理块号和块内位移量(设盘块大小为
1KB,盘块号需占4个字节)。
解:首先,将字节偏移量3500转换成逻辑块号和块内位移量:3500/1024得到商为3,余数为428,即逻辑块号为3,块内位移量为428。
(1)在连续分配方式中,可从相应文件的FCB中得到分配给该文件的起始物理盘块号,例如a0,故字节偏移量3500相应的物理盘块号为a0+3,块内位移量为428。(2)在隐式链接方式中,由于每个盘块中需留出4个字节(如最后的4个字节)来存放分配给文件的下一个盘块的块号,因此字节偏移量3500的逻辑块号为3500/1020的商3,而块内位移量为余数440。
从相应文件的FCB中可获得分配给该文件的首个(即第0个)盘块的块号,如b0;然后可通过读第b0块获得分配给文件的第1个盘块的块号,如b1;再从b1块中得到第2块的块号,如b2;从b2块中得到第3块的块号,如b3。如此,便可得到字节偏移量3500对应的物理块号b3,而块内位移量则为440。
(3)在显式链接方式中,可从文件的FCB中得到分配给文件的首个盘块的块号,如c0;然后可在FAT的第c0项中得到分配给文件的第1个盘块的块号,如c1;再在FAT 的第c1项中得到文件的第2个盘块的块号,如c2;在FAT的第c2项中得到文件的第3个盘块的块号,如c3。如此,便可获得字节偏移量3500对应的物理块号c3,而块内位移量则为428。