Provided by: manpages-pl-dev_4.27.0-1_all bug

NAZWA

       get_kernel_syms - pobiera udostępnione symbole jądra i modułów

SKŁADNIA

       #include <linux/module.h>

       [[przestarzałe]] int get_kernel_syms(struct kernel_sym *table);

OPIS

       Uwaga: To wywołanie systemowe jest obecne tylko przed Linuksem 2.6.

       Jeśli  table  jest  równe  NULL,  get_kernel_syms()  zwraca  liczbę  symboli  dostępnych dla zapytania. W
       przeciwnym wypadku wypełniana jest tabela struktur:

           struct kernel_sym {
               unsigned long value;
               char          name[60];
           };

       Symbole są przeplatane magicznymi symbolami o postaci #nazwa-modułu, gdzie jądru odpowiada  pusta  nazwa.
       Wartością związaną z symbolem tej postaci jest adres, pod którym moduł został załadowany.

       Symbole udostępniane przez poszczególne moduły następują po magicznych znacznikach modułów, a same moduły
       są zwracane kolejności odwrotnej do kolejności ich załadowania.

WARTOŚĆ ZWRACANA

       W  przypadku  powodzenia  zwracana  jest  liczba symboli skopiowanych do table. W razie wystąpienia błędu
       zwracane jest -1 i ustawiane jest errno wskazując błąd.

BŁĘDY

       Istnieje tylko jeden możliwy powód zwrócenia błędu:

       ENOSYS get_kernel_syms() nie jest obsługiwane w tej wersji jądra.

STANDARDY

       Linux.

HISTORIA

       Usunięte w Linuksie 2.6.

       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).

USTERKI

       Nie ma możliwości wskazania rozmiaru bufora przydzielonego dla table.  Jeśli po zapytaniu przez program o
       rozmiar tabeli symboli zostały dodane do jądra nowe symbole, pamięć może zostać zamazana.

       Długość nazw udostępnianych symboli jest ograniczona do 59 znaków.

       Z  powodu  powyższych  ograniczeń,  to  wywołanie  systemowe  jest  przestarzałe,  zamiast tego wywołania
       systemowego zalecane jest query_module(2) (które dziś również  jest  uważane  za  przestarzałe  na  rzecz
       innych interfejsów opisanych na stronie podręcznika tego wywołania systemowego).

ZOBACZ TAKŻE

       create_module(2), delete_module(2), init_module(2), query_module(2)

TŁUMACZENIE

       Tłumaczenie   niniejszej   strony   podręcznika:  Przemek  Borys  <pborys@dione.ids.pl>,  Robert  Luberda
       <robert@debian.org> 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.

Linux man-pages 6.9.1                            2 maja 2024 r.                               get_kernel_syms(2)