システムモニタにディスクIOアクティビティが表示されない場合、デスクトップコンピュータのHDD LEDが点滅するのはなぜですか?

システムモニタにディスクIOアクティビティが表示されない場合、デスクトップコンピュータのHDD LEDが点滅するのはなぜですか?

今日、ディスク(SSD)に書き込んだり読んだりするプロセスがない場合でも、デスクトップHDD LEDが点滅することがわかりました。

端末を開き、htopすべてのプロセスを実行してソートしましたIO_RATE。私のコンピュータのHDD LEDがまだ毎秒1〜2回点滅していても、ディスクからの書き込みまたは読み取りプロセスがないことは明らかです。なぜこれが起こるのですか?

答え1

これが起こる理由はいくつかあります。ほとんどの場合、Linuxでの書き込みは書き込みの保存(ページがページキャッシュにバッファリングされ、ディスクにフラッシュされます)によって発生し、その後無期限に発生する可能性があります。write()一方、I/O カウンタは通常、即時書き込み/読み出しスループットを測定します。

もう1つのことは、これらのカウンタがディスクではなくLinuxが実行したいことだけを知っていることです(カウンタによっては、書き込みの保存やI / Oスケジューラの決定などの作業も除外できます)。多くのディスクは、オペレーティングシステムに見えない操作を独立して実行します。特に注目すべき例(あなたの場合ではありませんが、それでも)はSMRディスクです。 OSがデータの書き込みを完了するのに長い時間がかかりますが、ディスクはより高速な中間記憶域からデータをスグルに移動した後でも機能します。

一般に、オペレーティングシステム層でI / Oを測定することは不正確な場合が多く、使用されるカウンタhtopも最も進歩していません。詳細については、io.statより詳細で可視的なレポート機能を備えたcgroup v2をお試しください。

関連情報