Provided by: manpages-ro-dev_4.27.0-1_all bug

NUME

       pread, pwrite - citește dintr-un descriptor de fișier sau scrie într-un descriptor de fișier la o anumită
       poziție

BIBLIOTECA

       Biblioteca C standard (libc, -lc)

SINOPSIS

       #include <unistd.h>

       ssize_t pread(int fd, void buf[.count], size_t count,
                     off_t offset);
       ssize_t pwrite(int fd, const void buf[.count], size_t count,
                     off_t offset);

   Cerințe pentru macrocomenzi de testare a caracteristicilor pentru glibc (consultați feature_test_macros(7)):

       pread(), pwrite():
           _XOPEN_SOURCE >= 500
               || /* Începând cu glibc 2.12: */ _POSIX_C_SOURCE >= 200809L

DESCRIERE

       pread()  citește  până  la  count octeți din descriptorul de fișier fd la poziția offset (de la începutul
       fișierului) în memoria tampon care începe la buf. Poziția din fișier a  indicatorului  de  citire  nu  se
       modifică.

       pwrite() scrie până la count octeți din memoria tampon care începe la buf în descriptorul de fișier fd la
       poziția offset. Poziția din fișier a indicatorului de scriere nu se modifică.

       Fișierul la care face referire fd trebuie să permită căutarea.

VALOAREA RETURNATĂ

       În  caz  de  succes,  pread()  returnează  numărul  de  octeți  citiți  (o  valoare zero indică sfârșitul
       fișierului), iar pwrite() returnează numărul de octeți scriși.

       Rețineți că nu este o eroare ca un apel reușit să transfere mai puțini octeți decât cei solicitați (a  se
       vedea read(2) și write(2)).

       În caz de eroare, se returnează -1, iar errno este configurată pentru a indica eroarea.

ERORI-IEȘIRE

       pread()  poate  eșua  și  poate  configura errno la orice eroare specificată pentru read(2) sau lseek(2).
       pwrite() poate eșua și poate configura errno la orice eroare specificată pentru write(2) sau lseek(2).

STANDARDE

       POSIX.1-2008.

ISTORIC

       POSIX.1-2001.

       Adăugat în Linux 2.1.60; intrările din tabelul de apeluri de  sistem  i386  au  fost  adăugate  în  Linux
       2.1.69.  Suportul  pentru  biblioteca  C  (inclusiv  emulația  folosind lseek(2) pe nuclee mai vechi fără
       apelurile de sistem) a fost adăugat în glibc 2.1.

   Diferențe între biblioteca C și nucleu
       În Linux, apelurile de sistem subiacente au fost redenumite în Linux 2.6: pread()  a  devenit  pread64(),
       iar  pwrite()  a  devenit  pwrite64().  Numerele  apelurilor  de  sistem au rămas aceleași.  Funcțiile de
       învăluire glibc pread() și pwrite() tratează în mod transparent această schimbare.

       Pe unele arhitecturi pe 32 de biți, semnătura de apelare pentru aceste  apeluri  de  sistem  diferă,  din
       motivele descrise în syscall(2).

NOTE

       Apelurile  de  sistem  pread()  și  pwrite()  sunt  deosebit  de utile în aplicațiile cu multiple fire de
       execuție. Ele permit mai multor fire de execuție să efectueze operații de In/Ieș pe același descriptor de
       fișier fără a fi afectate de modificările aduse la poziția din fișier de către alte fire de execuție.

ERORI

       POSIX prevede că deschiderea unui fișier cu fanionul O_APPEND nu trebuie  să  aibă  niciun  efect  asupra
       locației  în  care  pwrite()  scrie  datele.   Cu toate acestea, în Linux, dacă un fișier este deschis cu
       O_APPEND, pwrite() adaugă datele la sfârșitul fișierului, indiferent de valoarea lui offset.

CONSULTAȚI ȘI

       lseek(2), read(2), readv(2), write(2)

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                    2 mai 2024                                           pread(2)