.\" 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. .\" $ Id: init_module.2 1.1 Fri, 05 Jan 2001 12:45:19 +1100 kaos $ .\" .\" $Id: init_module.2,v 1.2 2001/11/13 13:43:01 ankry Exp $ .\" .TH INIT_MODULE 2 "26 grudnia 1996" "Linux 2.1.17" "Wsparcie dla modułów" .SH NAZWA init_module \- inicjalizacja wpisu ładowalnego modułu .SH SKŁADNIA .nf .B #include .sp .BI "int init_module(const char *" name ", struct module *" image ); .fi .SH OPIS \fI Uwaga! To tłumaczenie może być nieaktualne!\fP .PP .B init_module ładuje do przestrzeni jądra przesunięty obraz modułu i wykonuje funkcję \fIinit\fP tego modułu. .PP 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: .PP .RS .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 .RE .PP Wszystkie pola wskazujące, oprócz \fInext\fP i \fIrefs\fP, 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. .PP Ta funkcja jest dostępna jedynie dla superużytkownika. .SH "RETURN VALUE" W przypadku sukcesu zwracane jest zero. W przypadku błędu, \-1 i odpowiednio ustawiane jest \fIerrno\fP. .SH BŁĘDY .TP .B EPERM Użytkownik nie jest superużytkownikiem. .TP .B ENOENT Nie istnieje moduł o tej nazwie. .TP .B EINVAL Któryś z wpisów \fIimage\fP jest wypęłniony nieprawidłowo, \fIimage->name\fP różni się od oryginalnej nazwy modułu, któryś z wpisów \fIimage->deps\fP nie odpowiada żadnemu załadowanemu modułowi lub inna podobna niespójność. .TP .B EBUSY Procedura inicjalizacji modułu zakończyła się niepowodzeniem. .TP .B EFAULT \fIname\fP lub \fIimage\fP znajduje się poza dostępną przestrzenią adresową. .SH "ZOBACZ TAKŻE" .BR create_module "(2), " delete_module "(2), " query_module "(2)." .SH "INFORMACJE O TŁUMACZENIU" Powyższe tłumaczenie pochodzi z nieistniejącego już Projektu Tłumaczenia Manuali i \fImoże nie być aktualne\fR. W razie zauważenia różnic między powyższym opisem a rzeczywistym zachowaniem opisywanego programu lub funkcji, prosimy o zapoznanie się z oryginalną (angielską) wersją strony podręcznika za pomocą polecenia: .IP man \-\-locale=C 2 init_module .PP Prosimy o pomoc w aktualizacji stron man \- więcej informacji można znaleźć pod adresem http://sourceforge.net/projects/manpages\-pl/.