<!DOCTYPE html>
<html class="client-nojs vector-feature-language-in-header-enabled vector-feature-language-in-main-menu-disabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-0 vector-toc-not-available vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-0 skin-theme-clientpref-os vector-sticky-header-enabled skin-thumbsize-clientpref-standard" lang="fr" dir="ltr"><head>
    <meta charset="UTF-8">
    <title>Ordonnancement d'E/S</title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="icon" type="image/png" href="../_res_/favicon.png">
    <link rel="canonical" href="https://fr.wikipedia.org/wiki/Ordonnancement_d'E%2FS"> <link href="../_mw_/ext.wikimediamessages.styles.css" rel="stylesheet" type="text/css">
    <link href="../_mw_/skins.vector.icons.css" rel="stylesheet" type="text/css">
    <link href="../_mw_/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
    <link href="../_mw_/skins.vector.styles.css" rel="stylesheet" type="text/css">
    <meta name="ResourceLoaderDynamicStyles" content="">
    
    <link rel="stylesheet" type="text/css" href="../_mw_/site.styles.css">
    <link rel="stylesheet" type="text/css" href="../_mw_/noscript.css">
    <link rel="stylesheet" type="text/css" href="../_res_/footer.css">
    <link rel="stylesheet" type="text/css" href="../_res_/vector-2022.css">
  </head>
  <body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Ordonnancement_d_E_S rootpage-Ordonnancement_d_E_S skin-vector-2022 action-view">
    <div class="mw-page-container">
      <div class="mw-page-container-inner">
        <div class="mw-content-container">
          <main id="content" class="mw-body">
            <header class="mw-body-header vector-page-titlebar">
              <h1 id="firstHeading" class="firstHeading mw-first-heading"><span lang="fr" dir="ltr"><span class="mw-page-title-main">Ordonnancement d'E/S</span></span></h1>
            </header>
            <a id="top"></a>
            <div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
              <div id="contentSub">
                <div id="mw-content-subtitle"></div>
              </div>
              <div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="fr" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="fr" dir="ltr">
<figure class="mw-default-size" typeof="mw:File/Thumb"><img src="../_assets_/0c70a452f799bfe840676ee341124611/The_Linux_Storage_Stack_Diagram.svg.png" decoding="async" width="250" height="354" class="mw-file-element" data-file-width="1161" data-file-height="1645" loading="lazy"><figcaption>Le diagramme Linux Storage Stack</figcaption></figure>
<p><a href="../Linux" title="Linux">Linux</a> Storage Stack Diagram
Linux Storage Stack Diagram
</p><p>L'<b>ordonnancement d'<a href="../E/S" class="mw-redirect" title="E/S">E/S</a></b> (pour Entrée/Sortie) est le terme utilisé pour décrire la méthode qu'un <a href="../Syst%C3%A8me_d'exploitation" title="Système d'exploitation">système d'exploitation</a> utilise pour décider de  l'ordre dans lequel les opérations d'<a href="../E/S" class="mw-redirect" title="E/S">E/S</a> seront transmises aux disques. L'ordonnancement d'E/S est parfois appelé 'ordonnancement de disque'.
</p>

