web-dev-qa-db-ja.com

sar -B出力のフィールドはどういう意味ですか?

Sarマンページには次のように書かれています。

pgpgin/s-システムがディスクからページインした1秒あたりの合計キロバイト数。

pgpgout/s-システムがディスクにページアウトした1秒あたりの合計キロバイト数。

fault/s-システムによって1秒間に発生したページフォールト(メジャー+マイナー)の数。一部のページフォールトはI/Oなしで解決できるため、これはI/Oを生成するページフォールトの数ではありません。

majflt/s-システムが1秒あたりに発生した重大な障害の数。ディスクからメモリページをロードする必要がありました。

これはスワップ活動を測定しますか?それはどのページングを指しますか?ディスクからデータを取得することはページングと見なされますか?

また、majflt/sの大きな定数値は良くないことを読みました。どうして?

例:

 Sar -B 
 
 12:00:08 AM pgpgin/s pgpgout/s fault/s majflt/s 
 12:10:05 AM 207.55 2522.76 5109.80 0.01 
 12:20:07 AM 303.83 274.64 4446.52 0.00 
 12:30:05 AM 53.85 251.81 4183.98 0.00 
 12:40:05 AM 43.19 234.05 4181.53 0.00 
 12:50:06 AM 88.89 265.46 4311.81 0.00 
 01:00:09 AM 64.60 232.72 4239.05 0.00 
 01:10:07 AM 69.71 216.89 4523.03 0.00 
 01:20: 06 AM 81.37 250.02 4359.93 0.00 
 01:30:06 AM 79.77 246.28 4291.49 0.00 
 01:40:02 AM 42.89 227.22 4319.88 0.02 
 01:50:06 AM 214.46 441.33 4760.78 0.00 
 [...] 
8
rags

ページングは​​スワッピングと同じではありません。実行可能ファイルを呼び出してディスクからバイナリコードの一部を読み取るとき、または memory-mapped files を操作するときに、ページングアクティビティが発生する場合があります。これは(必ずしも)スワップが使用されることを意味しません。 pgpin/sおよびpgpout/sの値は、このプロセスを参照しています。

メジャーフォールト/秒は、現在物理メモリにロードされていない仮想アドレススペースの部分へのメモリリクエストが原因で発生する必要があるディスク読み取りアクティビティを測定します。このインジケーターは、スワップアウトされたページだけでなく、あらゆる種類のページ(メモリマップファイルやディスク上の実行可能バイナリを含む)にも当てはまります。

メジャーフォールトの数が常に多い場合は、プロセスの実行が頻繁に中断されて、ディスクI/Oがページの読み取りを完了するまで待機しないことを意味します(コード、メモリマップファイルデータ、または以前ディスクにスワップアウトされた他のメモリ部分)。

これは、システムに現在の負荷のためのメモリが不足している可能性がある場合の良い指標です-以前にメモリにロードされたページがメモリ不足のために再びスロー(またはスワップアウト)されると、主要な障害が繰り返し発生します。その後、現在のプロセスによって積極的に作業されているため、再度要求されました。

10
the-wabbit