KVM
Section: C Library Functions (3)
索引
jman
BSD mandoc
索引
名称
kvm
- カーネルメモリインタフェース
索引
ライブラリ
Lb libkvm
索引
解説
kvm(3)
ライブラリは、作動中のシステムとクラッシュダンプを含めて、
カーネル仮想メモリイメージをアクセスするための
一様なインタフェースを提供します。
作動中のシステムへのアクセスは
/dev/mem
を経由して行われます。
他方、クラッシュダンプは
savecore(8)
が生成するコアファイルを経由して検証できます。
インタフェースは同じように動作します。
メモリは読み取りと書き込みができ、
カーネルシンボルアドレスは効率的に調べることができ、
ユーザプロセスの情報が収集できます。
Fn kvm_open
は、すべての後続する呼び出しで必要となる記述子を得るために、
最初に呼び出されます。
索引
互換性
kvm インタフェースは最初に SunOS で取込まれました。
このインタフェースを使用するかなりの数のプログラムが開発されましたので、
後方互換性を保つことが非常に望まれています。
ほとんどの点で、Sun kvm インタフェースは一貫しており、クリーンです。
従って、インタフェースのジェネリックな部分
(すなわち
Fn kvm_open ,
Fn kvm_close ,
Fn kvm_read ,
Fn kvm_write ,
Fn kvm_nlist )
は
BSD インタフェースに組み込まれてしまっています。
実際、多くの kvm アプリケーション (たとえばデバッガや統計的モニタ)
はインタフェースのこのサブセットのみを使用します。
プロセスインタフェースは残されませんでした。
これは移植性の問題ではありません。
プロセスを操作するどのようなコードも、本質的にマシン依存だからです。
最後に、Sun kvm エラー報告セマンティクスはうまく定義されていません。
ライブラリは、stderr に自動的にエラーを印字する、
あるいはエラーメッセージをまったく印字しないのどちらかに設定できます。
後者の場合には、エラーの性質は決定できません。
この問題を克服するために、
BSD インタフェースは
kvm_geterr3
ルーチンを持ち、
該当の記述子における最新のエラー状態に対応する
エラーメッセージを返します (印字しません)。
索引
関連項目
kvm_close3,
kvm_getargv3,
kvm_getenvv3,
kvm_geterr3,
kvm_getfiles3,
kvm_getloadavg3,
kvm_getprocs3,
kvm_getswapinfo3,
kvm_nlist3,
kvm_open3,
kvm_openfiles3,
kvm_read3,
kvm_write3
索引
Index
- 名称
-
- ライブラリ
-
- 解説
-
- 互換性
-
- 関連項目
-
Time: 07:06:56 GMT, January 12, 2009