Provided by: manpages-fr-dev_3.65d1p1-1_all bug

NOM

       readahead - Lire d'avance une ou plusieurs pages en mémoire cache

SYNOPSIS

       #define _GNU_SOURCE             /* Consultez feature_test_macros(7) */
       #include <fcntl.h>

       ssize_t readahead(int fd, off64_t offset, size_t count);

DESCRIPTION

       readahead()   initie une lecture d'avance d'un fichier de sorte que les lectures suivantes
       de ce fichier soient satisfaites depuis le cache, sans bloquer les entrés-sorties  sur  le
       disque (en supposant que la lecture d'avance ait été effectuée suffisamment tôt et que les
       autres activités du système n'aient pas vidé les pages du cache).

       readahead() remplit le cache des pages avec les données d'un fichier de façon à ce que les
       lectures  suivantes  sur  ce  fichier  ne  bloquent pas à cause des entrées-sorties sur le
       disque. L'argument fd est le  descripteur  de  fichier  identifiant  le  fichier  à  lire.
       L'argument  offset  spécifie  le point de départ de la lecture et count spécifie le nombre
       d'octets à lire. Les entrées-sorties sont  effectuées  sur  des  pages  complètes,  aussi,
       offset  est  arrondi  par  défaut  à  la  limite de page inférieure et les octets sont lus
       jusqu'à la prochaine limite de page supérieure ou égale à (offset+count).  readahead()  ne
       lit  pas  au-delà  de  la  fin  de  fichier. Le décalage fichier courant du fichier ouvert
       référencé par fd reste inchangé.

VALEUR RENVOYÉE

       readahead() renvoie zéro s'il réussit et -1 s'il échoue et écrit la cause de l'erreur dans
       errno.

ERREURS

       EBADF  fd n'est pas un descripteur de fichier valable ou n'est pas ouvert en lecture.

       EINVAL fd ne référence pas un type de fichier sur lequel on peut appliquer readahead().

VERSIONS

       L'appel système readahead() est apparu dans Linux 2.4.13 ; il est géré par la glibc depuis
       la version 2.3.

CONFORMITÉ

       L'appel système readahead() est spécifique à Linux et ne devrait pas être utilisé dans des
       applications conçues pour être portable.

NOTES

       Dans le cas de certaines architectures 32 bits, la signature de cet appel système diffère,
       comme expliqué dans syscall(2).

BOGUES

       readahead() essaie de programmer les lectures en arrière-plan et  retourne  immédiatement.
       Cependant,  la  fonction  peut  bloquer  en attente des métadonnées du système de fichier,
       nécessaires pour localiser les blocs demandés. Cela arrive souvent avec  ext[234]  et  les
       fichiers  très  grands  utilisant  les blocs indirects à la place de la fonctionnalité des
       « extents », donnant l'impression que l'appel bloque en attente de la lecture complète des
       données.

VOIR AUSSI

       lseek(2), madvise(2), mmap(2), posix_fadvise(2), read(2)

COLOPHON

       Cette  page  fait partie de la publication 3.65 du projet man-pages Linux. Une description
       du projet et des  instructions  pour  signaler  des  anomalies  peuvent  être  trouvées  à
       l'adresse http://www.kernel.org/doc/man-pages/.

TRADUCTION

       Depuis    2010,    cette   traduction   est   maintenue   à   l'aide   de   l'outil   po4a
       <http://po4a.alioth.debian.org/> par l'équipe de traduction francophone au sein du  projet
       perkamon <http://perkamon.alioth.debian.org/>.

       Christophe    Blaess    <http://www.blaess.fr/christophe/>   (1996-2003),   Alain   Portal
       <http://manpagesfr.free.fr/>  (2003-2006).  Julien  Cristau  et  l'équipe  francophone  de
       traduction de Debian (2006-2009).

       Veuillez     signaler     toute     erreur     de     traduction     en     écrivant     à
       <debian-l10n-french@lists.debian.org>  ou  par  un  rapport  de  bogue   sur   le   paquet
       manpages-fr.

       Vous  pouvez  toujours  avoir  accès  à la version anglaise de ce document en utilisant la
       commande « man -L C <section> <page_de_man> ».