磁盘存储器管理--习题分析.docx
文本预览下载声明
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算法进行磁盘调度时满足请求的次序,并计算它们的平均寻道长度。(此题可以自己练习)
FCFS
SSTF
SCAN
CSCAN
被访问的下一个磁道号
移动的磁道数
被访问的下一个磁道号
移动的磁道数
被访问的下一个磁道号
移动的磁道数
被访问的下一个磁道号
移动的磁道数
平均寻道长度:
平均寻道长度:
平均寻道长度:
平均寻道长度:
1、在FAT16文件系统中,且每个盘块的大小是512字节,
如果每个簇可以有4个盘块,可以管理的最大分区空间是多少?
如果每个簇可以有64个盘块,可以管理的最大分区空间又是多少?
答: 1)216 * 4 * 512 = 128M
2)216 * 64 * 512 = 2G
2、某操作系统的磁盘文件空间共有500块,若用字长为32位的位示图管理盘块空间,试问:
位示图需要多少个字?
如果b(盘块号), i, j从1开始计数,第i字第j位对应的块号是多少?
如果b(盘块号), i, j 从0开始计数,第i字第j位对应的块号是多少?
答:
1)[500/32] =16
2) b = 32* (i-1) +j
3)b= 32*i+j
3、有3200个磁盘块可用来存储信息,如果用字长为16位的字来构造位示图,若位示图部分内容如图所示。
位示图共需多少个字?
若某文件长度为3200B,每个盘块为512个字节,采用链接结构且盘块从1开始计数,系统将为其分配哪些磁盘块?
试具体说明分配过程。
若要释放磁盘的第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。
② 计算出找到的两个空闲块
显示全部