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

Far*_*hid 9 filesystems file disk

我正在阅读《Hadoop:权威指南》,然后出现了以下段落。

磁盘具有块大小,这是它可以读取或写入的最小数据量。单个磁盘的文件系统通过处理块中的数据来构建,块是磁盘块大小的整数倍。文件系统块的大小通常为几千字节,而磁盘块的大小通常为 512 字节。

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

tek*_*aul 1

这取决于硬件。

即使您只想更改一位,SD 设备通常也会重写相对大量的数据。但通常可以在单次读取中读取少量数据。SD 可以在写入期间物理移动数据以实现“磨损均衡”,因此它不会重复写入同一位置并将其磨损。

我认为您无法根据硬盘的块大小来推测物理读取或写入的量,因为该设备有一个控制器尝试优化,使用不公开的代码并考虑了一些因素例如转速、读头位置、芯片布局、已知坏块等。

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

在过去,可能存在直接关系,但现在我不这么认为。