曲径通幽论坛

标题: 簇概念(Cluster) [打印本页]

作者: beyes    时间: 2011-8-8 13:15
标题: 簇概念(Cluster)
在磁盘驱动里面,一个簇就由一组块组成(或由一组扇区组成),操作系统可以簇为一个逻辑单元进行寻址。

在计算机文件系统里,一个簇是磁盘空间的一个管理单元,它用来为文件和目录分配空间。为了减少磁盘上数据的管理负担,文件系统不会分配一个单独的扇区,而是将临近的一组扇区组成一个大的数据块进行管理,这个大的数据块就称之为一个簇。

一个簇并不要求在磁盘上拥有连续的物理空间。如果扇区与扇区之间没法连续(如 A 扇区和 F 扇区之间的 B-E 扇区已经被使用),簇在同一个磁道里会是不连续的,甚至还可能会横跨多个磁道。如果听说过磁盘碎片,那么这就不是什么奇怪的事情了;然而在一个簇里的扇区它们在逻辑上是连续的。

大部分的 HDD 在出场时会进行低格,低格时就是以 512 字节块来进行的。文件系统(这里仅指 NTFS)可以将多个 512 字节块创建一个簇(默认值是 4K 或说是 8 个扇区)。

数据块(扇区)是物理磁盘层面的概念,而簇是文件系统这一层面的概念。

在 Windows 服务器里,簇被用来分配为文件系统的管理单元。

文件与簇大小之间的平衡
一个簇就是为文件分配存储空间的最小逻辑单元。在一个文件系统上用大簇来存储小文件肯定会造成磁盘空间的浪费,这些浪费的空间被成为“空间凹地”(slack space) ,如果簇越大,那么这种空间的浪费就会越明显。但是,大簇的一个好处是减少了碎片的产生以及访问的负担,从而又提高了读写性能。

典型情况下,簇的大小的范围从 1 个扇区(512 Byte)到 128 个扇区(64KB)之间。

图示:





欢迎光临 曲径通幽论坛 (http://www.groad.net/bbs/) Powered by Discuz! X3.2