Provided by: manpages-ro-dev_4.28.0-2_all 

NUME
sysconf - obține informațiile de configurare în timpul rulării
BIBLIOTECA
Biblioteca C standard (libc, -lc)
SINOPSIS
#include <unistd.h>
long sysconf(int name);
DESCRIERE
POSIX permite unei aplicații să testeze în momentul compilării sau al rulării dacă anumite opțiuni sunt
acceptate sau care este valoarea anumitor constante sau limite configurabile.
În momentul compilării, acest lucru se realizează prin includerea <unistd.h> și/sau <limits.h> și
testarea valorii anumitor macroinstrucțiuni.
În timpul execuției, se pot solicita valori numerice utilizând funcția actuală sysconf(). Se pot solicita
valori numerice care pot depinde de sistemul de fișiere în care se află un fișier folosind fpathconf(3)
și pathconf(3). Se pot solicita valori de tip șir de caractere utilizând confstr(3).
Valorile obținute din aceste funcții sunt constante de configurare a sistemului. Acestea nu se modifică
în timpul duratei de viață a unui proces.
Pentru opțiuni, de obicei, există o constantă _POSIX_FOO care poate fi definită în <unistd.h>. Dacă este
nedefinită, trebuie întrebată în momentul rulării. Dacă este definită la -1, atunci opțiunea nu este
acceptată. Dacă este definită la 0, atunci există funcții și antete relevante, dar trebuie să se întrebe
în momentul rulării ce grad de suport este disponibil. Dacă este definită la o valoare diferită de -1 sau
0, atunci opțiunea este acceptată. De obicei, valoarea (cum ar fi 200112L) indică anul și luna revizuirii
POSIX care descrie opțiunea. glibc utilizează valoarea 1 pentru a indica suportul atât timp cât
revizuirea POSIX nu a fost încă publicată. Argumentul sysconf() va fi _SC_FOO. Pentru o listă de opțiuni,
consultați posixoptions(7).
Pentru variabile sau limite, de obicei, există o constantă _FOO, poate definită în <limits.h>, sau
_POSIX_FOO, poate definită în <unistd.h>. Constanta nu va fi definită dacă limita este nespecificată.
Dacă constanta este definită, aceasta oferă o valoare garantată, iar o valoare mai mare ar putea fi de
fapt acceptată. Dacă o aplicație dorește să profite de valorile care se pot schimba între sisteme, se
poate face un apel la sysconf(). Argumentul sysconf() va fi _SC_FOO.
Variabile POSIX.1
Oferim numele variabilei, numele argumentului sysconf() utilizat pentru a afla valoarea acesteia și o
scurtă descriere.
Mai întâi, valorile compatibile POSIX.1.
ARG_MAX - _SC_ARG_MAX
Lungimea maximă a argumentelor pentru familia de funcții exec(3). Nu trebuie să fie mai mică decât
_POSIX_ARG_MAX (4096).
CHILD_MAX - _SC_CHILD_MAX
Numărul maxim de procese simultane per ID utilizator. Nu trebuie să fie mai mic decât
_POSIX_CHILD_MAX (25).
HOST_NAME_MAX - _SC_HOST_NAME_MAX
Lungimea maximă a unui nume de gazdă, fără a include octetul nul final, așa cum este returnat de
gethostname(2). Nu trebuie să fie mai mică decât _POSIX_HOST_NAME_MAX (255).
LOGIN_NAME_MAX - _SC_LOGIN_NAME_MAX
Lungimea maximă a unui nume de autentificare, inclusiv octetul nul de terminare. Nu trebuie să fie
mai mică decât _POSIX_LOGIN_NAME_MAX (9).
NGROUPS_MAX - _SC_NGROUPS_MAX
Numărul maxim de ID-uri de grup suplimentare.
clock ticks - _SC_CLK_TCK
Numărul de ticuri de ceas pe secundă. Variabila corespunzătoare este depășită. Aceasta se numește
desigur CLK_TCK. (Notă: macroinstrucțiunea CLOCKS_PER_SEC nu dă informații: trebuie să fie egală
cu 1000000).
OPEN_MAX - _SC_OPEN_MAX
Numărul maxim de fișiere pe care un proces le poate avea deschise în orice moment. Nu trebuie să
fie mai mic decât _POSIX_OPEN_MAX (20).
PAGESIZE - _SC_PAGESIZE
Dimensiunea unei pagini în octeți Nu trebuie să fie mai mică de 1.
PAGE_SIZE - _SC_PAGE_SIZE
Un sinonim pentru PAGESIZE/_SC_PAGESIZE. Atât PAGESIZE, cât și PAGE_SIZE sunt specificate în
POSIX.
RE_DUP_MAX - _SC_RE_DUP_MAX
Numărul de apariții repetate ale unui BRE permise de regexec(3) și regcomp(3). Nu trebuie să fie
mai mic decât _POSIX2_RE_DUP_MAX (255).
STREAM_MAX - _SC_STREAM_MAX
Numărul maxim de fluxuri pe care un proces le poate avea deschise în orice moment. Dacă este
definit, are aceeași valoare ca macroinstrucțiunea standard C FOPEN_MAX. Nu trebuie să fie mai mic
decât _POSIX_STREAM_MAX (8).
SYMLOOP_MAX - _SC_SYMLOOP_MAX
Numărul maxim de legături simbolice observate într-un nume de rută înainte ca rezoluția să
returneze ELOOP. Nu trebuie să fie mai mic decât _POSIX_SYMLOOP_MAX (8).
TTY_NAME_MAX - _SC_TTY_NAME_MAX
Lungimea maximă a numelui dispozitivului de terminal, inclusiv octetul nul de terminare. Nu
trebuie să fie mai mică decât _POSIX_TTY_NAME_MAX (9).
TZNAME_MAX - _SC_TZNAME_MAX
Numărul maxim de octeți dintr-un nume de fus orar. Nu trebuie să fie mai mic decât
_POSIX_TZNAME_MAX (6).
_POSIX_VERSION - _SC_VERSION
Indică anul și luna în care a fost aprobat standardul POSIX.1 în formatul AAAALLL; valoarea
199009L indică revizuirea din septembrie 1990.
Variabile POSIX.2
Urmează valorile POSIX.2, care oferă limite pentru utilități.
BC_BASE_MAX - _SC_BC_BASE_MAX
Indică valoarea maximă obase acceptată de utilitatea bc(1).
BC_DIM_MAX - _SC_BC_DIM_MAX
Indică valoarea maximă a elementelor permise într- o matrice de către bc(1).
BC_SCALE_MAX - _SC_BC_SCALE_MAX
Indică valoarea maximă scale permisă de bc(1).
BC_STRING_MAX - _SC_BC_STRING_MAX
Indică lungimea maximă a unui șir de caractere acceptat de bc(1).
COLL_WEIGHTS_MAX - _SC_COLL_WEIGHTS_MAX
Indică numărul maxim de ponderări care pot fi atribuite unei intrări a cuvântului-cheie LC_COLLATE
order în fișierul de definire a parametrilor regionali.
EXPR_NEST_MAX - _SC_EXPR_NEST_MAX
Este numărul maxim de expresii care pot fi imbricate între paranteze de către expr(1).
LINE_MAX - _SC_LINE_MAX
Lungimea maximă a liniei de intrare a unui utilitar, fie de la intrarea standard, fie dintr-un
fișier. Aceasta include spațiul pentru o linie nouă finală.
RE_DUP_MAX - _SC_RE_DUP_MAX
Numărul maxim de apariții repetate ale unei expresii regulate atunci când se utilizează notația de
interval \{m,n\}.
POSIX2_VERSION - _SC_2_VERSION
Indică versiunea standardului POSIX.2 în formatul AAAALLL.
POSIX2_C_DEV - _SC_2_C_DEV
Indică dacă sunt acceptate facilitățile de dezvoltare ale limbajului POSIX.2 C.
POSIX2_FORT_DEV - _SC_2_FORT_DEV
Indică dacă sunt acceptate utilitarele de dezvoltare FORTRAN POSIX.2.
POSIX2_FORT_RUN - _SC_2_FORT_RUN
Indică dacă sunt acceptate utilitarele de execuție POSIX.2 FORTRAN.
_POSIX2_LOCALEDEF - _SC_2_LOCALEDEF
Indică dacă este acceptată crearea de configurații regionale POSIX.2 prin localedef(1).
POSIX2_SW_DEV - _SC_2_SW_DEV
Indică dacă este acceptată opțiunea POSIX.2 pentru utilitare de dezvoltare software.
Aceste valori există, de asemenea, dar pot să nu fie standard.
- _SC_PHYS_PAGES
Numărul de pagini de memorie fizică Rețineți că este posibil ca produsul dintre această valoare
și valoarea lui _SC_PAGESIZE să depășească limita.
- _SC_AVPHYS_PAGES
Numărul de pagini de memorie fizică disponibile în prezent.
- _SC_NPROCESSORS_CONF
Numărul de procesoare configurate. A se vedea și get_nprocs_conf(3).
- _SC_NPROCESSORS_ONLN
Numărul de procesoare aflate în prezent online (disponibile). A se vedea și get_nprocs_conf(3).
VALOAREA RETURNATĂ
Valoarea returnată de sysconf() este una dintre următoarele:
• În caz de eroare, se returnează -1, iar errno este configurată pentru a indica eroarea (de exemplu,
EINVAL, indicând că name nu este valid).
• Dacă name corespunde unei limite maxime sau minime, iar limita respectivă este nedeterminată, se
returnează -1 și errno nu este modificată. Pentru a distinge o limită nedeterminată de o eroare,
stabiliți errno la zero înainte de apel și apoi verificați dacă errno este diferită de zero atunci
când este returnat -1.
• Dacă name corespunde unei opțiuni, se returnează o valoare pozitivă dacă opțiunea este acceptată, iar
-1 dacă opțiunea nu este acceptată.
• În caz contrar, este returnată valoarea curentă a opțiunii sau a limitei. Această valoare nu va fi mai
restrictivă decât valoarea corespunzătoare care a fost descrisă aplicației în <unistd.h> sau
<limits.h> atunci când aplicația a fost compilată.
ERORI-IEȘIRE
EINVAL name nu este valid.
ATRIBUTE
Pentru o explicație a termenilor folosiți în această secțiune, a se vedea attributes(7).
┌─────────────────────────────────────────────────────────────────────┬───────────────────┬─────────────┐
│ Interfață │ Atribut │ Valoare │
├─────────────────────────────────────────────────────────────────────┼───────────────────┼─────────────┤
│ sysconf() │ Siguranța firelor │ MT-Safe env │
└─────────────────────────────────────────────────────────────────────┴───────────────────┴─────────────┘
STANDARDE
POSIX.1-2008.
ISTORIC
POSIX.1-2001.
ERORI
Este dificil de utilizat ARG_MAX deoarece nu este specificat cât din spațiul de argumentare pentru
exec(3) este consumat de variabilele de mediu ale utilizatorului.
Unele valori returnate pot fi uriașe; acestea nu sunt potrivite pentru alocarea de memorie.
CONSULTAȚI ȘI
bc(1), expr(1), getconf(1), locale(1), confstr(3), fpathconf(3), pathconf(3), posixoptions(7)
TRADUCERE
Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu
<remusgabriel.chelu@disroot.org>
Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 sau o
versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO
RESPONSABILITATE.
Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-
ro@lists.sourceforge.net.
Pagini de manual de Linux 6.9.1 15 iunie 2024 sysconf(3)