Man page - get_kernel_syms(2)

Packages contains this manual

Available languages:

en fr es pl ja ru ro

Manual

get_kernel_syms

NAZWA
SKŁADNIA
OPIS
WARTOŚĆ ZWRACANA
BŁĘDY
STANDARDY
HISTORIA
USTERKI
ZOBACZ TAKŻE
TŁUMACZENIE

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 .