EN JA
KVM_SWAPINFO(3)
KVM_SWAPINFO(3) FreeBSD Library Functions Manual KVM_SWAPINFO(3)

名称

kvm_getswapinfoシステムのスワップ要約統計値を返す

ライブラリ

Kernel Data Access Library (libkvm, -lkvm)

書式

#include < kvm.h>

int
kvm_getswapinfo( kvm_t *kd, struct kvm_swap *, int maxswap, int flags);

解説

kvm_getswapinfo() 関数は、 maxswap - 1 ディバイスまで、各スワップディバイスについてスワップ要約情報の kvm_swap 構造体の配列で満たします。ディバイスの数は、 maxswap - 1 まで返されます。全てのスワップディバイス ( maxswap - 1 を越えるすべてのディバイスを含んで) の総数は、1 つの追加配列エントリで返されます。このエントリは、返り値には含まれません。したがって、 maxswap 値を 1 に指定するなら、関数は、通常値 0 を返します。また、単一の kvm_swap 構造体は、すべてのスワップディバイスを越える総数で満たされます。配列の中でそれらすべてに場所を作っても作らなくても、総数は、すべての利用可能なスワップディバイスから計算されます。総数は、返されます。

フラグ引数は、現在未使用で、0 として渡されなければなりません。

エラーが生じたなら、-1 が返されます。

各スワップパーティションおよび総数は、 kvm_swap 構造体で要約されます。構造体は、次のフィールドを含んでいます。

  • char ksw_devname[];
  • int ksw_total;
  • int ksw_used;
  • int ksw_flags;

値は、 PAGE_SIZE のチャンクにあります。 ( getpagesize(3) を参照)。 ksw_flags は、スワップディバイスフラグのコピーを含んでいます。

キャッシング

この関数は、連続呼び出しで再利用される種々のカーネル変数の nlist 値をキャッシュします。キャッシュをクリアするために kd == NULL で関数を呼び出すことができます。

診断

負荷平均(ロードアベレージ)が入手できないなら、-1 が返されます。そうでなければ、実際に取り出されたスワップディバイスの数が返されます。

スワップデバイスの名前が構造体中の静的文字バッファに入らないなら、それは、切り詰められます。バッファは、常にヌルで終了します。

関連項目

kvm(3)
January 22, 1999 FreeBSD