Provided by: manpages-ro-dev_4.21.0-2_all
NUME
posix_madvise - oferă indicații despre modelele de utilizare a memoriei
BIBLIOTECA
Biblioteca C standard (libc, -lc)
REZUMAT
#include <sys/mman.h> int posix_madvise(void addr[.len], size_t len, int advice); Cerințe pentru macrocomenzi de testare a caracteristicilor pentru glibc (consultați feature_test_macros(7)): posix_madvise(): _POSIX_C_SOURCE >= 200112L
DESCRIERE
Funcția posix_madvise() permite unei aplicații să informeze sistemul cu privire la modelele preconizate de utilizare a memoriei în intervalul de adrese începând de la addr și continuând cu len octeți. Sistemul este liber să utilizeze aceste indicații pentru a îmbunătăți performanța accesărilor de memorie (sau să ignore complet aceste indicații), dar apelarea funcției posix_madvise() nu trebuie să afecteze semantica accesului la memorie în intervalul specificat. Argumentul advice este unul dintre următoarele: POSIX_MADV_NORMAL Aplicația nu are nicio indicație specială cu privire la modelele de utilizare a memoriei pentru intervalul de adrese specificat. Acesta este comportamentul implicit. POSIX_MADV_SEQUENTIAL Aplicația se așteaptă să acceseze secvențial intervalul de adrese specificat, de la adresele inferioare la cele superioare. Prin urmare, paginile din această regiune pot fi citite agresiv înainte și pot fi eliberate imediat după ce sunt accesate. POSIX_MADV_RANDOM Aplicația se așteaptă să acceseze intervalul de adrese specificat în mod aleatoriu. Astfel, citirea înainte poate fi mai puțin utilă decât în mod normal. POSIX_MADV_WILLNEED Aplicația se așteaptă să acceseze intervalul de adrese specificat în viitorul apropiat. Astfel, citirea anticipată poate fi benefică. POSIX_MADV_DONTNEED Aplicația se așteaptă să nu acceseze intervalul de adrese specificat în viitorul apropiat.
VALOAREA RETURNATĂ
În caz de succes, posix_madvise() returnează 0. În caz de eșec, returnează un număr pozitiv de eroare.
ERORI
EINVAL addr nu este un multiplu al dimensiunii paginii de sistem sau len este negativă. EINVAL advice nu este validă. ENOMEM Adresele din intervalul specificat sunt parțial sau complet în afara spațiului de adrese al apelantului.
VERSIUNI
Suportul pentru posix_madvise() a fost adăugat în glibc 2.2.
STANDARDE
POSIX.1-2001.
NOTE
POSIX.1 permite unei implementări să genereze o eroare în cazul în care len este 0. În Linux, este permisă specificarea lui len ca fiind 0 (ca un no-op cu succes). În glibc, această funcție este implementată folosind madvise(2). Cu toate acestea, începând cu glibc 2.6, POSIX_MADV_DONTNEED este tratată ca un no-op, deoarece valoarea corespunzătoare madvise(2), MADV_DONTNEED, are o semantică distructivă.
CONSULTAȚI ȘI
madvise(2), posix_fadvise(2)
TRADUCERE
Traducerea în limba română a acestui manual a fost creată de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org> Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ 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⟩.