get_kernel_syms

Autres langues

Langue: ja

Autres versions - même langue

Version: 2007-06-03 (openSuse - 09/10/07)

Section: 2 (Appels système)

̾Á°

get_kernel_syms - ¸ø³«¤µ¤ì¤Æ¤¤¤ë¥«¡¼¥Í¥ë¤ä¥â¥¸¥å¡¼¥ë¤Î¥·¥ó¥Ü¥ë¤Î¼èÆÀ

½ñ¼°


#include <linux/module.h>



int get_kernel_syms(struct kernel_sym *table);

ÀâÌÀ

get_kernel_syms() ¤Ï¡¢ table ¤¬ NULL ¤Î¾ì¹ç¡¢ Ì䤤¹ç¤ï¤»¤Ç¤­¤ë¥·¥ó¥Ü¥ë¤Î¿ô¤òÊÖ¤¹¡£ NULL °Ê³°¤Î¾ì¹ç¡¢°Ê²¼¤Î¹½Â¤ÂΤÎÎó (table) ¤ËÃͤòÆþ¤ì¤ÆÊÖ¤¹¡£

struct kernel_sym {

    unsigned long value;

    char          name[60];

};

¥·¥ó¥Ü¥ë¤ÎÃæ¤Ë¤Ï¡¢ #module-name ¤È¤¤¤¦·Á¼°¤Î¡¢¥«¡¼¥Í¥ë¤¬¶õ¤Î̾Á°¤ò»ý¤Ã¤Æ¤¤¤ë¥Þ¥¸¥Ã¥¯¥·¥ó¥Ü¥ë (magic symbol) ¤¬»¶ºß¤·¤Æ¤¤¤ë¡£¤³¤Î·Á¼°¤Î¥·¥ó¥Ü¥ë¤ËÂбþ¤¹¤ëÃÍ¤Ï ¥â¥¸¥å¡¼¥ë¤¬¥í¡¼¥É¤µ¤ì¤¿¥¢¥É¥ì¥¹¤È¤Ê¤ë¡£

¸Ä¡¹¤Î¥â¥¸¥å¡¼¥ë¤«¤é¸ø³« (export) ¤µ¤ì¤¿¥·¥ó¥Ü¥ë¤Ï¡¢¥Þ¥¸¥Ã¥¯¥â¥¸¥å¡¼¥ë¥¿¥° ¤Î¸å¤í¤ËÃÖ¤«¤ì¤ë¡£¤Þ¤¿¡¢¥â¥¸¥å¡¼¥ë¤Ï¥í¡¼¥É¤µ¤ì¤¿½çÈ֤Ȥϵսç¤ÇÊÖ¤µ¤ì¤ë¡£

ÊÖ¤êÃÍ

À®¸ù¤¹¤ë¤È¡¢ table ¤Ë¥³¥Ô¡¼¤µ¤ì¤¿¥·¥ó¥Ü¥ë¿ô¤òÊÖ¤¹¡£ ¥¨¥é¡¼¤Î¾ì¹ç¡¢-1 ¤òÊÖ¤·¡¢ errno ¤òŬÀÚ¤ËÀßÄꤹ¤ë¡£

¥¨¥é¡¼

ÊÖ¤ë²ÄǽÀ­¤¬¤¢¤ë¥¨¥é¡¼¤Ï°ì¤Ä¤À¤±¤Ç¤¢¤ë¡£
ENOSYS
get_kernel_syms() ¤¬¤³¤Î¥Ð¡¼¥¸¥ç¥ó¤Î¥«¡¼¥Í¥ë¤Ç¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Ê¤¤¡£

¥Ð¡¼¥¸¥ç¥ó

¤³¤Î¥·¥¹¥Æ¥à¥³¡¼¥ë¤¬Â¸ºß¤¹¤ë¤Î¤Ï¥«¡¼¥Í¥ë 2.4 ¤Þ¤Ç¤Î Linux ¤À¤±¤Ç¤¢¤ë¡£ Linux 2.6 ¤Ç¤Ïºï½ü¤µ¤ì¤¿¡£

½àµò

get_kernel_syms() ¤Ï Linux ¸ÇÍ­¤Ç¤¢¤ë¡£

¥Ð¥°

table ÍѤ˳ÎÊݤ·¤¿¥Ð¥Ã¥Õ¥¡¤ÎÂ礭¤µ¤òÅÁ¤¨¤ëÊýË¡¤¬¤Ê¤¤¡£ ¥×¥í¥°¥é¥à¤¬¥·¥ó¥Ü¥ë¥Æ¡¼¥Ö¥ë¤ÎÂ礭¤µ¤òÌ䤤¹ç¤ï¤»¤¿¸å¤Ë¡¢¥«¡¼¥Í¥ë¤Ë ¥·¥ó¥Ü¥ë¤¬Äɲ䵤ì¤ë¤È¡¢¥á¥â¥ê¤ÎÆâÍƤ¬Ç˲õ¤µ¤ì¤ë¤³¤È¤Ë¤Ê¤ë¡£

¸ø³«¤µ¤ì¤ë¥·¥ó¥Ü¥ë̾¤ÎŤµ¤¬ 59 ʸ»ú¤ËÀ©¸Â¤µ¤ì¤Æ¤¤¤ë¡£

¤³¤ì¤é¤ÎÀ©¸Â¤¬¤¢¤ë¤Î¤Ç¡¢¤³¤Î¥·¥¹¥Æ¥à¥³¡¼¥ë¤ò»È¤¦¤è¤ê¤Ï query_module(2) ¤ò»È¤¦¤Î¤¬Ë¾¤Þ¤·¤¤ (¸½ºß¤Ç¤Ï query_module(2) ¼«¿È¤â¤½¤Î¥Þ¥Ë¥å¥¢¥ë¥Ú¡¼¥¸¤Ë½ñ¤«¤ì¤Æ¤¤¤ë¤è¤¦¤Ë ¾¤Î¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ò»È¤¦¤Î¤¬Ë¾¤Þ¤·¤¤¤È¤µ¤ì¤Æ¤¤¤ë)¡£

´ØÏ¢¹àÌÜ

create_module(2), delete_module(2), init_module(2), query_module(2)