1. NOM▲
readahead - Lire d'avance une ou plusieurs pages en mémoire cache
2. SYNOPSIS ▲
#define _GNU_SOURCE /* Consultez feature_test_macros(7) */
#include <fcntl.h>
ssize_t readahead
(
int
fd, off64_t offset, size_t count);
3. DESCRIPTION ▲
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. readahead() bloque jusqu'à ce que les données spécifiées soient lues. Le décalage fichier courant du fichier ouvert référencé par fd reste inchangé.
4. 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.
5. 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().
6. 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.
7. CONFORMITÉ ▲
L'appel système readahead() est spécifique à Linux et ne devrait pas être utilisé dans des applications conçues pour être portable.
8. NOTES ▲
Dans le cas de certaines architectures 32 bits, la signature de cet appel système diffère, comme expliqué dans syscall(2).
9. VOIR AUSSI ▲
lseek(2), madvise(2), mmap(2), posix_fadvise(2), read(2)
10. COLOPHON ▲
Cette page fait partie de la publication 3.52 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/.
11. 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 à <>.
Vous pouvez toujours avoir accès à la version anglaise de ce document en utilisant la commande « LC_ALL=C man <section> <page_de_man> ».