readahead

From Wikipedia, the free encyclopedia
Jump to: navigation, search

readahead is the file prefetching technology used in the Linux operating system. It is a system call that loads a file's contents into the page cache. When a file is subsequently accessed, its contents are read from physical memory rather than from disk, which is much faster.[1][2]

Many Linux distributions use readahead on a list of commonly used files to speed up booting. In such a setup, if the kernel is booted with the profile parameter, it will record all file accesses during bootup and write a new list of files to be read before booting. This will make additional installed services start faster, because they are not included in the default readahead list.[3]

In Linux distributions that use systemd, readahead is replaced by systemd-readahead.[4][5]

Certain experimental page-level prefetching systems have been developed to further improve performance.[6]

References[edit]

  1. ^ Jonathan Corbet (2005-10-12). "Adaptive file readahead". LWN.net. Retrieved 2014-05-01. 
  2. ^ "readahead(2) - Linux manual page". man7.org. Retrieved 2014-04-09. 
  3. ^ Michael Opdenacker (2007-06-15). "Readahead: time-travel techniques for desktop and embedded systems" (PDF). free-electrons.com. pp. 5–6. Retrieved 2014-05-01. 
  4. ^ "Readahead". fedorahosted.org. Retrieved 2014-04-09. 
  5. ^ "systemd-readahead-replay.service". freedesktop.org. 2014-03-26. Retrieved 2014-04-09. 
  6. ^ Krzysztof Lichota (2008). "Linux solution for prefetching necessary data during application and system startup" (PDF). code.google.com. Retrieved 2014-07-28.