Unix-system-calls-query-module
[top]#
[[File:]]
[[File:]] |
|Web |This Site
- 初心者向けのUnix *
- Unix-ホーム
- Unix-はじめに
- Unix-ファイル管理
- Unix-ディレクトリ
- Unix-ファイル権限
- Unix-環境
- Unix-基本ユーティリティ
- Unix-パイプとフィルタ
- Unix-プロセス
- Unix-コミュニケーション
- Unix-The Vi Editor
- Unix Shellプログラミング*
- Unix-シェルとは?
- Unix-変数の使用
- Unix-特殊変数
- Unix-配列の使用
- Unix-基本的な演算子
- Unix-意思決定
- Unix-シェルループ
- Unix-ループ制御
- Unix-シェル置換
- Unix-引用メカニズム
- Unix-IOリダイレクト
- UNIX-シェル関数
- Unix-マンページヘルプ
- 高度なUnix *
- Unix-正規表現
- Unix-ファイルシステムの基本
- Unix-ユーザー管理
- Unix-システムパフォーマンス
- Unix-システムログ
- Unix-信号とトラップ
- Unixの便利なリファレンス*
- Unix-便利なコマンド
- Unix-クイックガイド
- Unix-組み込み関数
- Unix-システムコール
- Unix-コマンドリスト
- Unixの役立つリソース*
- Unix役立つリソース
選択した読書
- http://www.finddevguides.com/computer_glossary [コンピュータ用語集] *http://www.finddevguides.com/computer_whoiswho[Who is Who]
Copyright©2014 by finddevguides
Home | References | Discussion Forums | About TP |
query_module()-Unix、Linuxシステムコール
[[File:]] image :http://www.finddevguides.com/images/next.gif [next] image:http://www.finddevguides.com/add- this.gif [AddThisソーシャルブックマークボタン]
広告
NAME
query_module-モジュールに関連するさまざまなビットについてカーネルを照会します
概要
#include <linux/module.h> int query_module(const char* name, int which, void *buf, size_t bufsize, size_t *ret); |
説明
_which_には次の値を指定できます。
Tag
説明
0
常に成功を返します。 システムコールの可用性をプローブするために使用されます。
ロードされたすべてのモジュールの名前を返します。 返されるバッファは、ヌルで終わる文字列のシーケンスで構成されます。 _ret_はモジュールの数に設定されます。
指定されたモジュールによって使用されるすべてのモジュールの名前を返します。 返されるバッファは、ヌルで終わる文字列のシーケンスで構成されます。 _ret_はモジュールの数に設定されます。
指定されたモジュールを使用して、すべてのモジュールの名前を返します。 これは QM_DEPS の逆です。 返されるバッファは、ヌルで終わる文字列のシーケンスで構成されます。 _ret_はモジュールの数に設定されます。
カーネルまたは指定されたモジュールによってエクスポートされたシンボルと値を返します。 返されるバッファは、次の形式の構造体の配列です
struct module_symbol { unsigned long value; unsigned long name; }; |
ヌル終了文字列が続きます。 _name_の値は、_buf_の先頭に対する文字列の文字オフセットです。 _ret_はシンボルの数に設定されます。
指定されたモジュールに関するその他の情報を返します。 出力バッファの形式は次のとおりです。
struct module_info { unsigned long address; unsigned long size; unsigned long flags; }; |
ここで、_address_はモジュールが存在するカーネルアドレス、_size_はバイト単位のモジュールのサイズ、_flags_は MOD_RUNNING 、 MOD_AUTOCLEAN などのマスクです。 モジュールの現在のステータスを示します(カーネルソースファイル_include/linux/module.h_を参照)。 _ret_は、_module_info_構造体のサイズに設定されます。
返り値
成功すると、ゼロが返されます。 エラーの場合、-1が返され、_errno_が適切に設定されます。
エラー
Tag | Description |
---|---|
EFAULT | At least one of name, buf, or ret was outside the program’s accessible address space. |
EINVAL | Invalid which; or name is NULL (indicating "the kernel"), but this is not permitted with the specified value of which. |
ENOENT | No module by that name exists. |
ENOSPC | The buffer size provided was too small. ret is set to the minimum size needed. |
準拠
ノート
このシステムコールは、カーネル2.4までLinuxにのみ存在します。 Linux 2.6では削除されました。 query_module ()を介して利用可能な情報の一部は、/proc/modules _、/proc/kallsyms_、および_/sys/modules_から取得できます。
関連項目
[[File:]] image :http://www.finddevguides.com/images/next.gif [next] [[File:]]
広告
Advertisements |