1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102
|
.\" Copyright (C) 1996 Free Software Foundation, Inc.
.\" This file is distributed according to the GNU General Public License.
.\" See the file COPYING in the top level source directory for details.
.\"
.\" 2006-02-09, some reformatting by Luc Van Oostenryck; some
.\" reformatting and rewordings by mtk
.\"
.\" Japanese Version Copyright (c) 2006 Akihiro MOTOKI all rights reserved.
.\" Translated 2006-07-29, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>
.\"
.TH INIT_MODULE 2 2006-02-09 "Linux" "Linux Programmer's Manual"
.SH ̾
init_module \- ֥⥸塼Υȥ
.SH
.nf
.B #include <linux/module.h>
.sp
.BI "int init_module(const char *" name ", struct module *" image );
.fi
.SH
.BR init_module ()
Ϻ֤줿⥸塼륤֤ͥ˥ɤ
Υ⥸塼
.I init
ؿ¹Ԥ롣
.PP
⥸塼륤Ƭʬ module ¤Τꡢθ
Ŭڤʥɤȥǡ³
module ¤ΤϰʲΤ褦Ƥ:
.PP
.in +4n
.nf
struct module {
unsigned long size_of_struct;
struct module *next;
const char *name;
unsigned long size;
long usecount;
unsigned long flags;
unsigned int nsyms;
unsigned int ndeps;
struct module_symbol *syms;
struct module_ref *deps;
struct module_ref *refs;
int (*init)(void);
void (*cleanup)(void);
const struct exception_table_entry *ex_table_start;
const struct exception_table_entry *ex_table_end;
#ifdef __alpha__
unsigned long gp;
#endif
};
.fi
.in
.PP
.I next
.I refs
ʳƤΥݥǤϥ⥸塼ؤ
֤ͥǤŬڤͤǽ (Ĥޤꡢ⥸塼λĤ
ʬǺ֤) ȤԤ롣
.PP
ΥƥॳȤˤøɬפǤ롣
.SH ֤
0 ֤顼ξ \-1 ֤
.I errno
Ŭڤꤹ롣
.SH 顼
.TP
.B EBUSY
⥸塼ν롼Ԥ
.TP
.B EFAULT
.I name
.I image
ץबǤ륢ɥ쥹֤γˤ롣
.TP
.B EINVAL
.I image
åȤˤͤäƤ롣ޤ
.I image\->name
Υ⥸塼̾ȰפƤʤޤϡ
.I image\->deps
ȥ꤬ɤ줿⥸塼бƤʤ
ޤϡ¾Ʊ̷ͤ⤬äƤ롣
.TP
.B ENOENT
̾Υ⥸塼뤬¸ߤʤ
.TP
.B EPERM
ƤӽФø
.RB ( CAP_SYS_MODULE
ѥӥƥ) äƤʤä
.SH
.BR init_module ()
Linux ͭǤ롣
.SH Ϣ
.BR create_module (2),
.BR delete_module (2),
.BR query_module (2)
|