Newer
Older
cours-unix-shell / output / commandes / processus.html
<!DOCTYPE html>
<html>

<head>
    <title></title>
    <link rel="stylesheet" href="style.css">
</head>

<body>
    <header>
        <h1></h1>
        <nav>
            <ul>
                <li><a href="/output/README.html">Accueil</a></li>
                <li><a href="/output/unix/README.html">UNIX</a></li>
                <li><a href="/output/bases/README.html">Bases</a></li>
                <li><a href="/output/commandes/README.html">Commandes</a></li>
                <li><a href="/output/shell/README.html">Shell</a></li>
                <li><a href="/output/sed/README.html">Sed</a></li>
                <li><a href="/output/make/README.html">Make</a></li>
            </ul>
        </nav>
    </header>

    <div class="content">
        <h1 id="gestion-des-processus">Gestion des processus</h1>
        <h2 id="ps">ps</h2>
        <p>Cette commande permet de voir quels sont les processus actifs pour un terminal donné.<br />
        Les processus qui sont vus ici sont par exemple le shell actif ou tout programme en train de s'exécuter.</p>
        <div class="sourceCode"><pre class="sourceCode bash"><code class="sourceCode bash"><span class="fu">ps</span></code></pre></div>
        <p>L'appel de cette commande affiche la liste des processus actifs avec, en particulier, leurs numéros (dits PID).</p>
        <pre class="txt"><code>   PID TTY      TIME CMD
          8073 pts/29   0:01 ksh
         12395 pts/29   0:25 xemacs</code></pre>
        <h2 id="kill">kill</h2>
        <p>Cette commande permet, en particulier, de détruire un processus qui ne s'est pas normalement terminé avec l'achèvement d'un traitement et qui continue d'être visible par un <code>ps</code> ou un <code>top</code>.<br />
        Pour faire cela, il faut utiliser le paramètre <code>-9</code> de la commande suivi du numéro PID du processus à arrêter.</p>
        <div class="sourceCode"><pre class="sourceCode bash"><code class="sourceCode bash"><span class="bu">kill</span> -9 10256</code></pre></div>
        <h2 id="nice">nice</h2>
        <p>Cette commande permet d'altérer délibérément la priorité d'une commande pour ne pas gêner l'exécution de tâches plus prioritaires.<br />
        Par exemple :</p>
        <div class="sourceCode"><pre class="sourceCode bash"><code class="sourceCode bash"><span class="fu">nice</span> top</code></pre></div>
        <h2 id="top">top</h2>
        <p>Cette commande affiche les processus les plus actifs (top CPU), avec réactualisation fréquente des informations (par défaut, toutes les 3 secondes).</p>
        <div class="sourceCode"><pre class="sourceCode bash"><code class="sourceCode bash"><span class="ex">top</span></code></pre></div>
        <p>Sont ainsi obtenus les noms des commandes et leur PID respectifs ainsi, entre autres, que le nom du propriétaire de chacun de ces processus, leur priorité ou leur charge CPU.<br />
        L'état affiché concerne l'ensemble des utilisateurs unix de la machine.</p>
        <p>Il y a une ligne de saisie de commandes juste au-dessus de la liste des 15 processus, à la position du curseur. Plusieurs commandes peuvent être utilisées ici, dont par exemple :</p>
        <ul>
        <li>h : affiche l'aide sur les commandes de top</li>
        <li>k : avec l'option -9 termine un processus selon son PID (voir kill plus haut)</li>
        <li>r : renice un processus, c'est-à-dire permet d'altérer volontairement la priorité d'un processus (celle-ci est un chiffre, par exemple 10) : <code>renice [priorité] [PID]</code></li>
        <li>u : affiche les processus d'un utilisateur donné</li>
        <li>q : quitte top</li>
        </ul>
        <p><a href="./compression.html">Précédent</a> - <a href="./tp.html">Suivant</a></p>
    </div>

    <footer>
        <p>&copy; CNRS 2023</p>
    </footer>
</body>

</html>