Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

readahead(2) [linux man page]

READAHEAD(2)						     Linux Programmer's Manual						      READAHEAD(2)

NAME
readahead - perform file readahead into page cache SYNOPSIS
#define _GNU_SOURCE /* See feature_test_macros(7) */ #include <fcntl.h> ssize_t readahead(int fd, off64_t offset, size_t count); DESCRIPTION
readahead() populates the page cache with data from a file so that subsequent reads from that file will not block on disk I/O. The fd argument is a file descriptor identifying the file which is to be read. The offset argument specifies the starting point from which data is to be read and count specifies the number of bytes to be read. I/O is performed in whole pages, so that offset is effectively rounded down to a page boundary and bytes are read up to the next page boundary greater than or equal to (offset+count). readahead() does not read beyond the end of the file. readahead() blocks until the specified data has been read. The current file offset of the open file referred to by fd is left unchanged. RETURN VALUE
On success, readahead() returns 0; on failure, -1 is returned, with errno set to indicate the cause of the error. ERRORS
EBADF fd is not a valid file descriptor or is not open for reading. EINVAL fd does not refer to a file type to which readahead() can be applied. VERSIONS
The readahead() system call appeared in Linux 2.4.13; glibc support has been provided since version 2.3. CONFORMING TO
The readahead() system call is Linux-specific, and its use should be avoided in portable applications. SEE ALSO
lseek(2), madvise(2), mmap(2), posix_fadvise(2), read(2) COLOPHON
This page is part of release 3.27 of the Linux man-pages project. A description of the project, and information about reporting bugs, can be found at http://www.kernel.org/doc/man-pages/. Linux 2010-09-10 READAHEAD(2)

Check Out this Related Man Page

SYSTEMD-READAHEAD-REPLAY.SERVICE(8)			 systemd-readahead-replay.service		       SYSTEMD-READAHEAD-REPLAY.SERVICE(8)

NAME
systemd-readahead-replay.service, systemd-readahead-collect.service, systemd-readahead-done.service, systemd-readahead-done.timer, systemd- readahead - Disk read ahead logic SYNOPSIS
systemd-readahead-replay.service systemd-readahead-collect.service systemd-readahead-done.service systemd-readahead-done.timer /usr/lib/systemd/systemd-readahead/systemd-readahead [OPTIONS...] COMMAND [DIRECTORY | FILE] DESCRIPTION
systemd-readahead-collect.service is a service that collects disk usage patterns at boot time. systemd-readahead-replay.service is a service that replays this access data collected at the subsequent boot. Since disks tend to be magnitudes slower than RAM, this is intended to improve boot speeds by pre-loading early at boot all data on disk that is known to be read for the complete boot process. systemd-readahead-done.service is executed a short while after boot completed and signals systemd-readahead-collect.service to end data collection. On this signal, this service will then sort the collected disk accesses and store information about them in /.readahead. Normally, both systemd-readahead-collect.service and systemd-readahead-replay.service are activated at boot so that access patterns from the preceding boot are replayed and new data collected for the subsequent boot. However, on read-only media where the collected data cannot be stored, it might be a good idea to disable systemd-readahead-collect.service. On rotating media, when replaying disk accesses at early boot, systemd-readahead-replay.service will order read requests by their location on disk. On non-rotating media, they will be ordered by their original access timestamp. If the file system supports it, systemd-readahead-collect.service will also defragment and rearrange files on disk to optimize subsequent boot times. OPTIONS
systemd-readahead understands the following options: -h, --help Prints a short help text and exits. --max-files= Maximum number of files to read ahead. Only valid for thes collect command. --file-size-max= Maximum size of files in bytes to read ahead. Only valid for the collect and replay commands. --timeout= Maximum time in microseconds to spend collecting data. Only valid for the collect command. COMMANDS
The following commands are understood by systemd-readahead: collect [DIRECTORY] Collect read-ahead data on early boot. When terminating, it will write out a pack file to the indicated directory containing the read-ahead data. replay [DIRECTORY] Perform read-ahead on the specified directory tree. analyze [FILE] Dumps the content of the read-ahead pack file to the terminal. For each file, the output lists approximately how much will be read ahead by the replay command. SEE ALSO
systemd(1) systemd 208 SYSTEMD-READAHEAD-REPLAY.SERVICE(8)
Man Page