4

Linux、特にO_DIRECTでファイルの読み取りと書き込みのパフォーマンスを実験してきましたが、ハードドライブレベルとposix / Linux APIレベルの両方で、数バイトしか書き込みできないのではないかと思います。セクターの残りの部分を破壊することなく、そして最初にそれを読むことなく、セクター?

4

2 に答える 2

1

ディスクドライブに関する私の経験では、データがセクター全体で送信されることを期待しています。したがって、基本的に、セクター全体よりも少なく書き込む方法はありません。セクターの終わりを変更せずにセクターの開始を変更する場合は、セクター全体を読み取り、変更して書き戻す必要があります。これは、ディスクヘッドがプラッターとどのように相互作用するかと部分的に関係しています(とにかく物理ディスクの場合。フラッシュドライブの場合、フラッシュのチャンクを一度に消去できる可能性が高くなります)。

于 2012-10-17T12:14:27.290 に答える
0

ポータブルな方法で?おそらくそうではありません。

Linuxおよび他のいくつかのUnixライクなシステムでは、ドライブのブロックデバイスを開き、位置(おそらくセクターサイズに合わせて)を探してデータを書き込むことができますが、それがどのような影響を与えるかはわかりませんそのブロックの残りの部分にあります。

最善の策は、仮想マシンで試して何が起こるかを確認することです。(明らかに、ブロックデバイスへの書き込み権限が必要です。)

于 2012-10-16T17:26:02.847 に答える