Man page - oldolduname(2)

Packages contains this manual

Available languages:

en fr it pl ja ru ro de

Manual

uname

NAZWA
BIBLIOTEKA
SKŁADNIA
OPIS
WARTOŚĆ ZWRACANA
BŁĘDY
WERSJE
STANDARDY
HISTORIA
Różnice biblioteki C/jądra
UWAGI
ZOBACZ TAKŻE
TŁUMACZENIE

NAZWA

uname - pobiera nazwę oraz informacje o bieżącym jądrze

BIBLIOTEKA

Standardowa biblioteka C ( libc , -lc )

SKŁADNIA

#include <sys/utsname.h>

int uname(struct utsname * buf );

OPIS

uname () zwraca informacje systemowe w strukturze, na którą wskazuje buf . utsname jest zdefiniowana w <sys/utsname.h> :

struct utsname {
char sysname[]; /* Nazwa systemu operacyjnego (np. "Linux") */
char nodename[]; /* Nazwa w sieci komunikacyjnej, do której
węzeł jest dołączony (o ile występuje) */
char release[]; /* Wydanie systemu operacyjnego
(np. "2.6.28") */
char version[]; /* Wersja systemu operacyjnego */
char machine[]; /* Identyfikator typu sprzętowego */
#ifdef _GNU_SOURCE
char domainname[]; /* Nazwa domeny NIS lub YP */
#endif
};

Długość tablicy w struct utsname jest nieokreślona (zob. UWAGI); pola są zakończone bajtem null ('\0').

WARTOŚĆ ZWRACANA

Po pomyślnym zakończeniu zwracane jest zero. Po błędzie zwracane jest -1 i ustawiane errno , wskazując błąd.

BŁĘDY

EFAULT

buf nie jest prawidłowe.

WERSJE

Składowa domainname (nazwa domeny NIS lub YP) jest rozszerzeniem GNU.

Długość pól w strukturze jest zróżnicowana. Niektóre systemy operacyjne lub biblioteki używają stałej długości 9 lub 33, lub 65, lub 257. Inne systemy operacyjne korzystają z SYS_NMLN lub _SYS_NMLN , lub UTSLEN , lub _UTSNAME_LENGTH . Jest zatem złym pomysłem używanie którejś z tych stałych; proszę korzystać z sizeof(...). SVr4 używa długości 257, „aby obsługiwać internetowe nazwy stacji” — jest to prawdopodobnie największa wartość, jaką można spotkać w praktyce.

STANDARDY

POSIX.1-2008.

HISTORIA

POSIX.1-2001, SVr4, 4.4BSD.

Różnice biblioteki C/jądra

Z biegiem czasu, zwiększający się rozmiar struktury utsname spowodował powstanie trzech kolejnych wersji uname (): sys_olduname () (slot __NR_oldolduname ), sys_uname () (slot __NR_olduname ) oraz sys_newuname () (slot __NR_uname) . Pierwsza korzysta z długości 9 we wszystkich polach; druga używa 65; trzecia — również 65, lecz dodaje pole domainname . Funkcja opakowująca uname () z glibc ukrywa te detale przed aplikacjami, przywołując najnowszą wersję wywołania systemowego zapewnianą przez jądro.

UWAGI

Jądro ma wbudowane: nazwę, wydanie, wersję i obsługiwany typ sprzętowy. Pole nodename jest natomiast konfigurowane przez administratora, właściwie do sieci (BSD historycznie nazywało je „hostname”; jest ustawiane za pomocą sethostname (2)). Pole domainname jest z kolei ustawiane przez setdomainname (2).

Część informacji utsname jest dostępna rownież za pomocą /proc/sys/kernel/ { ostype , hostname , osrelease , version , domainname }.

ZOBACZ TAKŻE

uname (1), getdomainname (2), gethostname (2), uts_namespaces (7)

TŁUMACZENIE

Tłumaczenie niniejszej strony podręcznika: 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 .