sd-readahead.xml revision a26c9cc60477acacf3a147009894bd837353ed6c
1633838b8255282d10af15c5c84cee5a51466712Bob Halley<?xml version='1.0'?> <!--*-nxml-*-->
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence
1633838b8255282d10af15c5c84cee5a51466712Bob Halley<!--
1633838b8255282d10af15c5c84cee5a51466712Bob Halley This file is part of systemd.
1633838b8255282d10af15c5c84cee5a51466712Bob Halley
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence Copyright 2010 Lennart Poettering
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews systemd is free software; you can redistribute it and/or modify it
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews under the terms of the GNU General Public License as published by
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews the Free Software Foundation; either version 2 of the License, or
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews (at your option) any later version.
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews systemd is distributed in the hope that it will be useful, but
1633838b8255282d10af15c5c84cee5a51466712Bob Halley WITHOUT ANY WARRANTY; without even the implied warranty of
c50fd34a4e0e6978f8ca5f6f3ad8545549c3cfeeBob Halley MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
f38cee63260a466e97ea92bc00cc4155955723daMark Andrews General Public License for more details.
9c3531d72aeaad6c5f01efe6a1c82023e1379e4dDavid Lawrence
d25afd60ee2286cb171c4960a790f3d7041b6f85Bob Halley You should have received a copy of the GNU General Public License
d25afd60ee2286cb171c4960a790f3d7041b6f85Bob Halley along with systemd; If not, see <http://www.gnu.org/licenses/>.
c50fd34a4e0e6978f8ca5f6f3ad8545549c3cfeeBob Halley-->
c50fd34a4e0e6978f8ca5f6f3ad8545549c3cfeeBob Halley
6a759e38699d133302d0df120d7afcd4af721951David Lawrence<refentry id="sd-daemon">
1a69a1a78cfaa86f3b68bbc965232b7876d4da2aDavid Lawrence
7df0472d8a76c83d2137bd9549414a30787d58cfBrian Wellington <refentryinfo>
c50fd34a4e0e6978f8ca5f6f3ad8545549c3cfeeBob Halley <title>sd-readahead</title>
af24ac2d39e044dc53d64d21974bde6ac081b80dBob Halley <productname>systemd</productname>
1a69a1a78cfaa86f3b68bbc965232b7876d4da2aDavid Lawrence
c50fd34a4e0e6978f8ca5f6f3ad8545549c3cfeeBob Halley <authorgroup>
c50fd34a4e0e6978f8ca5f6f3ad8545549c3cfeeBob Halley <author>
3740b569ae76295b941d57a724a43beb75b533baBob Halley <contrib>Developer</contrib>
c50fd34a4e0e6978f8ca5f6f3ad8545549c3cfeeBob Halley <firstname>Lennart</firstname>
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence <surname>Poettering</surname>
1fdbe90dc4815d3542ee71de181735ad4a904456Bob Halley <email>lennart@poettering.net</email>
1fdbe90dc4815d3542ee71de181735ad4a904456Bob Halley </author>
1fdbe90dc4815d3542ee71de181735ad4a904456Bob Halley </authorgroup>
1fdbe90dc4815d3542ee71de181735ad4a904456Bob Halley </refentryinfo>
c50fd34a4e0e6978f8ca5f6f3ad8545549c3cfeeBob Halley
c50fd34a4e0e6978f8ca5f6f3ad8545549c3cfeeBob Halley <refmeta>
c50fd34a4e0e6978f8ca5f6f3ad8545549c3cfeeBob Halley <refentrytitle>sd-readahead</refentrytitle>
c50fd34a4e0e6978f8ca5f6f3ad8545549c3cfeeBob Halley <manvolnum>7</manvolnum>
c50fd34a4e0e6978f8ca5f6f3ad8545549c3cfeeBob Halley </refmeta>
c50fd34a4e0e6978f8ca5f6f3ad8545549c3cfeeBob Halley
c50fd34a4e0e6978f8ca5f6f3ad8545549c3cfeeBob Halley <refnamediv>
6c6d0a2a0636b97eb32fef403579f1f97a9ebf47Bob Halley <refname>sd-readahead</refname>
6c6d0a2a0636b97eb32fef403579f1f97a9ebf47Bob Halley <refpurpose>Reference implementation of APIs for
6c6d0a2a0636b97eb32fef403579f1f97a9ebf47Bob Halley controlling boot-time read-ahead</refpurpose>
6c6d0a2a0636b97eb32fef403579f1f97a9ebf47Bob Halley </refnamediv>
6c6d0a2a0636b97eb32fef403579f1f97a9ebf47Bob Halley
6c6d0a2a0636b97eb32fef403579f1f97a9ebf47Bob Halley <refsynopsisdiv>
6c6d0a2a0636b97eb32fef403579f1f97a9ebf47Bob Halley <funcsynopsis>
6e49e91bd08778d7eae45a2229dcf41ed97cc636David Lawrence <funcsynopsisinfo>#include "sd-readahead.h"</funcsynopsisinfo>
6c6d0a2a0636b97eb32fef403579f1f97a9ebf47Bob Halley </funcsynopsis>
6c6d0a2a0636b97eb32fef403579f1f97a9ebf47Bob Halley </refsynopsisdiv>
6c6d0a2a0636b97eb32fef403579f1f97a9ebf47Bob Halley
419590499823ce15b5d2ad4fe71eaf04bd5a86c0Michael Graff <refsect1>
419590499823ce15b5d2ad4fe71eaf04bd5a86c0Michael Graff <title>Description</title>
6e49e91bd08778d7eae45a2229dcf41ed97cc636David Lawrence
6c6d0a2a0636b97eb32fef403579f1f97a9ebf47Bob Halley <para><filename>sd-readahead.c</filename> and
6c6d0a2a0636b97eb32fef403579f1f97a9ebf47Bob Halley <filename>sd-readahead.h</filename> provide a
6c6d0a2a0636b97eb32fef403579f1f97a9ebf47Bob Halley reference implementation for APIs for controlling boot-time
6c6d0a2a0636b97eb32fef403579f1f97a9ebf47Bob Halley read-ahead, as implemented by the read-ahead subsystem
6c6d0a2a0636b97eb32fef403579f1f97a9ebf47Bob Halley of the
6c6d0a2a0636b97eb32fef403579f1f97a9ebf47Bob Halley <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>
6c6d0a2a0636b97eb32fef403579f1f97a9ebf47Bob Halley init system.</para>
6c6d0a2a0636b97eb32fef403579f1f97a9ebf47Bob Halley
c50fd34a4e0e6978f8ca5f6f3ad8545549c3cfeeBob Halley <para>See
c50fd34a4e0e6978f8ca5f6f3ad8545549c3cfeeBob Halley <citerefentry><refentrytitle>sd_readahead</refentrytitle><manvolnum>3</manvolnum></citerefentry>
c50fd34a4e0e6978f8ca5f6f3ad8545549c3cfeeBob Halley for more information about the function
3ddd814a97de1d152ba0913c592d6e6dc83d38a6Michael Graff implemented.</para>
35a7ec9864d4be5f8f00ea13b8d815a6a1e7f421Bob Halley </refsect1>
af24ac2d39e044dc53d64d21974bde6ac081b80dBob Halley
4bc30f45a225947a298f706a8522c9d30915d137Bob Halley <refsect1>
35a7ec9864d4be5f8f00ea13b8d815a6a1e7f421Bob Halley <title>Notes</title>
c50fd34a4e0e6978f8ca5f6f3ad8545549c3cfeeBob Halley
4bc30f45a225947a298f706a8522c9d30915d137Bob Halley <para>This interface is provided by the reference
28fb4b818b982f2eb50580f7a9f2cad67c5fecceBob Halley implementation of APIs for controlling boot-time
1fdbe90dc4815d3542ee71de181735ad4a904456Bob Halley read-ahead and distributed with the systemd
1fdbe90dc4815d3542ee71de181735ad4a904456Bob Halley package. The algorithms it implements are simple, and
1fdbe90dc4815d3542ee71de181735ad4a904456Bob Halley can easily be reimplemented in daemons if it is
ea4d349e2b61cab2bef35c53406baa3647c9bf67Bob Halley important to support this interface without using the
35a7ec9864d4be5f8f00ea13b8d815a6a1e7f421Bob Halley reference implementation. See the respective function
35a7ec9864d4be5f8f00ea13b8d815a6a1e7f421Bob Halley man pages for details.</para>
6c6d0a2a0636b97eb32fef403579f1f97a9ebf47Bob Halley
e407562a75eb93073bb72089cced150d7ffe4d4fTatuya JINMEI 神明達哉 <para>In addition, for details about the algorithms
6c6d0a2a0636b97eb32fef403579f1f97a9ebf47Bob Halley check the liberally licensed reference implementation
6c6d0a2a0636b97eb32fef403579f1f97a9ebf47Bob Halley sources:
28fb4b818b982f2eb50580f7a9f2cad67c5fecceBob Halley <ulink url="http://cgit.freedesktop.org/systemd/systemd/plain/src/readahead/sd-readahead.c"/>
c50fd34a4e0e6978f8ca5f6f3ad8545549c3cfeeBob Halley resp. <ulink url="http://cgit.freedesktop.org/systemd/systemd/plain/src/systemd/sd-readahead.h"/></para>
6c6d0a2a0636b97eb32fef403579f1f97a9ebf47Bob Halley
28fb4b818b982f2eb50580f7a9f2cad67c5fecceBob Halley <para>These APIs are implemented in the reference
1fdbe90dc4815d3542ee71de181735ad4a904456Bob Halley implementation's drop-in
1fdbe90dc4815d3542ee71de181735ad4a904456Bob Halley <filename>sd-readahead.c</filename> and
1fdbe90dc4815d3542ee71de181735ad4a904456Bob Halley <filename>sd-readahead.h</filename> files. It is
1fdbe90dc4815d3542ee71de181735ad4a904456Bob Halley recommended that applications consuming these APIs copy
1fdbe90dc4815d3542ee71de181735ad4a904456Bob Halley the implementation into their source tree, either
1fdbe90dc4815d3542ee71de181735ad4a904456Bob Halley verbatim or in excerpts. These interfaces are
35a7ec9864d4be5f8f00ea13b8d815a6a1e7f421Bob Halley currently not available in a dynamic library.</para>
35a7ec9864d4be5f8f00ea13b8d815a6a1e7f421Bob Halley
35a7ec9864d4be5f8f00ea13b8d815a6a1e7f421Bob Halley <para>The functions provided by this interface become
35a7ec9864d4be5f8f00ea13b8d815a6a1e7f421Bob Halley NOPs when -DDISABLE_SYSTEMD is set during
35a7ec9864d4be5f8f00ea13b8d815a6a1e7f421Bob Halley compilation. In addition, if
35a7ec9864d4be5f8f00ea13b8d815a6a1e7f421Bob Halley <filename>sd-readhead.c</filename> is compiled on
28fb4b818b982f2eb50580f7a9f2cad67c5fecceBob Halley non-Linux systems it becomes NOPs.</para>
28fb4b818b982f2eb50580f7a9f2cad67c5fecceBob Halley </refsect1>
28fb4b818b982f2eb50580f7a9f2cad67c5fecceBob Halley
6c6d0a2a0636b97eb32fef403579f1f97a9ebf47Bob Halley <refsect1>
6c6d0a2a0636b97eb32fef403579f1f97a9ebf47Bob Halley <title>See Also</title>
e407562a75eb93073bb72089cced150d7ffe4d4fTatuya JINMEI 神明達哉 <para>
6c6d0a2a0636b97eb32fef403579f1f97a9ebf47Bob Halley <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
ea4d349e2b61cab2bef35c53406baa3647c9bf67Bob Halley <citerefentry><refentrytitle>sd_readahead</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
ea4d349e2b61cab2bef35c53406baa3647c9bf67Bob Halley <citerefentry><refentrytitle>sd-daemon</refentrytitle><manvolnum>7</manvolnum></citerefentry>
ea4d349e2b61cab2bef35c53406baa3647c9bf67Bob Halley </para>
28fb4b818b982f2eb50580f7a9f2cad67c5fecceBob Halley </refsect1>
28fb4b818b982f2eb50580f7a9f2cad67c5fecceBob Halley
28fb4b818b982f2eb50580f7a9f2cad67c5fecceBob Halley</refentry>
6a759e38699d133302d0df120d7afcd4af721951David Lawrence