设备什么时候从文件系统获得512B请求?

时间:2016-10-03 22:52:37

标签: linux filesystems block linux-device-driver

是Linux的新手,并且已经做了一些阅读。但是对于以下内容我有点困惑。设备是否可以收到单个512B扇区的请求?在什么条件下会发生这种情况?根据我的理解,虽然扇区大小定义了设备可以被寻址的最小单元,但FS通常具有4K的块大小(fs的最小访问单元)。所以这意味着大多数(所有)命令都由FS以4k粒度进行寻址。

  1. 文件系统是否可以从应用程序流量生成< 4K(1-7 512bytes)的流量?

  2. 是否有一些文件系统元数据会导致此类流量?

  3. 如果我们将分区对齐到4k边界,设备是否会始终在4k边界上对齐命令?

1 个答案:

答案 0 :(得分:1)

这可能由于各种原因(假设您的磁盘暴露逻辑扇区大小为512字节)而发生,因为您在文件系统之外发送了正确对齐的512字节的直接请求:

某些情况在一般情况下会发生这种情况:

  • 读取旧式MBR分区表(在磁盘的起始处适合512字节)
  • 重写引导程序或因为你告诉它发生
  • 尝试从512字节扇区的损坏磁盘中读取最小的扇区