文件系统块大小与磁盘块大小

时间:2018-06-24 00:28:42

标签: file filesystems disk

我正在阅读 Hadoop:权威指南,下面的段落出现了。

  

磁盘具有块大小,这是该磁盘的最小数据量   可以读写。单个磁盘的文件系统在此基础上构建   分块处理数据,是块的整数倍   磁盘块大小。文件系统块通常在几千字节   大小,而磁盘块通常为512字节。

我的理解是磁盘块受硬件限制(每次可以从磁盘读取/写入的数据量)。操作系统创建一个称为文件系统的抽象,它具有自己的块大小,该块大小大于磁盘块大小。与磁盘类似,操作系统以文件系统块大小的大小读取/写入数据。对于单个读/写文件系统块,将执行多个磁盘块操作。我的理解正确吗?

1 个答案:

答案 0 :(得分:1)

这取决于硬件。

即使您只想更改一位,SD设备通常也会重写相对大量的数据。但是通常一次读取就可以读取更少量的数据。 SD可能会在写入过程中物理地移动数据以进行“损耗平衡”,因此它不会重复写入同一位置并将其磨损。

我不认为您可以根据HD的块大小来推测要多少物理读写,因为该设备具有一个控制器,该控制器尝试使用不公开且正在使用的代码进行优化。考虑到诸如转速,读取磁头位置,芯片布局,已知的坏块等问题。

HD块实际上只是设备公开的最小参考数据块。 文件系统块只是FS代码公开的最小的可参考块。

在过去的日子里,也许有直接的关系,但我现在不认为这是直接的。