我一直在尝试在 Linux 上读写文件的性能,特别是 O_DIRECT,我想知道,无论是在硬盘驱动器级别还是 posix/Linux API 级别,是否有可能只向一个写入几个字节扇区,而不破坏扇区的其余部分,并且不先读取它?

最佳答案

我对磁盘驱动器的经验是,他们希望将数据以整个扇区发送给他们。因此,基本上,没有办法写入少于整个扇区的内容,如果您希望在不更改结尾的情况下更改扇区的开头,则 必须 读取整个扇区,修改并写回。这部分与磁盘磁头与盘片的交互方式有关(无论如何对于物理磁盘。在闪存驱动器的情况下,更有可能是一次擦除的闪存块有多小)。

关于c - 有没有办法在不先读取的情况下将几个字节写入磁盘扇区?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12919471/

10-09 06:38
查看更多