【问题标题】:Does disk IO correspond directly to its physical sector location?磁盘 IO 是否直接对应其物理扇区位置?
【发布时间】:2018-05-16 18:28:28
【问题描述】:

我一直在玩闪存驱动器、HDD 和 SSD 上的磁盘 IO,方法是在 Linux 中打开 /dev/sd* 路径,就像打开任何其他文件一样。

我知道磁盘上的内存控制器可以向操作系统隐藏真正的块顺序(通过映射)。

这归结为以下问题:

  1. /dev/sd* 中的块是按照操作系统感知的顺序,还是按照磁盘内存控制器感知的顺序?

  2. /dev/sd* 中的块顺序在 POSIX 操作系统之间是主观的吗?

  3. 如果在 NT 或 Cygwin 系统上完成这些属性可以更改吗?

  4. 闪存、HDD 和 SSD 之间的此属性是否不同?

  5. 是否可以对打开的/dev/sd* 路径中的特定索引进行写入,或者这是由内存控制器决定的?

提前致谢!

【问题讨论】:

    标签: io operating-system posix disk nt


    【解决方案1】:

    如果您将设备节点用于整个磁盘(/dev/sda/dev/sdb 等),则块设备的文件偏移量对应于逻辑块地址,并且可以跨系统移植(假设磁盘支持扇区大小)。这与存储技术无关。

    但是,设备节点的名称因系统而异。

    如果您使用子设备(分区),则不一定是这种情况,因为对分区表的解释和支持差异很大。

    【讨论】:

    • 我明白了。非常感谢!
    猜你喜欢
    • 2013-10-05
    • 2012-04-11
    • 2011-09-06
    • 2019-12-05
    • 2014-12-21
    • 1970-01-01
    • 2011-08-22
    • 1970-01-01
    • 2020-02-03
    相关资源
    最近更新 更多