硬盘存储管理性能

操作系统使用层次结构来管理硬盘存储。

每个单独的磁盘驱动器称为一个物理卷 (PV),它们各有一个名称,例如 /dev/hdisk0。 如果物理卷在使用,那么它属于一个卷组 (VG)。 卷组中所有物理卷划分成相同大小(如果卷组包含的物理卷小于 4 GB,那么缺省值是 4 MB;对于更大的磁盘该值为 8 MB 或更多)的物理分区 (PP)。

根据空间分配的用途,每个物理卷可分成五个区域。 请参阅 物理卷上的位置 以获取更多信息。 在每个区域中的物理分区的数目根据磁盘驱动器的总容量而变化。

图 1。 固定磁盘数据的组织 (未镜像)。 此插图显示了划分成一个或多个逻辑卷的物理卷的层次结构。 这些分区或逻辑卷中包含带有目录结构的文件系统,目录中包含有单独的文件。 文件就写在存储介质上磁道所包含的一些块中,这些块通常并不邻接。 当数据被擦除,新的数据文件写入空块且这些空块随机分散在介质的多个磁道上时会产生磁盘分段。
固定磁盘数据(非镜像)的组织

在每个卷组中定义了一个或多个逻辑卷 (LV)。 每个逻辑卷由一个或多个逻辑分区组成。 每个逻辑分区至少对应于一个物理分区。 如果对逻辑卷指定镜像,那么分配附加物理分区来存储每个逻辑分区的附加副本。 虽然逻辑分区是连续编号的,但底层的物理分区不必是连续的或相邻的。

逻辑卷可为许多系统用途提供服务(例如页面调度),但是每个容纳常规系统数据或用户数据或程序的逻辑卷都包含一个单独的日志文件系统(JFS 或增强型 JFS)。 每个 JFS 由页大小(4096 字节)块的池组成。 当数据写入文件时,对该文件分配一个或多个附加块。 这些块彼此之间和与先前分配给这个文件的其他块之间可能邻接也可能不邻接。

为了便于说明,上图显示了一个文件系统中可能发生的糟糕(但可能不是最糟糕)情况,这个文件系统已经使用了很长时间且没有重新组织过。 文件 /op/filename 物理记录在很多块上,这些块在物理位置上相互远离。 顺序读取这个文件将导致许多费时的寻道操作。

虽然操作系统的文件在概念上是一个顺序且邻接的字节字符串,但物理实现可能非常不同。 在一个文件系统中对逻辑卷的多次扩展和分配/释放/再分配活动可能出现磁盘分段。 当一个文件系统的可用空间由大量小块空间组成,那么它是成碎片的,就不可能在邻接的块中写出新的文件。

在高度碎片化的文件系统中访问文件可能导致大量的寻道操作和较长的 I/O 响应时间(寻道等待时间决定 I/O 响应时间)。 例如,如果顺序访问文件,那么由大量广泛分散的小块组成的文件布局需要的寻道操作比由一个或几个大的邻接块组成的文件布局要多。 如果随机访问文件,那么广泛分散的布局比文件块紧密相连的布局需要更长的寻道时间。

当文件缓存在内存中时,文件布局对于 I/O 性能的影响减小。 在操作系统中打开一个文件时,它被映射到虚拟内存中一个永久数据段。 这个段代表该文件的虚拟缓冲区;文件的块直接映射到段的页面中。 VMM 管理段页面,根据需要读取文件块到段页面中(当它们被访问时)。 有几种环境会导致 VMM 将一页写回到磁盘上文件中相应的块;但是如果某页最近已经被访问,VMM 通常会在内存中保留该页。 因此,频繁访问的页倾向于在内存中停留较长时间,所以不需要物理磁盘访问就可满足对相应块的逻辑文件访问。

某些时候,用户或系统管理员可选择在逻辑卷中重新组织文件布局以及在物理卷中重新组织逻辑卷布局,从而减少磁盘碎片以及更均匀地分摊 I/O 总负载。 逻辑卷和磁盘 I/O 性能 包含有关检测和更正磁盘放置和分段问题的更多详细信息。