create_module(2) System Calls Manual create_module(2) NAZWA create_module - tworzy wpis ladowalnego modulu SKLADNIA #include [[przestarzale]] caddr_t create_module(const char *name, size_t size); OPIS Uwaga: To wywolanie systemowe jest obecne tylko przed Linuksem 2.6. create_module() probuje utworzyc wpis ladowalnego modulu i zarezerwowac pamiec jadra, ktorej modul bedzie wymagal. Ta funkcja wymaga uprzywilejowania. WARTOSC ZWRACANA W przypadku powodzenia, zwraca adres z przestrzeni jadra, pod ktorym znajduje sie modul. W przypadku bledu zwracane jest -1 i ustawiane jest errno wskazujac blad. BLEDY EEXIST Modul o takiej nazwie juz istnieje. EFAULT name jest poza dostepna przestrzenia adresowa. EINVAL Zadany rozmiar jest zbyt maly, nawet na informacje z naglowka modulu. ENOMEM Jadro nie moglo przydzielic dostatecznie duzego, ciaglego bloku pamieci by pomiescic modul. ENOSYS create_module() nie jest obslugiwane w tej wersji jadra (np. Linux 2.6 lub wyzszy) EPERM Wywolujacy nie byl uprzywilejowany (nie posiadal przywileju (ang. capability) CAP_SYS_MODULE). STANDARDY Linux. HISTORIA Usuniete w Linuksie 2.6. To przestarzale wywolanie systemowe nie jest obslugiwane przez glibc. W naglowkach glibc nie ma jego deklaracji, ale z powodow pewnych zaszlosci historycznych wersje sprzed glibc 2.23 eksportowaly ABI dla tego wywolania systemowego. Z tego powodu, aby go uzyc wystarczylo manualnie zadeklarowac interfejs w swoim kodzie; alternatywnie mozna wywolac to wywolanie systemowe za pomoca syscall(2). ZOBACZ TAKZE delete_module(2), init_module(2), query_module(2) TLUMACZENIE Autorami polskiego tlumaczenia niniejszej strony podrecznika sa: Przemek Borys i Michal Kulach Niniejsze tlumaczenie jest wolna dokumentacja. Blizsze informacje o warunkach licencji mozna uzyskac zapoznajac sie z GNU General Public License w wersji 3 lub nowszej. Nie przyjmuje sie ZADNEJ ODPOWIEDZIALNOSCI. Bledy w tlumaczeniu strony podrecznika prosimy zglaszac na adres listy dyskusyjnej . Linux man-pages 6.06 31 pazdziernika 2023 r. create_module(2)