質問: trimとは正確には何ですか? [〜#〜] trim [〜#〜] のウィキペディアページから、ssdへの書き込みを減らすためにtrimが導入されたという印象を受けますが、どのブロックが未使用。それが正しければ、trimを使用しないssdは、ファイルが削除されたときにブロックにゼロを書き込んで、ssdにブロックが空いていることを知らせますか?読書 this ゲスト内のファイルシステムはブロックを再利用しない傾向があります。つまり、ファイルシステムが仮想イメージサイズに比べて小さいままであっても、実際のイメージサイズは最大サイズに達するまで大きくなる傾向があります。 ssdはゼロで上書きされないのだろうか?それとも、ゲストのファイルシステムはまったく違うものですか?
回答: trimが導入されたのは、オペレーティングシステム(os内のファイルシステム)が、セクターがファイルシステムによって使用されなくなったことをataストレージメディアと通信できるようにするためです。これは、ディスクへの書き込みとは何の関係もありません。trimは、メディアでセクターがゼロになることを保証しません。ファイルシステムがそのセクターからの読み取りを要求したときにゼロが返されることを保証します(ssdはセクターがゼロであることを認識しているため、実際にメディアに格納されているものに関係なく、セクターがゼロを返すことに注意してください。回復できる場合があります。通常、ssdは実際にメモリを消去しますが、単純にトリミングされたディスクからのデータ)。ファイルシステムは、書き込みを分散する傾向があります(さまざまな理由で、書き込みの平準化の試行から、ガベージコレクション、保存場所のランダム化など、あらゆるものがあります)。このため、メディアがファイルシステムが使用していないセクターを認識していない場合、ゼロを書き込むだけでは必ずしもセクターが使用されていないことを意味するわけではなく、最終的にはディスク全体が使用されていると想定する必要があります。ssdの場合、この仮定は、書き込み時にセクターを消去する必要があることを意味し、書き込み速度が低下します。ファイルが削除されたときにメモリ位置を消去する代わりに。仮想化システムの仮想ディスクファイルの場合と同様に、ダイナミックディスクファイルは最終的に仮想ディスクの全容量を網羅します。仮想化システムがtrimを実装している場合、セクターが使用されなくなったことを認識します。したがって、ダイナミックディスクはその場所を追跡する必要がありません。