Scroll to navigation

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);

このマニュアルについて

これは、Linux Kernel 2.4 の時代に使われていた modutils パッケージ所収の古いマニュアルです。(2022/12/02, Linux JM Project)

説明

tableNULL ならば、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