Sophie

Sophie

distrib > Mandriva > cooker > i586 > by-pkgid > f1bf657d7897899cbef141dd3a0c9d64 > files > 33

mandriva-doc-Mastering-Manual-fr-2010.1-1.1.noarch.rpm

<html>
   <head>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
   
      <title>19.2.&nbsp;Manipulation des processus</title>
      <link rel="stylesheet" href="images/mdk-doc.css" type="text/css">
      <meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
      <link rel="start" href="index.html" title="Ma&icirc;triser Mandriva Linux">
      <link rel="up" href="cmdline-intro-chapter.html" title="Chapitre&nbsp;19.&nbsp;Introduction &agrave; la ligne de commande">
      <link rel="prev" href="cmdline-file.html" title="19.1.&nbsp;Manipulation de fichiers">
      <link rel="next" href="cmdline-doc.html" title="19.3.&nbsp;Documentation sur les commandes">
   </head>
   <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
      <div class="navheader">
         <table width="100%" summary="Navigation header">
            <tr>
               <th colspan="3" align="center">19.2.&nbsp;Manipulation des
                        processus
               </th>
            </tr>
            <tr>
               <td width="20%" align="left"><a accesskey="p" href="cmdline-file.html">Pr&eacute;c&eacute;dent</a>&nbsp;
               </td>
               <th width="60%" align="center">Chapitre&nbsp;19.&nbsp;Introduction &agrave; la ligne
                      de commande
               </th>
               <td width="20%" align="right">&nbsp;<a accesskey="n" href="cmdline-doc.html">Suivant</a></td>
            </tr>
         </table>
         <hr>
      </div>
      <div class="section" lang="fr">
         <div class="titlepage">
            <div>
               <div>
                  <h2 class="title" style="clear: both"><a name="cmdline-process"></a>19.2.&nbsp;Manipulation des
                           processus
                  </h2>
               </div>
            </div>
         </div>
             
         
             
         <p><a name="BIdNEW-cmdline-intro-chapter-pa147"></a>Du point de vue du
            syst&egrave;me, les applications s'ex&eacute;cutent en un ou plusieurs processus,
            consommant des ressources syst&egrave;mes, telles que la m&eacute;moire ou du temps
                processeur. Nous pr&eacute;sentons quelques commandes pour superviser et g&eacute;rer
                les processus, et par cons&eacute;quent les applications auxquels ils
                appartiennent.
         </p>
         
             
         <div class="section" lang="fr">
            <div class="titlepage">
               <div>
                  <div>
                     <h3 class="title"><a name="d5e11052"></a>19.2.1.&nbsp;S'informer sur
                                les processus
                     </h3>
                  </div>
               </div>
            </div>
                  
            
                  
            <p><a name="BId-process-control-pa5"></a><a class="indexterm" name="BIdNEW-process-control-it2"></a> La commande <span class="command"><strong>ps</strong></span> affiche une liste des
                     processus existants sur le syst&egrave;me, selon les crit&egrave;res que vous
                     voulez.
            </p>
            
                  
            <p><a name="BId-process-control-pa6"></a>Si la commande
                     <span class="command"><strong>ps</strong></span> est lanc&eacute;e sans argument, seuls les processus dont
                     vous &ecirc;tes l'initiateur et qui sont rattach&eacute;s au terminal que vous
                     utilisez seront affich&eacute;s&nbsp;:
            </p>
            
                  <a name="BId-process-control-sc1"></a><pre class="screen">$ ps
  PID TTY       TIME CMD
