GET_KERNEL_SYMS(2) | Linux Module Support | GET_KERNEL_SYMS(2) |
名前
get_kernel_syms -エクスポートされているカーネルとモジュールのシンボルを取得する書式
#include<linux/module.h>
int get_kernel_syms(struct kernel_sym * table );
説明
table が NULL ならば、 get_kernel_syms は問い合わせできるシンボルの数を返す。 NULL でなければ、以下の構造体に値を入れて返す:
struct kernel_sym
{
unsigned long value;
char name[60];
};
シンボルの中には #モジュール名 という形式の、カーネルが空の名前を持っているマジックシンボルが散在している。この形式のシンボルに対応する値は、モジュールがロードされた位置のアドレスである。
それぞれのモジュールからエクスポートされたシンボルは、マジックモジュールタグの後に置かれる。また、モジュールはロードされた順番と逆順で返される。
返り値
返り値は返されるシンボル数である。エラーで復帰することはない。関連項目
create_module(2), init_module(2), delete_module(2), query_module(2)バグ
table のために確保したバッファの大きさを伝える方法がない。プログラムがシンボルテーブルの大きさを問い合わせた後にカーネルにシンボルが追加されると、メモリの内容が破壊される。エクスポートされるシンボル名の長さは 59 文字に制限される。
以上の制限により、このシステムコールよりは query_module を使う方が望ましい。
26 Dec 1996 | Linux |