将分区格式化为仅适用于照片的块大小

将分区格式化为仅适用于照片的块大小

我有很多照片,正在对它们进行广泛的处理,主要是通过照片浏览器快速浏览它们,同时也通过脚本进行一些工作。

  • 格式化一个块大小大于 4096(例如 64k)的单独分区是否有意义?
  • 我对文件的 I/O 操作会改善吗?如何
  • 对于具有 512 个块大小分区的 HDD 来说,它是否健康且安全?

干杯。

答案1

格式化一个具有 4096 块大小的单独分区是否有意义?

通常是的。这也是大多数文件系统

我对文件的 IO 操作是否会改善?如何改善?

由于您使用默认设置,因此它们不会改变。

现在,如果您想格式化磁盘上的低级扇区(而不是使用这些磁盘块顶部的文件系统的方式):

如果如果磁盘允许 4KB 扇区读取,则您可以在单个 IO 操作中读取 8 倍以上的数据。这并不等同于 8 倍更快,因为读取可能需要更长时间。不过,它可能会更快一些。

它是否健康安全对于硬盘是否还有 512 个块大小的分区?

我怀疑这既不是您想问的,也不是最终用户可用的工具可以实现的。

我做过的最接近的事情是低级重新格式化旧 IBM 大型机 SCSI 磁盘,从每扇区 520 字节到每扇区 512 字节。这是整个磁盘,包括备用扇区。

现在,SATA 磁盘使用与旧 SCSI 磁盘相同的技巧:当扇区读取失败时,它会尝试读取该扇区几次。如果重新读取成功:没什么大不了的。如果同一扇区发生几次这种情况,则认为它很快就会失败,并使用备用扇区代替。这一切都在固件中完成,最终用户不会注意到这一点。

现在,如果您开始更改磁盘上的物理扇区大小,那么您还需要重写固件,以便它能够识别不同的扇区大小并使用正确的备用扇区。从技术上讲这是可行的,但在实践中,您需要工厂工具和内部知识。

答案2

块大小与硬盘上的读取和存储文件有关。

格式化一个块大小大于 4096(例如 64k)的单独分区是否有意义?
取决于尺寸你的照片。如果所有或至少大多数文件的大小都是这个或稍微少一点比这个的倍数,它肯定会有所帮助,否则它们只会占用更多的空间。

我对文件的 IO 操作是否会改善?如何改善?
如果文件的文件大小是块大小的倍数或略小于块大小,则可能会在一定程度上有所帮助,因为读写是按块而不是字节完成的。

对于具有 512 个块大小分区的 HDD 来说,它是否健康且安全?
我不知道改变块大小是否会对 HDD 造成任何不良影响。

答案3

我假设您使用的是 ext4。默认使用对文件系统性能最佳的块大小,通常已经是 4kb。您可以通过运行以下命令来查看:

$ sudo tune2fs -l <partition device>

如果 HDD 具有较小的块,则没有问题,这只是意味着文件系统使用了多个底层块。

ext4 在使用块方面非常巧妙,因此对于大型文件,它不会在单个 4kb 调用中不断来回移动。无法直接使用更大的块大小(mkfs.ext4 -b 8192 <device>例如,无法工作)。有一个未记录的-C选项可以指定簇大小,这可以有效地增加块大小。

相关内容