table of contents
- bookworm-backports 1:4.24.0-2~bpo12+1
- testing 1:4.24.0-2
- unstable 1:4.24.0-2
create_module(2) | System Calls Manual | create_module(2) |
NAZWA¶
create_module - tworzy wpis ładowalnego modułu
SKŁADNIA¶
#include <linux/module.h>
[[przestarzałe]] caddr_t create_module(const char *name, size_t size);
OPIS¶
Uwaga: To wywołanie systemowe jest obecne tylko przed Linuksem 2.6.
create_module() próbuje utworzyć wpis ładowalnego modułu i zarezerwować pamięć jądra, której moduł będzie wymagał. Ta funkcja wymaga uprzywilejowania.
WARTOŚĆ ZWRACANA¶
W przypadku powodzenia, zwraca adres z przestrzeni jądra, pod którym znajduje się moduł. W przypadku błędu zwracane jest -1 i ustawiane jest errno wskazując błąd.
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
- Jądro nie mogło przydzielić dostatecznie dużego, ciągłego bloku pamięci by pomieścić moduł.
- ENOSYS
- create_module() nie jest obsługiwane w tej wersji jądra (np. Linux 2.6 lub wyższy)
- EPERM
- Wywołujący nie był uprzywilejowany (nie posiadał przywileju (ang. capability) CAP_SYS_MODULE).
WERSJE¶
To wywołanie systemowe jest obecne w Linuksie tylko do wersji 2.4 jądra; zostało usunięte w Linuksie 2.6.
STANDARDY¶
create_module() jest specyficzne dla Linuksa.
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 sprzed glibc 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¶
TŁUMACZENIE¶
Autorami polskiego tłumaczenia niniejszej strony podręcznika są: Przemek Borys <pborys@dione.ids.pl> i Michał Kułach <michal.kulach@gmail.com>
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 listy dyskusyjnej manpages-pl-list@lists.sourceforge.net.
4 grudnia 2022 r. | Linux man-pages 6.03 |