Provided by: manpages-pl-dev_4.13-4_all bug

NAZWA

       sysconf - pobieranie informacje o konfiguracji w trakcie uruchomienia

SKŁADNIA

       #include <unistd.h>

       long sysconf(int name);

OPIS

       POSIX  pozwala  testować  w  czasie kompilowania aplikacji lub w czasie jej działania, czy
       pewne opcje są wspierane lub  jakie  są  wartości  pewnych  konfigurowalnych  stałych  lub
       limitów.

       W  czasie  kompilacji  jest  to  robione  przez zainkludowanie <unistd.h> lub <limits.h> i
       testowanie wartości pewnych makr.

       At run time, one can ask for numerical values using the present function  sysconf().   One
       can  ask  for  numerical  values that may depend on the filesystem in which a file resides
       using fpathconf(3)  and pathconf(3).  One can ask for string values using confstr(3).

       Wartości zwracane przez powyższe funkcje  są  stałymi  dotyczącymi  konfiguracji  systemu,
       które nie zmienią się przez cały czas życia procesu.

       Dla  opcji  zazwyczaj istnieje stała _POSIX_COŚ, która może być zdefiniowana w <unistd.h>.
       Jeżeli nie jest zdefiniowana, można uzyskać  jej  wartość  w  czasie  działania  programu.
       Jeżeli wartością jest -1, to dana opcja nie jest wspierana  w systemie. Wartość 0 oznacza,
       że istnieją odpowiednie  funkcje  i  pliki  nagłówkowe,  ale  należy  sprawdzić  w  czasie
       działania,  w jakim stopniu dana opcja jest wspierana. Wartość inna niż -1 i 0 oznacza, że
       dana opcja jest wspierana. Zazwyczaj wartości (takie jak 200112L) oznaczają rok i  miesiąc
       rewizji  standardu  POSIX  opisującej tę opcję. Dopóki odpowiedni standard POSIX opisujący
       opcję nie zostanie opublikowany, glibc używa wartości 1, aby zasygnalizować, że opcja jest
       wspierana.  Odpowiednim  argumentem  funkcji  sysconf()  będzie _SC_COŚ. Listę opcji można
       znaleźć w posixoptions(7).

       Dla zmiennych lub limitów zazwyczaj istnieje  stała  _COŚ  definiowana  w  <limits.h>  lub
       _POSIX_COŚ  definiowana w <unistd.h>. Stała nie będzie zdefiniowana, jeżeli limit nie jest
       określony.  Jeżeli   stała  jest  zdefiniowana,  to  określa  gwarantowany  limit,  ale  w
       rzeczywistości  może  być  wspierana  wartość większa niż wynosi wartość tej stałej. Jeśli
       aplikacja chce zrobić użytek ze zmiennych, których wartości mogą się różnić  w  zależności
       od systemu, może wywołać funkcję sysconf(). Argumentem funkcji sysconf() będzie _SC_COŚ.

   Zmienne POSIX.1
       W  tabeli poniżej podajemy nazwę zmiennej, nazwę argumentu funkcji sysconf(), używanego do
       odpytania o jej wartość, oraz krótki opis.

       Najpierw wartości zgodne z POSIX.1.

       ARG_MAX - _SC_ARG_MAX
              Maksymalna długość argumentów funkcji z rodziny exec(3). Nie może być mniejsza  niż
              _POSIX_ARG_MAX (4096).

       CHILD_MAX - _SC_CHILD_MAX
              Maksymalna liczba równoczesnych procesów jednego użytkownika. Nie może być mniejsza
              niż _POSIX_CHILD_MAX (25).

       HOST_NAME_MAX - _SC_HOST_NAME_MAX
              Maksymalna długość nazwy komputera, pomijając końcowy  bajt  NULL,  zwracana  przez
              gethostname(2). Nie może być mniejsza niż _POSIX_HOST_NAME_MAX (255).

       LOGIN_NAME_MAX - _SC_LOGIN_NAME_MAX
              Maksymalna długość nazwy użytkownika, łącznie z końcowym znakiem NULL. Nie może być
              mniejsza niż _POSIX_LOGIN_NAME_MAX (9).

       NGROUPS_MAX - _SC_NGROUPS_MAX
              Maksymalna liczba identyfikatorów dodatkowych grup.

       tyknięcia zegara - _SC_CLK_TCK
              Liczba tyknięć zegara na sekundę. Odpowiadająca jej zmienna  jest  przestarzała,  a
              była  oczywiście  nazwana   CLK_TCK.  (Uwaga:  makro  CLOCKS_PER_SEC  nie dostarcza
              informacji: jego wartość musi być równa 1000000).

       OPEN_MAX - _SC_OPEN_MAX
              Maksymalna liczba plików, które proces może mieć otwarte  w  dowolnym  czasie.  Nie
              może być mniejsza niż  _POSIX_OPEN_MAX (20).

       PAGESIZE - _SC_PAGESIZE
              Size of a page in bytes.  Must not be less than 1.

       PAGE_SIZE - _SC_PAGE_SIZE
              A synonym for PAGESIZE/_SC_PAGESIZE.  (Both PAGESIZE and PAGE_SIZE are specified in
              POSIX.)

       RE_DUP_MAX - _SC_RE_DUP_MAX
              Liczba powtórzonych wystąpień  BRE dopuszczalnych w regexec(3)  i  regcomp(3).  Nie
              może być mniejsza niż _POSIX2_RE_DUP_MAX (255).

       STREAM_MAX - _SC_STREAM_MAX
              Maksymalna  liczba  strumieni,  którą proces może otworzyć w dowolnym czasie. Jeśli
              jest zdefiniowana, to ma taką samą wartość jak standardowe makro FOPEN_MAX w C. Nie
              może być mniejsza niż _POSIX_STREAM_MAX (8).

       SYMLOOP_MAX - _SC_SYMLOOP_MAX
              Maksymalna  liczba  dowiązań symbolicznych w ścieżce nie powodująca zwrócenia błędu
              ELOOP. Nie może być mniejsza niż _POSIX_SYMLOOP_MAX (8).

       TTY_NAME_MAX - _SC_TTY_NAME_MAX
              Maksymalna długość nazwy urządzenia terminalowego, włączając końcowy znak NULL. Nie
              może być mniejsza niż _POSIX_TTY_NAME_MAX (9).

       TZNAME_MAX - _SC_TZNAME_MAX
              Maksymalna  liczba  bajtów  w  nazwie  strefy  czasowej.  Nie może być mniejsza niż
              _POSIX_TZNAME_MAX (6).

       _POSIX_VERSION - _SC_VERSION
              Określa rok i miesiąc, w formacie YYYYMML, w którym został  zaakceptowany  standard
              POSIX.1. Na przykład wartość 199009L oznacza wersję standardu z września 1990 roku.

   Zmienne POSIX.2
       Następnie podajemy wartości POSIX.2 określające limity dla programów użytkowych.

       BC_BASE_MAX - _SC_BC_BASE_MAX
              Określa maksymalną wartość obase akceptowaną przez program użytkowy bc(1).

       BC_DIM_MAX - _SC_BC_DIM_MAX
              Określa maksymalną dopuszczalną liczbę elementów w tabelach w programie bc(1).

       BC_SCALE_MAX - _SC_BC_SCALE_MAX
              Określa maksymalną wartość scale akceptowaną przez program użytkowy bc(1).

       BC_STRING_MAX - _SC_BC_STRING_MAX
              Określa maksymalną długość łańcucha znaków akceptowanego przez bc(1).

       COLL_WEIGHTS_MAX - _SC_COLL_WEIGHTS_MAX
              indicates  the  maximum  numbers of weights that can be assigned to an entry of the
              LC_COLLATE order keyword in the locale definition file.

       EXPR_NEST_MAX - _SC_EXPR_NEST_MAX
              Określa maksymalną liczbę wyrażeń zagnieżdżonych  w  nawiasach,  akceptowaną  przez
              program expr(1).

       LINE_MAX - _SC_LINE_MAX
              Maksymalna  długość  linii  wejściowej  (łącznie  ze  znakiem końca linii) programu
              użytkowego pochodzącej albo ze standardowego wejścia, albo z pliku.

       RE_DUP_MAX - _SC_RE_DUP_MAX
              Maksymalna liczna powtórzonych wystąpień wyrażenia regularnego, jeżeli jest używana
              notacja \{m,n\}.

       POSIX2_VERSION - _SC_2_VERSION
              Określa wersję standardu POSIX.2 w formacie YYYYMML.

       POSIX2_C_DEV - _SC_2_C_DEV
              Określa,   czy   są  wspierane  użytki  zgodne  z  POSIX.2  służące  do  rozwijania
              oprogramowania w języku C.

       POSIX2_FORT_DEV - _SC_2_FORT_DEV
              Określa,  czy  są  wspierane  użytki  zgodne  z  POSIX.2  służące   do   rozwijania
              oprogramowania w Fortranie.

       POSIX2_FORT_RUN - _SC_2_FORT_RUN
              Określa, czy są wspierane programy użytkowe POSIX.2, służące do uruchamia programów
              w Fortranie.

       _POSIX2_LOCALEDEF - _SC_2_LOCALEDEF
              indicates whether the POSIX.2 creation of locales via localedef(1)  is supported.

       POSIX2_SW_DEV - _SC_2_SW_DEV
              Określa,  czy  są  wspierane  użytki  zgodne  z  POSIX.2  służące   do   rozwijania
              oprogramowania.

       Poniższe wartości także istnieją, ale może nie być ich w standardzie.

        - _SC_PHYS_PAGES
              Liczba  stron  pamięci fizycznej. Proszę zauważyć, że nie jest możliwe, aby iloczyn
              tej wartości z _SC_PAGESIZE przekroczył  (overflow)  dopuszczalny  zakres  wartości
              liczbowych.

        - _SC_AVPHYS_PAGES
              Liczba obecnie dostępnych stron fizycznej pamięci.

        - _SC_NPROCESSORS_CONF
              The number of processors configured.  See also get_nprocs_conf(3).

        - _SC_NPROCESSORS_ONLN
              The    number    of    processors   currently   online   (available).    See   also
              get_nprocs_conf(3).

