高いディスクI / Oがシステムの応答性/パフォーマンスを低下させるのはなぜですか?

高いディスクI / Oがシステムの応答性/パフォーマンスを低下させるのはなぜですか?

私はなぜ高いディスクI / Oのためにシステムが遅くなるのかわかりませんでした。速度の低下はハードドライブ/光ドライブのデータに依存するプロセスにのみ影響を与えると予想しましたが、速度の低下はRAMにロードされたコンテンツにも影響を与える可能性があるため、これは私にとって奇妙です。私がここで言うのは待つ

プロセッサが他のタスクを実行するのではなく待機するのはなぜですか?誰もがこの制限とLinuxカーネルでこの制限が解決されない理由を説明できますか?この問題のないカーネルはありますか?

[ノート] すでに持っています少し進歩このパフォーマンス領域で。まず、最新のカーネル(私の場合は2.6.37)がより反応性があります。

ベストアンサー1

オペレーティングシステムの活用仮想メモリこれにより、使用可能な物理RAMよりも多くのメモリを使用できます。カーネルが物理メモリページをより使いやすくすると、その内容をディスクに保存するために「インポート」することができます。コールアウトからこれらの仮想メモリページにアクセスすると、ページエラーディスクからRAMに戻ります。

ディスクレイテンシはミリ秒単位で測定され、RAMレイテンシはナノ秒単位で測定されるため、ページエラーはパフォーマンスにとって災害です。 (1ミリ秒=100万ナノ秒!)

メモリは、ユーザプロセスだけでなく、ファイルシステムキャッシュなどの操作のためにカーネルでも使用されます。ファイルシステム活動中、カーネルは最近使用したデータをキャッシュします。同じデータがすぐに再利用される可能性が高いと仮定するため、キャッシュを使用するとI / Oパフォーマンスが向上します。

ファイルシステムキャッシュに使用される物理メモリはプロセスで使用できないため、ファイルシステムアクティビティ中に、より多くのプロセスメモリがページアウトされ、ページエラーが増加します。また、メモリページをディスクに移動するために使用できるディスクI / O帯域幅が少なくなります。その結果、プロセスが中断される可能性があります。

おすすめ記事