2017-12-03 310 views
0

我一直在闪存驱动器,硬盘和固态硬盘上使用磁盘IO,通过在Linux中以与其他文件相同的方式打开/dev/sd*路径。磁盘IO是否直接对应其物理扇区位置?

据我所知,磁盘上的内存控制器可以从操作系统隐藏真正的块订单(通过映射)。

这可以归结为以下这些问题:

  1. 由OS认为在为了/dev/sd*块,或为了通过磁盘的内存控制器所察觉?

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

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

  4. Flash,HDD和SSD的属性不同吗?

  5. 是否可以在打开的/dev/sd*路径中的某个特定索引发生写入,还是由存储器控制器决定?

在此先感谢!

回答

0

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

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

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

+0

我明白了。非常感谢! – hiten