操作系统——第八章笔记(一)

外存分配方式
1)目标:有效利用外存空间,提高文件访问速度
2)常用三种方式:
 连续分配
 链接分配(不连续)
 索引分配
通常一个系统中仅采用一种方式
3)采用的磁盘分配方式决定了文件的“物理结构”
 顺序结构;链接式结构;索引式结构。
 注意与逻辑结构名类似但不是一回事。
1.连续分配
1)为每一个文件分配一组相邻的盘块。
2)逻辑文件中的记录顺序与存储器中文件占用盘块的顺序一致。
3)优点:顺序访问容易,读写速度快
4)缺点:
 会产生外存碎片。可紧凑法弥补,但需要额外的空间,和内存紧凑相比更花时间。
 创建文件时要给出文件大小;存储空间利用率不高,不利于文件的动态增加和修改;
5)适用于变化不大顺序访问的文件,在流行的UNIX系统中仍保留了连续文件结构。如对换区
2.链接分配
1)可以为每一个文件分配一组不相邻的盘块。
2)设置链接指针,将同属于一个文件的多个离散盘块链接成一个链表,这样形成的文件称为链接文件。会有链接成本。
3)优点:
 离散分配,消除外部碎片,提高利用率
 同时适用于文件的动态增长;修改容易
2.1链接有两种形式:
1)隐式链接
 文件空间信息的目录项中没有链接数据;
 链接信息隐含记录在盘块数据中;
 每个盘块拿出若干字节,记录指向下一盘块号的指针。
 问题:只能顺着盘块读取,可靠性低
2)显式链接(FAT–file allocationtable)——链接信息以信息表的形式显示存放
 记录盘块链接的指针显示地记录为一张链接表
 所有已分配的盘块号都记录在其中,称文件分配表
 为了提高文件系统访问速度,FAT一般常驻内存
 属于一个文件的盘块通过链接成为一体,每个链条的首地址作为文件地址记录在相应文件的FCB的“物理地址”字段中。
2.2 FAT表的相关计算
1)MS-DOS文件分配结构为例:
一个1.2M的磁盘,盘块512B大小;若文件系统采用FAT格式,则FAT表大小如何?
表项个数 =盘块个数= 容量 / 盘块大小 = 1.2 220 / 29 = 1.2 211 个
 表项大小,决定于盘块数量编号需要的位数=12 位;
 FAT表大小=表项个数
表项大小=1.2 211 * 12 bit= 1.2 211 * 1.5B = 3.6KB
 以半字节(0.5B=4b)为基本单位,表项需12位(1.5B)
2)由上述公式,若容量为200M的磁盘,盘块仍为512B,FAT表大小如何?
 FAT表表项有200K≈218 (个)
 表项需20位,即2
8+4,2.5字节
 FAT表需内存大小为200
2.5=500KB
2.3 FAT 与 NTFS 技术
 早期MS-DOS:12位的FAT12文件系统
 Windows95、98:升级到FAT32
 Windows NT后:NTFS
物理磁盘分逻辑卷(分区),每卷都有一个单独区域存放自己的文件系统目录和FAT表。
1)FAT12
 表项12位。能支持的硬盘容量仅为8M。
212(个)*512B*4(分区数)=223B=8M
 磁盘容量不断增大,可将若干盘块组为一簇。以簇为单位分配空间
 FAT表记录簇号,表项数量减少,一定程度上提高了检索速度,减少了指针开销,
 但该改进有限,且会形成簇内碎片。12位的格式对磁盘容量仍有很大限制
2)FAT16
 增加FAT表的项数,16位可管理的盘容量为
2^16
64512B(一簇含64个盘块)=2048M
 若磁盘容量为8G,则每簇大小达到128K(8G/2^16),簇内碎片最大会到128K。浪费严重。
3)FAT32
 簇不能太大,只能继续增加表项位数,以记录更多数量
 FAT32规定每簇4KB(即8个512B的盘块),该格式能管理的单个最大磁盘空间为2^32
4KB=2TB。
 簇大小合适,空间利用率提高;但分配表的扩大使运行速度相对慢了;可支持长文件名;有最小空间管理限制,卷必须大于512M,单个文件长度不能大于4G,不能向下兼容。
4)NTFS(New technology file system)
 采用64位磁盘地址,理论上支持2^64字节的磁盘分区;
 支持长文件名;
 系统纠容错功能
 提供数据一致性、文件加密、压缩等功能
5)磁盘组织
 以簇为单位分配回收、但不规定盘块大小
 磁盘格式化时确定卷的簇大小(物理磁盘扇区的整数倍),512M以内的小磁盘默认簇大小为512B,1G的默认大小为1KB。。。大多数情况是4KB
 卷上簇编号为LCN,用户用到的簇顺序编成用户虚拟簇号VCN,NTFS可进行VCN到LCN的映射
6)文件组织
 以卷为单位,将卷的所有文件信息、目录信息、可用未分配空间记录在主控文件表MFT中。
 每个文件的信息对应一行,固定大小1KB,称为元数据
 文件属性信息、文件数据较少时就直接写在MFT中;较多超出1KB时,记录存放这些信息的簇地址指针。
 兼容性上也有不足

