设备管理及文件管理
磁盘盘块的编号和磁盘的柱面号、磁头号 和扇区号的对应关系: 盘块的编号=扇区号+8*(柱面号*8+磁头号) 柱面号=(盘块的块号/(8*8)) N=盘块的块号%(8*8) 磁头号=[N/8] 扇区号=N%8
132 190 205 376 398
32 58 15 171 22
40
29 23 19 18 4
21
11 6 4 1 14
61
337
移动磁道总数为692,平均寻道长度为57.7。
例2:设某文件为链接文件,由5个逻辑记 录组成,每个逻辑记录的大小与磁盘块 大小相等,均为512字节,并一次存放 在50、121、75、80、63号磁盘上。若 要存取文件的第1569逻辑字节处的信息, 问访问那一个磁盘块?
设备管理及文件管理
磁盘调度算法
磁盘是可被多个进程共享的设备。当有多个进程 都请求访问磁盘时,应采用一种适当的调度算 法,以使各进程对磁盘的平均访问时间(主要 是寻道时间)最短。 (1)FCFS (2)SSTF(最短寻道) (3)SCAN (4)cscan(循环扫描)
例:若磁头的当前位置为100磁道,磁头 正向磁道号增加的方向移动。现有一磁 盘读写请求队列:23,376,205,132, 19,61,190,398,29,4,18,40。 若采用FCFS、SSTF、SCAN算法,试 计算出平均寻道长度各为多少?
例:一个树形结构的文件系统如图,该图中的框表示目 录,圈表示文件: (1)可否进行下列操作: a、在目录D中建立一个文件,取名为A。 b、将目录C改名为A (2)若E和G分别为两个用户的目录: a、用户E欲共享文件Q,应有什么条件,如何操作? b、在一段时间内,用户G主要使用文件S和T。为简便操 作和提高速度,应如何处理? c、用户E欲对文件I加以保护,不许别人使用,能否实 现?如何实现?
解:(1)FCFS,进行调度的情况为: 从100磁道开始
下一磁道 移动磁道数 下一磁道 移动磁道数
23 376 205
77 353 171
190
129
398
29 4 18 40
208
369 25 14 22
132
19 61
73
113 42
移动磁道总数为1596,平均寻道长度为133
(2)SSTF,进行调度的情况为: 从100磁道开始
下一磁道 移动磁道数 下一磁道 移动磁道数
132 190 205
32 58 15
23
19 18 4 376
6
4 1 14 372
61 40
29
144 21
11
398
22
Байду номын сангаас
移动磁道总数为700,平均寻道长度为58.3
(3)SCAN,进行调度的情况为: 从100磁道开始
下一磁道 移动磁道数 下一磁道 移动磁道数
(1)a、由于目录D中没有已命名为A的文件,因此在目录 D中,可以建立一个取名为A的文件 b、因为在文件系统的根目录下已存在一个取名为A的 目录,所以根目录下的目录C不能改名为A。 (2)a、用户E欲共享Q ,需要用户E有访问文件Q的 权限。在访问权限许可下,用户E可通过相应路径来 访问Q。若用户E当前目录为E,则访问路径为 ../../D/G/K/O/Q b。用户G需要通过一次访问目录K和目录P,才能访问 到文件S及文件T。为了提高访问速度,可以在目录G 下建立两个链接文件,分别链接到文件S及文件T上。 这样G就可以直接访问这两个文件了。
解:磁盘大小为540M,磁盘块的大小为 1K,所以该磁盘共有盘块: 540M/1K=540K(个) 又512K<540K<1024K 故540K个盘块号要用20位二进制表示, 即文件分配表的每个表目为2.5字节。 FAT要占用的存储空间总是为: 2.5*540K=1350K
当磁盘大小为1.2G,磁盘共有盘块: 1.2G/1K=1.2M(个) 又1M<1.2M<2M 故1.2M个盘块号要用31为二进制表示。 为方便文件分配表的存取,每个表目用 32位二进制表示,即文件分配表的每个 表目大小为4个字节。故FAT占用的存储 空间: 4*1.2=4.8M
c、用户E可以通过修改文件I的存取控制 表来对文件I加以保护,不让别的用户使 用。具体实现方法:在文件I的存取控制 表中,只留下用户E的访问权限,其他用 户对该文件无操作权限,从而达到不让 其他用户访问的目的。
例:假定一个磁盘组共有100个柱面,每 个柱面上有8个磁道,每个盘面被划分成 8个扇区。柱面、磁道、扇区的编号均从 0开始,请问磁盘盘块的编号和磁盘的柱 面号、磁道号和扇区号有什么关系。
解: 因为:1569=512*3+33 所以要访问字节的逻辑记录号为3,对 应的物理磁盘块号为80。故应访问第80 号磁盘块
例:假定磁盘块的大小为1K,对应540M 的磁盘,其文件分配表FAT需要占用多 少存储空间?当磁盘容量为1.2G,FAT 需要占用多少空间? 提示:FAT是一个数据结构,用在以链接 方式存储文件的系统中,用于记录磁盘 分配和跟踪空白磁盘块。