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

NOMBRE

       pread, pwrite - leen o escriben en una determinada posición de un descriptor de archivo

BIBLIOTECA

       Biblioteca Estándar C (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);

   Requisitos de Macros de Prueba de Características para glibc (véase feature_test_macros(7)):

       pread(), pwrite():
           _XOPEN_SOURCE >= 500
               || /* Desde glibc 2.12: */ _POSIX_C_SOURCE >= 200809L

DESCRIPCIÓN

       pread()  lee  hasta  count  bytes  del  descriptor de fichero fd a partir de la posición offset (desde el
       principio del fichero) en el área temporal que empieza en buf.   La  posición  del  puntero  de  L/E  del
       fichero no cambia.

       pwrite()  escribe  hasta  count  bytes  desde  el buffer que empieza en buf al descriptor de fichero fd a
       partir de la posición offset.  La posición del puntero del fichero no cambia.

       Debe ser posible realizar búsquedas sobre el fichero referenciado por fd.

VALOR DEVUELTO

       On success, pread()  returns the number of bytes read (a return of  zero  indicates  end  of  file)   and
       pwrite()  returns the number of bytes written.

       Note  that  it  is not an error for a successful call to transfer fewer bytes than requested (see read(2)
       and write(2)).

       En caso de error se devuelve -1, y errno se define con el valor correspondiente.

ERRORES

       pread() puede fallar y asignar a errno cualquier error especificado por  read(2)  o  lseek(2).   pwrite()
       puede fallar y asignar a errno cualquier error especificado por write(2) o lseek(2).

ESTÁNDARES

       POSIX.1-2008.

HISTORIAL

       POSIX.1-2001.

       Added  in  Linux 2.1.60; the entries in the i386 system call table were added in Linux 2.1.69.  C library
       support (including emulation using lseek(2) on older kernels without the system calls) was added in glibc
       2.1.

   Diferencias núcleo / biblioteca C
       On Linux, the underlying system calls were renamed in Linux 2.6: pread() became pread64(),  and  pwrite()
       became  pwrite64().  The system call numbers remained the same.  The glibc pread()  and pwrite()  wrapper
       functions transparently deal with the change.

       On some 32-bit architectures, the calling signature for  these  system  calls  differ,  for  the  reasons
       described in syscall(2).

NOTAS

       The  pread()  and pwrite()  system calls are especially useful in multithreaded applications.  They allow
       multiple threads to perform I/O on the same file descriptor without being affected by changes to the file
       offset by other threads.

ERRORES

       POSIX requires that opening a file with the O_APPEND flag should have no effect on the location at  which
       pwrite()   writes  data.  However, on Linux, if a file is opened with O_APPEND, pwrite()  appends data to
       the end of the file, regardless of the value of offset.

VÉASE TAMBIÉN

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

TRADUCCIÓN

       La traducción al español de esta página del manual fue creada por Juan  Piernas  <piernas@ditec.um.es>  y
       Marcos Fouces <marcos@debian.org>

       Esta  traducción  es  documentación  libre;  lea  la GNU General Public License Version 3 o posterior con
       respecto a las condiciones de copyright.  No existe NINGUNA RESPONSABILIDAD.

       Si encuentra algún error en la traducción de esta página  del  manual,  envíe  un  correo  electrónico  a
       debian-l10n-spanish@lists.debian.org.

Páginas de Manual de Linux 6.9.1                   2 Mayo 2024                                          pread(2)