NTFS中的分区块大小和卷大小有什么区别?

我最近格式化了一个新的磁盘(挂载点),并且想在Windows Server 2012 R2上validation正确的块大小。 使用PowerShell,我检查了WMI计数器

gwmi win32_volume | select name,blocksize

产生:

M:\ Volume2 \ 65536

我想检查起始偏移,所以我检查了分区:

gwmi win32_diskpartition | select name,startingoffset,blocksize

这产生了:

磁盘#5,分区#0 1048576 512

所以分区块大小是512,但是卷是64K。 有人能帮我理解这两个“块大小”之间的区别吗?

在一个非常基本的层面上,我理解了分区和音量之间的区别,但是我正在寻找这些测量的含义,或者是他们实际测量的差异(如果有的话)。

卷块的大小也可以被认为是“逻辑块大小”,这是您在硬盘上放置的文件系统所设置的块大小。

分区块的大小基本上就是将位写入硬盘的硬件可以以(a / k / a“物理块大小”)写入的大小。 在低端和台式机控制器上,通常在高端控制器上这个固定(通常在8到64K的范围内),这可以被configuration成由制造商设定的最大值。

现在,块为什么重要? 那么,这是一个更长的答案。 但取决于您的应用程序和它读取和写入的文件的大小。 一般来说你有两个需要注意的地方:

文件大小:

每个文件将占用至less一个块,通常更多。 您不能将多个文件写入同一个块。 在许多小文件的情况下,您将开始损失大量的可用磁盘空间。 例如:我有一个1024 MB的磁盘,磁盘大小为64k,总共有16000个磁盘块,但是我只写了2kb的文件,这意味着对于每写入2k的数据在磁盘上占用64k的空间。 这会使我失去每个写入的磁盘空间62K。

性能:

在块大小进入性能的地方是,你希望你的逻辑块的大小与你的物理块大小一致,这样当你读或写磁盘时,你不必从控制器获取更多的块,需要。 比如说你的块没有alignment。 他们都是64k,你正在读59k文件。 现在,当你从磁盘上读取这个文件时,你的控制器需要出去抓取两个数据块,总共128k的数据被抓取通过控制器,以获取逻辑分区上一个数据块中包含的数据。

另一方面,如果您正在从磁盘读取或写入大型文件,则使用更大的块大小会更有效,因此控制器和文件系统可以一次获取更多的数据,而不是使用更小的块大小。