Linux


Introduction à Linux : Les processus



    Nous avons vu précédemment que le système Linux était Multi-tache, on peut donc utiliser plusieurs programmes ou commandes simultanéments. C'est ce que l'on appelle les processus...
    Les facilités de gestion des processus et des jobs des shell sont assez avancées. Il est donc conseillé de ne pas utiliser ces fonction dans un premier temps...

Concept de processus et de job :

    Chaque fois que l'on lance un programme (commande, application, ...), on crée un processus. C'est à dire un nouvel environnement dans lequel s'exécute le programme. Cet environnement comprend des variables d'état et de choix. Du point de vue de l'utilisateur, plusieurs processus peuvent s'exécuter à un moment donné de façon concurrente.

    Le système de Job control, en français contrôle de travaux multiples, permet le lancement de plusieurs travaux en parallèle, de les reprendre tour à tour comme travail de premier plan et de mettre un travail de premier plan en second plan.
    Le concept de processus est plus général : un processus est identifié de façon unique dans le système par son numéro PID. Alors qu'un job est identifié par un numéro qui est unique seulement dans le shell correspondant. Cela explique qu'on ne puisse employer jobs que pour les processus du shell courant.

Obtenir la liste des processus :

    La commande ps permet d'obtenir la liste des processus et jobs celle des jobs.

Suspendre un processus :

    Si le processus à suspendre est celui qui monopolise le clavier, il suffit de taper CTRL-Z. Sinon, on entre stop n ou

  • %n est le numéro du job à stopper
  • n est le numéro(PID) du processus à stopper

    Reprendre l'exécution d'un processus :

        Avec fg (foreground) et bg (background) on peut reprendre l'exécution, respectivement en premier plan, donc monopolisant le clavier, ou en arrière-plan, d'un job en indiquant son numéro de job. Certains jobs interactifs (éditeurs par exemples) ne peuvent pas être mis en arrière-plan sans être suspendus automatiquement à nouveau.

        Pour reprendre l'exécution du dernier processus suspendu ou pour le reprendre au premier plan s'il est en arrière-plan, il suffit d'entrer %%

    Détruire un processus :

        Pour détruire un processus ou un jobs, on utilise la commande kill (tuer) sur ceux qui nous appartiennent...
    Kill seul tente de détruire le processus, l'option -9, Force la destruction.
    Pour connaître ces numéros, il suffit d'utiliser la commande ps.

    kill 603
    Tentative de destruction du processus 603.
    kill -9 603
    Force la destruction du processus 603.
    kill %3
    Tentative de destruction du job 3
    kill -9 %3
    Force de la destruction du job 3

    Lancer un processus en arrière-plan :

        Pour lancer un processus en arrière plan dès son lancement, il suffit de terminer la commande par &.

    Exemples :

        La commande yes, à priori totalement idiote, se contente d'afficher des "y" à l'infini. Essayons :

    Un autre exemple :





    © Copyright 1999 FTLS (Tyndiuk Frédéric). All rights reserved.
    Last Update 08/03/2000 - Send all comments to webmaster@ftls.org