<div class="mw-heading mw-heading2"><h2 id="But">But</h2></div>
<p>Les ordonnanceurs d'E/S peuvent avoir divers buts dépendant de l'objectif recherché par l'ordonnancement d'E/S. Les objectifs courants sont&nbsp;:
</p>
<ul><li>minimiser la perte de temps due aux déplacements des têtes des <a href="../Disque_dur" title="Disque dur">disques durs</a>;</li>
<li>rendre prioritaires les requêtes d'E/S de certains <a href="../Processus_(informatique)" title="Processus (informatique)">processus</a>;</li>
<li>partager équitablement entre chaque processus la <a href="../Bande_passante" title="Bande passante">bande passante</a> disponible des disques;</li>
<li>garantir que certaines opérations d'E/S seront exécutées avant une certaine échéance;</li></ul>
<div class="mw-heading mw-heading2"><h2 id="Implémentation"><span id="Impl.C3.A9mentation"></span>Implémentation</h2></div>
<p>L'ordonnancement d'E/S est généralement associé aux disques durs qui possèdent de longs temps d'accès pour les requêtes nécessitant un grand déplacement de la tête du disque. Pour minimiser l'effet de cette propriété sur les performances du système, la plupart des ordonnanceurs d'E/S implémentent un algorithme qui réorganise les requêtes d'E/S à traiter pour les exécuter dans l'ordre dans lequel les données seront accessibles sur le disque.
</p>
<div class="mw-heading mw-heading2"><h2 id="Principaux_ordonnancements_d'E/S"><span id="Principaux_ordonnancements_d.27E.2FS"></span>Principaux ordonnancements d'E/S</h2></div>
<ul><li><i>Random Scheduling</i> (RSS)</li>
<li><i>First In, First Out</i> (<a href="../First_in%2C_first_out" class="mw-redirect" title="First in, first out">FIFO</a>)</li>
<li><i>Last In, First Out</i> (<a href="../LIFO" class="mw-redirect" title="LIFO">LIFO</a>)</li>
<li><i>Shortest seek first</i></li>
<li><i>Elevator algorithm</i>, ou SCAN</li>
<li><i><a href="../Completely_Fair_Queuing" title="Completely Fair Queuing">Completely Fair Queuing</a></i> (CFQ)</li>
<li><i><a href="../Anticipatory_scheduling" title="Anticipatory scheduling">Anticipatory scheduling</a></i></li></ul>
<div class="mw-heading mw-heading2"><h2 id="Voir_aussi">Voir aussi</h2></div>
<ul><li><a href="../Tagged_Command_Queuing" title="Tagged Command Queuing">Tagged Command Queuing</a> (TCQ)</li>
<li><a href="../Native_Command_Queuing" title="Native Command Queuing">Native Command Queuing</a> (NCQ)</li></ul>
<div class="mw-heading mw-heading2"><h2 id="Références"><span id="R.C3.A9f.C3.A9rences"></span>Références</h2></div>
<ul><li><abbr class="abbr indicateur-langue" title="Langue : anglais">(en)</abbr> Love, R. (2005). <i>Linux Kernel Development</i>, Novell Press.  <small style="line-height:1em;">(<a href="../International_Standard_Book_Number" title="International Standard Book Number">ISBN</a>&nbsp;<span class="nowrap">0-672-32720-1</span>)</small></li></ul>
<ul><li><abbr class="abbr indicateur-langue" title="Langue : anglais">(en)</abbr> Cet article est partiellement ou en totalité issu de l’article de Wikipédia en anglais intitulé <span class="">«&nbsp;<a class="external text" href="https://en.wikipedia.org/wiki/I/O_Scheduling?oldid=189821627">I/O Scheduling</a>&nbsp;» <small>(<a class="external text" href="https://en.wikipedia.org/wiki/I/O_Scheduling?action=history">voir la liste des auteurs</a>)</small></span>.</li></ul>
<ul id="bandeau-portail" class="bandeau-portail"><li><span class="bandeau-portail-element"><span class="bandeau-portail-icone"><span class="noviewer" typeof="mw:File"><img alt="icône décorative" src="../_assets_/0c70a452f799bfe840676ee341124611/Circle-icons-computer.svg.png" decoding="async" width="24" height="24" class="mw-file-element" data-file-width="512" data-file-height="512" loading="lazy"></span></span> <span class="bandeau-portail-texte">Portail de l’informatique</span> </span></li>                    </ul></div><!--htdig_noindex--><div><div class="zim-footer">
    Cet article est issu de <a class="external text" title="Dernière modification le 2025-07-18" href="https://fr.wikipedia.org/wiki/?title=Ordonnancement_d'E%2FS&amp;oldid=227377974">Wikipédia</a>. Sauf mention contraire, le texte est disponible sous <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.fr">Creative Commons Attribution-Share Alike 4.0</a>. Des conditions supplémentaires peuvent s’appliquer aux fichiers multimédias.
</div>
</div><!--/htdig_noindex--></div>
            </div>
          </main>
        </div>
      </div>
    </div>
     <script src="../_webp_/webpHandler.js"></script>
  

</body></html>