WARTOŚĆ ZWRACANA

       The return value of sysconf()  is one of the following:

       *  On error, -1 is returned and errno is set to indicate  the  cause  of  the  error  (for
          example, EINVAL, indicating that name is invalid).

       *  If  name corresponds to a maximum or minimum limit, and that limit is indeterminate, -1
          is returned and errno is not changed.  (To distinguish an indeterminate limit  from  an
          error,  set errno to zero before the call, and then check whether errno is nonzero when
          -1 is returned.)

       *  If name corresponds to an option, a  positive  value  is  returned  if  the  option  is
          supported, and -1 is returned if the option is not supported.

       *  Otherwise,  the  current value of the option or limit is returned.  This value will not
          be more restrictive than the corresponding value that was described to the  application
          in <unistd.h> or <limits.h> when the application was compiled.

BŁĘDY

       EINVAL name is invalid.

ATRYBUTY

       Informacje   o   pojęciach   używanych   w  tym  rozdziale  można  znaleźć  w  podręczniku
       attributes(7).

       ┌──────────┬────────────────────────┬─────────────┐
       │InterfejsAtrybutWartość     │
       ├──────────┼────────────────────────┼─────────────┤
       │sysconf() │ Bezpieczeństwo wątkowe │ MT-Safe env │
       └──────────┴────────────────────────┴─────────────┘

ZGODNE Z

       POSIX.1-2001, POSIX.1-2008.

BŁĘDY

       Użycie ARG_MAX jest skomplikowane, ponieważ  nie  jest  określone,  jak  dużo  przestrzeni
       argumentów funkcji exec(3) jest zabierane przez zmienne środowiskowe użytkownika.

       Niektóre zwracane wartości mogą być duże; nie są one odpowiednie do przydzielania pamięci.

ZOBACZ TAKŻE

       bc(1),    expr(1),   getconf(1),   locale(1),   confstr(3),   fpathconf(3),   pathconf(3),
       posixoptions(7)

O STRONIE

       Angielska wersja tej strony  pochodzi  z  wydania  5.10  projektu  Linux  man-pages.  Opis
       projektu,  informacje  dotyczące  zgłaszania  błędów oraz najnowszą wersję oryginału można
       znaleźć pod adresem https://www.kernel.org/doc/man-pages/.

T◈UMACZENIE

       Autorami  polskiego  tłumaczenia  niniejszej  strony  podręcznika   są:   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
       ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩   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⟩.