18614 pts/3 00:00:00 bash 20173 pts/3 00:00:00 ps</pre>
            
                  <p><a name="BId-process-control-pa8"></a>Voici ses options
                     les plus communes&nbsp;:
            </p>
            
                  
            <div class="itemizedlist">
               <ul type="disc">
                  <li>
                               
                     <p><a name="BId-process-control-pa9"></a><code class="option">a</code>&nbsp;: affiche les
                                  processus lanc&eacute;s par tous les utilisateurs&nbsp;;
                     </p>
                             
                  </li>
                  <li>
                               
                     <p><a name="BId-process-control-pa10"></a><code class="option">x&nbsp;</code>: affiche les
                                  processus lanc&eacute;s depuis n'importe quel terminal, et pas seulement le
                                  v&ocirc;tre (ou m&ecirc;me ceux n'ayant pas de terminal du tout);
                     </p>
                             
                  </li>
                  <li>
                               
                     <p><a name="BId-process-control-pa11"></a><code class="option">u</code>&nbsp;: affiche pour
                                  chaque processus le nom de l'utilisateur qui l'a lanc&eacute; et l'heure de
                                  son lancement.
                     </p>
                             
                  </li>
               </ul>
            </div>
                
         </div>
         
             
         <div class="section" lang="fr">
            <div class="titlepage">
               <div>
                  <div>
                     <h3 class="title"><a name="d5e11075"></a>19.2.2.&nbsp;Contr&ocirc;ler les
                                processus
                     </h3>
                  </div>
               </div>
            </div>
                  
            
                  
            <p><a name="BId-process-control-pa15"></a><a class="indexterm" name="BIdNEW-process-control-it3"></a> Les processus sont contr&ocirc;l&eacute;s par des signaux. Les
                     commandes <span class="command"><strong>kill</strong></span> et <span class="command"><strong>killall</strong></span> sont
                     utilis&eacute;es pour envoyer des signaux aux processus. La commande
                     <span class="command"><strong>kill</strong></span> attend un num&eacute;ro de processus en argument,
                     tandis que la commande <span class="command"><strong>killall</strong></span> attend un nom de
                     processus.
            </p>
            
                  
            <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
               <table border="0" summary="Note">
                  <tr>
                     <td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.png"></td>
                     <th align="left">Note</th>
                  </tr>
                  <tr>
                     <td align="left" valign="top">
                                
                        <p><a name="BIdNEW-cmdline-intro-chapter-pa148"></a>Gardez &agrave; l'esprit
                                   que les processus r&eacute;agissent diff&eacute;remment aux m&ecirc;mes signaux. Quand
                                   vous envoyez un signal &agrave; un processus, vous ne pouvez donc pas vous
                                   attendre <span class="foreignphrase"><em class="foreignphrase">a priori</em></span>&agrave; ce qu'il se comporte
                                   comme vous l'aviez pens&eacute; .
                        </p>
                              
                     </td>
                  </tr>
               </table>
            </div>
            
                  <a name="BIdNEW-cmdline-intro-chapter-sy7"></a><pre class="synopsis">kill &lt;num&eacute;ro_de_processus_&gt;</pre>
            
                  <a name="BIdNEW-cmdline-intro-chapter-sy8"></a><pre class="synopsis">killall &lt;nom_de_processus_&gt;</pre>
            
                  <p><a name="BIdNEW-cmdline-intro-chapter-pa149"></a>Les signaux peuvent
                     &ecirc;tre sp&eacute;cifi&eacute;s par un nombre ou par un nom. Ex&eacute;cutez la commande
                     <span class="command"><strong>kill -l</strong></span> pour voir la liste des signaux disponibles.
                     Les plus fr&eacute;quemment utilis&eacute;s sont&nbsp;:
            </p>
            
                  
            <div class="itemizedlist">
               <ul type="disc">
                  <li>
                               
                     <p><a name="BIdNEW-cmdline-intro-chapter-pa150"></a><code class="literal">TERM</code>
                                  ou <code class="literal">15</code>&nbsp;: c'est le signal envoy&eacute; par d&eacute;faut quand
                                  le nom ou le num&eacute;ro du signal est omis. Il termine le processus
                                  &eacute;l&eacute;gamment.
                     </p>
                             
                  </li>
                  <li>
                               
                     <p><a name="BIdNEW-cmdline-intro-chapter-pa151"></a><code class="literal">STOP</code>
                                  ou <code class="literal">19</code>&nbsp;: ce signal est utilis&eacute; pour suspendre un
                                  processus. Envoyez le signal <code class="literal">CONT</code> ou
                                  <code class="literal">18</code> pour reprendre un processus suspendu.
                     </p>
                             
                  </li>
                  <li>
                               
                     <p><a name="BIdNEW-cmdline-intro-chapter-pa152"></a><code class="literal">KILL</code>
                                  ou <code class="literal">9</code>&nbsp;: ce signal est utilis&eacute; pour forcer l'arr&ecirc;t
                                  d'un processus. Il est g&eacute;n&eacute;ralement utilis&eacute; pour terminer un
                                  processus qui ne r&eacute;pond plus (ou &laquo;&nbsp;<span class="quote">gel&eacute;</span>&nbsp;&raquo;). Il termine le
                                  processus brutalement.
                     </p>
                             
                  </li>
               </ul>
            </div>
            
                  
            <p><a name="BIdNEW-cmdline-intro-chapter-pa153"></a>Quelques
                     exemples&nbsp;:
            </p>
            
                  
            <div class="itemizedlist">
               <ul type="disc">
                  <li>
                               
                     <p><a name="BIdNEW-cmdline-intro-chapter-pa154"></a><span class="command"><strong>kill
                                        785</strong></span>&nbsp;: demande au processus identifi&eacute; par le num&eacute;ro
                                  <code class="literal">785</code> de terminer l'ex&eacute;cution, donnant ainsi la
                                  possibilit&eacute; au processus d'effectuer toute op&eacute;ration de nettoyage
                                  n&eacute;cessaire. ;
                     </p>
                             
                  </li>
                  <li>
                               
                     <p><a name="BIdNEW-cmdline-intro-chapter-pa155"></a><span class="command"><strong>kill
                                        -KILL 785</strong></span>&nbsp;: force l'arr&ecirc;t du processus identifi&eacute; par le
                                  num&eacute;ro <code class="literal">785</code> sans laiss&eacute; au processus la
                                  possibilit&eacute; d'effectuer aucune op&eacute;ration de nettoyage. Le processus
                                  se termine imm&eacute;diatement&nbsp;;
                     </p>
                             
                  </li>
                  <li>
                               
                     <p><a name="BIdNEW-cmdline-intro-chapter-pa156"></a><span class="command"><strong>killall
                                        -TERM make</strong></span>&nbsp;: demande &agrave; tous les processus nomm&eacute;s
                                  <code class="literal">make</code> lanc&eacute;s par cet utilisateur de terminer
                                  l'ex&eacute;cution.
                     </p>
                             
                  </li>
               </ul>
            </div>
            
                  
            <p><a name="BIdNEW-process-control-pa35"></a>Quoi qu'il
                     arrive, vous ne contr&ocirc;lerez que vos propres processus, (sauf si vous
                     &ecirc;tes <code class="literal">root</code>), donc ne vous inqui&eacute;tez pas des processus
                     des autres utilisateurs puisqu'ils ne seront pas affect&eacute;s.
            </p>
                
         </div>
         
             
         <div class="section" lang="fr">
            <div class="titlepage">
               <div>
                  <div>
                     <h3 class="title"><a name="d5e11126"></a>19.2.3.&nbsp;Mixer ps et kill: top
                     </h3>
                  </div>
               </div>
            </div>
                  
            
                  
            <p><a name="BId-process-control-pa17"></a><span class="command"><strong>top</strong></span> est un
                     programme qui remplit &agrave; la fois les fonction de <span class="command"><strong>ps</strong></span> et
                     <span class="command"><strong>kill</strong></span>. Il permet aussi de contr&ocirc;ler les processus en
                     temps r&eacute;el, en fournissant des informations sur l'usage de la m&eacute;moire,
                     la <acronym class="acronym">CPU</acronym> le temps d'ex&eacute;cution. Voir <a class="xref" href="cmdline-process.html#top" title="Figure&nbsp;19.1.&nbsp;Contr&ocirc;ler les processus avec top">Figure&nbsp;19.1, &laquo;&nbsp;Contr&ocirc;ler les processus
                            avec top&nbsp;&raquo;</a>.
            </p>
            
                  
            <div class="figure"><a name="top"></a><p class="title"><b>Figure&nbsp;19.1.&nbsp;Contr&ocirc;ler les processus
                               avec top</b></p>
               <div class="figure-contents">
                          
                  
                          
                  <div class="mediaobject" align="center"><img src="images/top.png" align="middle" alt="Contr&ocirc;ler les processus avec top"></div>
                        
               </div>
            </div><br class="figure-break">
            
                  
            <p><a name="BId-process-control-pa18"></a><span class="command"><strong>top</strong></span> se contr&ocirc;le &agrave;
                     partir du clavier. Les commandes sont sensibles &agrave; la casse. Vous pouvez
                     acc&eacute;der &agrave; l'aide en tapant sur <span class="keycap"><strong>h</strong></span>. Voici quelques-une
                     des commandes les plus utiles&nbsp;:
            </p>
            
                  
            
                  
            <div class="itemizedlist">
               <ul type="disc">
                  <li>
                               
                     <p><a name="BId-process-control-pa19"></a><span class="keycap"><strong>k</strong></span>&nbsp;:
                                  envoie un signal &agrave; un processus. Vous devrez alors entrer le
                                  <acronym class="acronym">PID</acronym> du processus suivi du num&eacute;ro ou du
                                  nom du signal &agrave; envoyer (<code class="literal">TERM</code> ou
                                  <code class="literal">15</code>, par d&eacute;faut)&nbsp;;
                     </p>
                             
                  </li>
                  <li>
                               
                     <p><a name="BId-process-control-pa20"></a><span class="keycap"><strong>M</strong></span>&nbsp;: trie par taux
                                  d'occupation m&eacute;moire (champ <code class="literal">%MEM</code>)&nbsp;;
                     </p>
                             
                  </li>
                  <li>
                               
                     <p><a name="BId-process-control-pa21"></a><span class="keycap"><strong>P</strong></span>&nbsp;: trie les
                                  processus selon le temps <acronym class="acronym">CPU</acronym> qu'ils consomment
                                  (champ <code class="literal">%CPU</code>)&nbsp;: c'est le tri par d&eacute;faut&nbsp;;
                     </p>
                             
                  </li>
                  <li>
                               
                     <p><a name="BId-process-control-pa22"></a><span class="keycap"><strong>u</strong></span>&nbsp;:
                                  affiche les processus d'un utilisateur donn&eacute;. Vous devrez
                                  alors entrer le <span class="emphasis"><em>nom</em></span> de l'utilisateur,
                                  et non son <acronym class="acronym">UID</acronym>. Si vous n'entrez aucun
                                  nom, tous les processus seront affich&eacute;s&nbsp;;
                     </p>
                             
                  </li>
                  <li>
                               
                     <p><a name="BId-process-control-pa23"></a><span class="keycap"><strong>i</strong></span>&nbsp;: par
                                  d&eacute;faut, tous les processus, m&ecirc;me endormis sont affich&eacute;s. Cette
                                  commande fait en sorte que seuls les processus en cours d'ex&eacute;cution
                                  soient affich&eacute;s. (processus dont le champ <code class="literal">STAT</code>
                                  indique <code class="literal">R</code>, <span class="foreignphrase"><em class="foreignphrase">Running</em></span>
                                  soit en cours d'ex&eacute;cution) mais pas les autres. Un nouvel appel &agrave;
                                  cette commande permettra de revenir &agrave; l'&eacute;tat ant&eacute;rieur.
                     </p>
                             
                  </li>
               </ul>
            </div>
                
         </div>
           
      </div>
      <div class="navfooter">
         <hr>
         <table width="100%" summary="Navigation footer">
            <tr>
               <td width="40%" align="left"><a accesskey="p" href="cmdline-file.html">Pr&eacute;c&eacute;dent</a>&nbsp;
               </td>
               <td width="20%" align="center"><a accesskey="u" href="cmdline-intro-chapter.html">Niveau sup&eacute;rieur</a></td>
               <td width="40%" align="right">&nbsp;<a accesskey="n" href="cmdline-doc.html">Suivant</a></td>
            </tr>
            <tr>
               <td width="40%" align="left" valign="top">19.1.&nbsp;Manipulation de
                        fichiers&nbsp;
               </td>
               <td width="20%" align="center"><a accesskey="h" href="index.html">Sommaire</a></td>
               <td width="40%" align="right" valign="top">&nbsp;19.3.&nbsp;Documentation sur les
                        commandes
               </td>
            </tr>
         </table>
      </div>
   </body>
</html>