Rechercher une page de manuel
init_module
Langue: pl
Version: 26 grudnia 1996 (openSuse - 09/10/07)
Section: 2 (Appels système)
NAZWA
init_module - inicjalizacja wpisu ³adowalnego modu³uSK£ADNIA
#include <linux/module.h> int init_module(const char *name, struct module *image);
OPIS
init_module ³aduje do przestrzeni j±dra przesuniêty obraz modu³u i wykonuje funkcjê init tego modu³u.Obraz modu³u rozpoczyna siê od struktury modu³u, po której nastêpuj±, odpowiednio, kod i dane. Struktura modu³u jest zdefiniowana nastêpuj±co:
-
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 };
Wszystkie pola wskazuj±ce, oprócz next i refs, powinny wskazywaæ na adresy w ciele modu³u i zostaæ zainicjalizowane odpowiednio dla przestrzeni adresowej j±dra, tzn. przesuniête wraz z reszt± modu³u.
Ta funkcja jest dostêpna jedynie dla superu¿ytkownika.
RETURN VALUE
W przypadku sukcesu zwracane jest zero. W przypadku b³êdu, -1 i odpowiednio ustawiane jest errno.B£ÊDY
- EPERM
- U¿ytkownik nie jest superu¿ytkownikiem.
- ENOENT
- Nie istnieje modu³ o tej nazwie.
- EINVAL
- Który¶ z wpisów image jest wypê³niony nieprawid³owo, image->name ró¿ni siê od oryginalnej nazwy modu³u, który¶ z wpisów image->deps nie odpowiada ¿adnemu za³adowanemu modu³owi lub inna podobna niespójno¶æ.
- EBUSY
- Procedura inicjalizacji modu³u zakoñczy³a siê niepowodzeniem.
- EFAULT
- name lub image znajduje siê poza dostêpn± przestrzeni± adresow±.
ZOBACZ TAK¯E
create_module(2), delete_module(2), query_module(2).Contenus ©2006-2024 Benjamin Poulain
Design ©2006-2024 Maxime Vantorre