5

より具体的には、この情報をプログラム内から、できればスワッピングを開始する直前に見つけて、対応できるようにしたいと考えています。これまでのところ、私は見つけました:

  • /procあまり役に立たない内の情報

  • mincoresyscall は Linux と BSD で利用できるようですが、興味のあるすべてのページを渡す必要があります (これで十分かもしれませんが、少し面倒です)。

他にアイデアはありますか?

4

1 に答える 1

2

vmstat

2秒ごとに実行するには、「vmstat2」と言います。次のような出力が得られます。

procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 0  0      0  16124 431352 439000    0    0     4     2   37   18  0  0 100  0  0

「si」列と「so」列は「swap-in」と「swap-out」です。Swapdは、スワップデバイスにあるメモリの量です。Swapdは安定している必要があり、siなどはゼロです。

覚えて:

「システムの交換ですか」ではなく、「私のプログラムの交換ですか」と実際に尋ねるべきではありません。あなたのプログラムは他の人をスワップさせることができます-他の人はあなたをスワップさせることができます、など。いずれにせよ、それが起こったとき-パフォーマンスd ... i..e ...s...。

于 2010-11-23T14:31:55.170 に答える