0% ont trouvé ce document utile (0 vote)
24 vues13 pages

Gestion des processus et commandes UNIX

Transféré par

salifkorogo510
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
24 vues13 pages

Gestion des processus et commandes UNIX

Transféré par

salifkorogo510
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Gestion des processus

NOTION DE PROCESSUS

Processus : entité dynamique qui matérialise un


programme en cours d'exécution avec ses propres
ressources physiques (mémoire, processeur, entrée/sortie,
…) et logiques (données, variables, …). Contrairement à un
programme (texte exécutable) qui a une existence
statique.
Caractéristiques d'un processus

UID PID PPID C STIME TTY TIME COMMAND

 UID nom de l'utilisateur qui a lancé le process


 PID correspond au numéro du process
 PPID correspond au numéro du process parent
 C au facteur de priorité : plus la valeur est grande, plus
le processus est prioritaire
 STIME correspond à l'heure de lancement du processus
 TTY correspond au nom du terminal
 TIME correspond à la durée de traitement du processus
 COMMAND correspond au nom du processus.
Types de processus
2 types de processus :

– Processus système (daemons): processus sous contrôle


d’aucun terminal et qui ont comme propriétaire
l’administrateur ; assurent des tâches d’ordre général

• init : processus père des tous les processus du système

• crond : permet l’exécution d’un programme en mode


cyclique

• xinted : super démon internet

– Processus utilisateur : processus lancée par l’utilisateur


(commande utilisateur)
Mode d’exécution
Il existe cinq modes d’exécution :
• Mode interactif (foreground) ;
• Mode en arrière-plan (background) ou mode
asynchrone ;
• Mode différé ;
• Mode batch ;
• Mode cyclique.
• Mode interactif (foreground) : mode le plus
fréquent ; pendant l’exécution de la
commande l’utilisateur ne peut pas utiliser le
terminal pour lancer une autre commande ;
• Mode en arrière-plan (background) ou mode
asynchrone : permet de rendre le contrôle à
l’utilisateur ;
Lancer un processus en arrière plan
Vous disposez d'une technique simple qui permet de lancer une
commande à partir d'un shell, et de reprendre aussitôt la main. Il vous
suffit de rajouter un & à la fin de commande. Celle-ci se lancera en " tâche
de fond ", et vous reviendrez directement au prompt du shell.
Exemple : $ ps ef &
Pour visualiser l’état d’exécution d’une commande lancée en arrière plan,
on utilise la commande

$ jobs cette commande donne le [ numéro de tâche] (job), son


[PID,son état d’exécution (stopped, running, …) et le nom de la commande
Ramener un processus en arrière/avant
plan :

$ fg [N°tâche] fg (foreground) permet de reprendre


exécution de la tâche en premier plan

$ bg [N°tâche] bg (background) permet de ramener


l’exécution de la tâche en arrière plan
Mode d’exécution-suite
• Mode différé : exécution différé d’une
commande à l’aide de la commande at ;
• Mode batch : permet de placer une
commande dans une file d’attente. Le système
exécutera toujours la commande placée en
tête de fille ;
• Mode cyclique : exécution périodique à l’aide
de la commande cron.
Visualiser les processus
 Lister les processus lancés par l’utilisateur en cours : $ps
 Lister tous les processus lancés sur la machine :
$ps aux
$ps -ef
 Lister les processus lancés par un utilisateur particulier : $ps
-u userlogin
 Lister les processus qui tournent sur la machine et montrer
diverses informations : $top
 Obtenir l'ID d’un processus : $pgrep process_name
 Afficher le répertoire de travail actuel d’un processus :
$pwdx process_id
 Afficher l'arborescence des processus : $pstree process_id
 Afficher les informations fstat et fcntl : $lsof process_id
 Affiche les informations sur le planificateur de processus :
$ps -c
Changer la priorité d'un processus

Vous disposez de la commande nice pour modifier la priorité d'un processus.


La syntaxe est la suivante :
$ nice –valeur_priorité commande

Plus le nombre est grand, plus la priorité est faible. Par exemple une valeur de
0 donne, la priorité la plus haute 20 donne la priorité la plus faible.
La fourchette de valeur dépend de l'UNIX qu'on utilise.

Exemple : $ nice -5 ps -ef


Arrêter un processus
Vous disposez de la commande kill pour arrêter un processus.

#kill signal pid

 Exemple :Tuer un processus dont on connait le PID : $kill -9 process_id

 Arrêter des processus: $killall process_name


 Tuer les processus liés à un utilisateur donné : $pkill -u user_login

Vous aimerez peut-être aussi