table of contents
- bullseye 1:4.10.0-1
- bullseye-backports 1:4.18.1-1~bpo11+1
CREATE_MODULE(2) | Podręcznik programisty Linuksa | CREATE_MODULE(2) |
NAZWA¶
create_module - tworzy wpis ładowalnego modułu
SKŁADNIA¶
#include <linux/module.h>
caddr_t create_module(const char *name, size_t size);
Uwaga: W nagłówkach glibc nie udostępnia się deklaracji tego wywołania systemowego, zob. UWAGI.
OPIS¶
Note: This system call is present only in kernels before Linux 2.6.
create_module() attempts to create a loadable module entry and reserve the kernel memory that will be needed to hold the module. This system call requires privilege.
WARTOŚĆ ZWRACANA¶
W przypadku sukcesu, zwraca adres z przestrzeni jądra, pod którym znajduje się moduł. W przypadku błędu zwracane jest -1 i odpowiednio ustawiane errno.
BŁĘDY¶
- EEXIST
- Moduł o takiej nazwie już istnieje.
- EFAULT
- name jest poza dostępną przestrzenią adresową.
- EINVAL
- Żądany rozmiar jest zbyt mały, nawet na informacje z nagłówka modułu.
- ENOMEM
- Kernel nie mógł przydzielić dostatecznie dużego, ciągłego bloku pamięci by pomieścić moduł.
- ENOSYS
- create_module() is not supported in this version of the kernel (e.g., the kernel is version 2.6 or later).
- EPERM
- The caller was not privileged (did not have the CAP_SYS_MODULE capability).
WERSJE¶
To wywołanie systemowe jest obecne w Linuksie tylko do wersji 2.4 jądra; zostało usunięte w Linuksie 2.6.
ZGODNE Z¶
create_module() is Linux-specific.
UWAGI¶
To przestarzałe wywołanie systemowe nie jest obsługiwane przez glibc. W nagłówkach glibc nie ma jego deklaracji, ale z powodów pewnych zaszłości historycznych wersje glibc przed 2.23 eksportowały ABI dla tego wywołania systemowego. Z tego powodu, aby go użyć wystarczyło manualnie zadeklarować interfejs w swoim kodzie; alternatywnie można wywołać to wywołanie systemowe za pomocą syscall(2).
ZOBACZ TAKŻE¶
O STRONIE¶
Angielska wersja tej strony pochodzi z wydania 5.10 projektu Linux man-pages. Opis projektu, informacje dotyczące zgłaszania błędów oraz najnowszą wersję oryginału można znaleźć pod adresem https://www.kernel.org/doc/man-pages/.
TŁUMACZENIE¶
Autorami polskiego tłumaczenia niniejszej strony podręcznika są: Przemek Borys <pborys@dione.ids.pl>
Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z GNU General Public License w wersji 3 lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.
Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres manpages-pl-list@lists.sourceforge.net.
15 września 2017 r. | Linux |