3.索引分配
1)链接的不足
 顺序检索的时间成本:不能支持高效的盘块直接存取。要对一个文件进行直接存取,仍需在FAT中顺序的查找许多盘块号。
 链接信息的空间成本:FAT需占用较大的内存空间。当磁盘容量较大时,FAT可能要占用数MB以上的内存空间。这是令人难以忍受的
2)改进:系统运行时只涉及部分文件,FAT表无需全部调入内存
 每个文件单独建索引表(物理盘块索引),记录所有分配给它的盘块号;
 建立文件时,便分配一定的外存空间用于存放文件盘块索引表信息;
3.1单级索引分配
1)索引形式适合大文件
2)中、小型文件,只需若干链接即可。若用索引分配方式,用一个盘块存放少量索引信息反而不适用。
3.2多级索引
1)若文件较大,存放索引表也需要多个盘块(索引盘块)。
2)索引盘块亦需要按顺序管理起来
 若索引盘块数量较少用指针链接的方式即可;
 若索引盘块较多,需对索引盘块也采用索引方式管理,形成多级索引。
多级索引下的文件大小(练习)
1)若两级索引,盘块1KB,盘块号占4字节
 一个盘块可存放的盘块号数有多少个:1KB/4B = 210/4 = 28 = 256(个)
 二级索引下的文件可分配的最大盘块数:256 * 256 =26×210=64 K(个)
 文件最大长度为:64K(个)1KB=64MB
 若盘块大小为4KB,单级索引允许文件最大长度为4MB(4K/4
4KB),二级索引则文件最大可达4GB(1K1K4KB)。
3.3混合组织索引(增量式索引组织方式)
多种索引方式相结合,以UNIX system V的索引结点为例:
一个索引结点定义为13个地址项:iaddr(0)~iaddr(12),总的来说分为两种:直接地址、间接地址
1)iaddr(0)~iaddr(9)存放直接地址,即存文件数据的盘块号;
2)iaddr(10)存放单级索引的索引盘块号;
3)剩余的用于文件较大时存放多级索引数据。
 iaddr(11)存放二级索引的主索引盘块号
 iaddr(12)存放三级索引的主索引盘块号
4)索引文件在顺序访问或随机访问中都比较灵活,是一种比较 好的文件物理结构,但也是需要一定的用于索引表的空间开销和检索文件索引的时间开销的。
5)UNIX系统每个文件都有一个该结构的索引结点,是使用索引结构成功的例子。
例题:
例1:盘块1KB大小,硬盘500MB大小。显式链接方式时,FAT需占用多少存储空间?文件A占用11、12、16、14盘块,画出链接及FAT的情况。

1.盘块500K个≈219
2.	编号决定表项需19位,半字节为单位,须20位,即 2.5 B
3.	FAT大小 = 500K * 2.5B = 1250 KB

例2:试描述过程:连续分配、隐式链接、显式链接和索引方式下如何将文件中3500字节偏移的逻辑地址转换为物理块号和块内偏移量。(设盘块大小为1KB,盘块号需4B)

3500 / 1024=3,余428
即逻辑块号3,块内偏移428(编号从0开始)
1)连续分配:
   FCB中查到起始物理块号。设为a,
	在a+3号盘块中偏移428B即找到需要数据。
2)隐式链接方式:
	每个盘块中的1KB中4B用于记录下一个块号,3500/1020=3,余440
	FCB中获得第1个盘块号b0,读取b0最后4B得到下一个盘块号b1,继续同样操作到b2,到b3,在b3盘块中偏移440B。
3)显式链接方式
	FCB中得到文件首盘号c0。
	FAT中检索c0,找到c0项记录的c1,继续找
	找到c3后,在C3盘块中偏移428B。
4)索引方式
	FCB中找到盘块索引表的地址d(存放索引表的盘块)
	索引表的d+3*4B处即直接检索到物理块设结果为e,在e盘块中偏移428B。

例3:某磁盘文件系统,采用混合索引分配方式,13个地址项记录在FCB中。若盘块大小512字节,盘块号需3字节(则一个盘块最多存放170个盘块号),该文件系统允许文件的最大长度是多少?5000、15000需如何寻址?FCB已在内存,其他信息都在外存,则访问文件某位置需访问磁盘,最少几次?最多几次?

 1.c=10+170+170*170+170*170*170(个)  文件最大c*512B
 2.不同地址的寻址:
5000/512,商9,余392,直接寻址即可:FCB第9项记录的块内偏移392
15000/512,商29,余152,<10+170。可从第10项一次寻址找第19=29-10处的块号
3.直接寻址最少一次,三次间址则最多访问磁盘4次

3.4根据外存空间空闲情况分配给文件需要的磁盘空间
 管理空闲空间
 记录已分配的空间

猜你喜欢

转载自blog.csdn.net/weixin_43271377/article/details/84503506