Vous êtes sur la page 1sur 43

Université Mohammed V de Rabat Département d’Informatique

École Normale Supérieure de Rabat CLE Informatique

Chapitre III : Administration système


 Gestion des processus
 Gestion de la mémoire

Pr. A. ELMOUNADI

SYSTÈMES D’EXPLOITATION
LINUX
Année Universitaire 2023-2024
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DES PROCESSUS


Rappel

 Dans un système d’exploitation tel que Linux, la gestion des


processus se présente comme un aspect primordial dans le
fonctionnement du système.

 Dans la première partie de ce cours, nous avons vu comment la


multiprogrammation a permis le multitâche.

 Un système d’exploitation multitâche est un système qui


permet l’exécution de plusieurs programmes en même temps.
L’OS est donc muni d’un ordonnanceur (Scheduler) qui se
charge d’ordonnancer les processus s’exécutant sur la machine.

2
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DES PROCESSUS


Rappel

 Un processus est défini comme un programme en cours


d’exécution. Et qu’est-ce qu’un programme en cours d’exécution
? Il s’agit tout simplement d’un programme qui puise dans des
ressources matérielles (CPU, MC et qui a accès à des
périphériques E/S).

 Sous Linux, un processus est décrit par deux types de


caractéristiques: des caractéristiques statiques, et d’autres
dynamiques.

3
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DES PROCESSUS


Caractéristiques d’un processus

Caractéristiques statiques d’un processus:


 PID: un identificateur unique attribué de manière automatique par
l’OS au moment du chargement du programme en mémoire,

 UID: l’identifiant du propriétaire du processus,

 PPID: l’identificateur du processus parent dont il hérite la plupart de


ses caractéristiques,

 PGID : le groupe d’exécution du processus,

 Le terminal d’attache pour les E/S.

4
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DES PROCESSUS


Caractéristiques d’un processus

Caractéristiques dynamiques d’un processus:

 Priorité,

 Contexte d’exécution (état des registres),

 Temps d’exécution,

 Quantité de ressources mémoire utilisée,

 Liste des fichiers ouverts en lecture/écriture.

5
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DES PROCESSUS


Caractéristiques d’un processus

 Sous Linux, chaque processus est identifié par son identifiant


de processus unique, appelé le pid (process ID).

 Les identifiants de processus sont des nombres assignés de


façon séquentielle par l’OS aux processus nouvellement créés.
Il est possible de consulter la valeur maximale des pid en
tapant la commande suivante : cat /proc/sys/kernel/pid_max

 Chaque processus a également un processus parent (sauf pour


le processus spécial systemd, ou init pour les anciennes
versions du noyau Linux).

6
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DES PROCESSUS


Caractéristiques d’un processus

 Les processus peuvent également être classés en deux catégories: les


processus utilisateurs et les processus système.

 Les processus utilisateurs représentent l’ensemble des programmes en cours


d’utilisation lancés par un utilisateur ou un groupe d’utilisateurs. Ils sont
généralement lancés en avant plan (foreground). Toutefois, un utilisateur peut
lancer un processus en arrière plan s’il le souhaite.

 Les processus système constituent généralement des services qui sont


principalement lancés en arrière plan (background) au moment du démarrage du
système. Ces services peuvent être des services de base relevant du kernel, ou
des services complémentaires. Par convention, leur noms se terminent par un
« d » pour signifier qu’il s’agit d’un « démon » (daemon). (exemple: systemd,
sshd…), ou bien cela est exprimé explicitement (exemple: dbus-daemon, etc.).

7
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DES PROCESSUS


Caractéristiques d’un processus

 Les processus forment ainsi une arborescence dont la racine et


le processus systemd (ou init pour les anciennes versions).
Cette arborescence peut être consultée en utilisant la
commande pstree dans un terminal.

 En outre, un processus est une entité dynamique qui change


d’état au cours du temps. Typiquement, on recense plusieurs
états de processus: Ready, Running, Stopped, Sleeping,
finished, Zombie.

8
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DES PROCESSUS


Caractéristiques d’un processus

 les états que peut avoir un processus :

9
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DES PROCESSUS


Caractéristiques d’un processus

 Ready : Cet état correspond à un processus qui est prêt à


s’exécuter mais ne peut pas encore prendre possession du
processeur car ce dernier se trouve déjà occupé par un autre
processus.

 Running : En cours d’exécution.

 Stopped : Le processus a reçu un signal qui l’a stoppé. Il doit


attendre la réception d’un autre signal pour être relancé.

 Sleeping : Endormi, en attente d’un évènement, comme la fin


d’une entrée sortie (écriture sur un terminal, …).
10
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DES PROCESSUS


Caractéristiques d’un processus

 Finished : Le processus s’est terminé de façon normale. Tout


de suite après, il est supprimé de la table de processus.

 Zombie : Un processus père crée un processus fils à l’aide d’un


fork(). Ce dernier termine son exécution, mais le père n’en est
pas encore conscient. Le processus fils se retrouve dans un
état zombie, inerte, mais occupe toujours une place dans la
table de processus.

11
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DES PROCESSUS


Le Scheduler

 L’ordonnanceur s’occupe principalement de l'attribution du


Processeur aux différents processus actifs qui sont rangés
dans une file d’attente.

 Sous Linux, le Scheduler adopte quatre politiques


d’ordonnancement pour gérer l’exécution des processus par le
système, les deux premières ainsi que la quatrième sont
qualifiées de politiques temps-réel :

12
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DES PROCESSUS


Le Scheduler

1) SCHED_FIFO : FIFO pour First In First Out, premier arrivé


premier servi. Dans cette politique, plusieurs files d’attente
de processus sont créés chacune avec une priorité
différente. Le Processeur est affecté en priorité au premier
processus qui le demande et ne le relâchera que lorsque celui-
ci est terminé, stoppé, ou bloqué (en attente d’une E/S).

13
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DES PROCESSUS


Le Scheduler

2) SCHED_RR : similaire à SCHED_FIFO en tout point sauf


qu’ici chaque processus se voit attribuer une tranche de
temps d’exécution (Quantum) qu’il ne pourra pas dépasser. À
la fin de cette tranche de temps, il est relégué à la fin de ça
file d’attente et le Processeur sera réquisitionné pour un
autre processus qui est à l’état Ready et de même priorité. Si
un tel processus n’existe pas, un autre de niveau de priorité
inférieur sera sélectionné.

14
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DES PROCESSUS


Le Scheduler

3) SCHED_OTHER : Correspond à la politique par défaut du


noyau Linux, les processus se voient attribuer dès leurs
création une priorité dite « statique » qui peut être modifié
via des appels systèmes. Avec cette priorité statique et en
prenant en compte plusieurs autres facteurs, une priorité «
dynamique » sera calculée, et en fonction de cette dernière,
le Scheduler choisit un processus et lui attribue le
processeur pour un temps d’exécution bien déterminé.

15
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DES PROCESSUS


Le Scheduler

4) SCHED_DEADLINE : cette politique d’ordonnancement a été


introduite à partir de la version 3.14 du noyau linux. elle se
base principalement sur trois paramètres, nommés "runtime",
"period" et "deadline’’ pour planifier les tâches. Une tâche
SCHED_DEADLINE doit recevoir des microsecondes de
temps d'exécution "runtime" toutes les microsecondes
"period", et ces microsecondes "runtime" sont disponibles
dans les microsecondes "deadline" à partir du début de la
période.

16
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DES PROCESSUS


Le Scheduler

4) SCHED_DEADLINE (suite):

Afin d'implémenter ce comportement, à chaque fois que la tâche


se réveille, l'ordonnanceur calcule une "date limite
d'ordonnancement" compatible avec la garantie (en utilisant
l'algorithme Constant Bandwidth Server ou CBS). Les tâches sont
ensuite ordonnancées à l'aide d'EDF (Earliest Deadline First) sur
ces échéances d'ordonnancement. La tâche dont l'échéance
d'ordonnancement est la plus proche sera alors sélectionnée pour
être exécutée.
17
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DES PROCESSUS


Commandes Shell pour la gestion des processus

 Le Shell offre un ensemble de commandes dédiées à la gestion des processus


sous Linux. Le tableau suivant offre une description succincte de ces dernières :
Commande Description Exemples d’utilisation
top Commande interactive pour $top
visualiser les processus lancés sur $top –p <pids> (séparés par
le système. des virgules)
ps Liste les processus en cours $ps
d’exécution sur tout le système. $ps –elf (i.e. ps aux)
admet des paramètres de type $ps –o pid,ppid,cmd
UNIX, BSD et même GNU. $ps –u <username>
pstree Permet d’afficher l’arborescence $pstree –a
des processus. $pstree -p
time Permet de compter le temps $time <cmd>
d’exécution d’un programme lancé
à partir de la ligne de commande.
18
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DES PROCESSUS


Commandes Shell pour la gestion des processus
Commande Description Exemples d’utilisation

kill permet d’envoyer un signal à un $kill –L


processus. utiliser kill –L pour $kill <pid>
lister les signaux pouvant être $kill –SIGKILL <pid>
envoyés. le signal envoyé par défaut $kill –SIGKILL %<id> (pour
est SIGTERM pour terminer un les jobs)
processus.
pkill ressemble à la commande kill mais $pkill –u <username>
propose plus d’options. l’option la
plus utilisée avec pkill reste l’option
« –u » pour agir sur les processus
d’un utilisateur en particulier.
killall ressemble aux deux commandes $killall <processname>
précédentes mais agit sur les
processus par leurs noms.

19
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DES PROCESSUS


Commandes Shell pour la gestion des processus
Commande Description Exemples d’utilisation

jobs Permet la même chose que ps, sauf $jobs


qu’elle se limite à lister les $jobs –l (affiche aussi les
processus lancés à partir du Shell pids)
courant. $jobs –r (affiche
uniquement les processus
en cours d’exécution)

fg Permet d’envoyer un processus en $fg %<id>


avant plan (foreground). utilise les
identifiants précédés par « % » au
lieu des pids.
bg Permet de relancer un processus en $bg %<id>
arrière plan (background).

20
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DES PROCESSUS


Commandes Shell pour la gestion des processus
Commande Description Exemples d’utilisation

nice permet de spécifier la priorité statique $nice –n +10 <cmd>


du processus. utiliser l’option –n pour
spécifier la valeur de la priorité qui
peut varier entre -20 et 19. une
priorité plus haute correspond à une
valeur plus petite.
les processus sont lancés avec la valeur
0 dite priorité de planification de base.
renice permet de redéfinir la priorité d’un $renice –n +5 –p <pid>
processus. Elle prend en paramètre un
pid.
pidof renvoie la valeur du pid du nom du $pidof <processname>
processus en paramètre, si celui-ci
existe. Peut renvoyer plusieurs valeurs
dans certains cas.
21
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DES PROCESSUS


Les signaux

 Les Signaux sont des mécanismes utilisés par le système


d'exploitation pour signaler l’avènement d’un événement
important aux processus utilisateurs.

 Par exemple, lorsque l’utilisateur utilise la combinaison de


touches « ctrl + c », il envoie un signal de terminaison au
programme en cours.

 Sous Linux, la commande principalement utilisée pour envoyer


des signaux est la commande « kill ».

22
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DES PROCESSUS


Les signaux

 les signaux pouvant être envoyés avec cette commande sont


décrits dans la norme POSIX.

 le tableau suivant décrit les principaux signaux qui seront


utilisés dans le cadre de ce cours. Rappelons que la liste de
tous les signaux disponibles peut être consultée en tapant la
commande kill –L sur un terminal.

23
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DES PROCESSUS


Les signaux
Signal Numéro Description Raccourci
clavier
SIGINT 2 Le comportement par défaut est de ctrl + c
terminer le processus de façon ordonnée.
SIGQUIT 3 Le comportement par défaut est de ctrl + \
terminer le processus et de vider le noyau
(core dump). Le processus se termine de
façon non ordonnée.

SIGKILL 9 signal pour tuer un processus


immédiatement.
SIGTERM 15 signal de terminaison d’un processus. Le but
est de tuer le processus en lui donnant
d'abord une chance de faire un clean up.

24
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DES PROCESSUS


Les signaux
Signal Numéro Description Raccourci
clavier
SIGCHLD 17 Indique au processus parent que son fils a
terminé son exécution. L’envoi de ce signal
participe à éviter d’avoir des processus
zombies.

SIGCONT 18 Permet de reprendre un processus


précédemment mis en pause par le biais de
SIGSTOP ou SIGTSTP

SIGSTOP 19 Met un processus en pause.

SIGTSTP 20 Met en pause un processus également, sauf ctrl + z


qu’il est destiné principalement aux
processus initiés à partir du terminal.

25
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DES PROCESSUS


Les signaux

 Lorsqu’il reçoit un signal, un processus peut :


 Ignorer le signal.

 Appeler une routine de traitement fournie par le Noyau (traitement par défaut).

 Appeler une procédure de traitement spécifique.

 Tous les signaux vu précédemment peuvent être ignorés ou voir leur


routine de traitement redéfinie, sauf les signaux SIGKILL et
SIGSTOP.

 Dans la suite, nous verrons comment nous pouvons mettre en place nos
propres gestionnaires de signaux en utilisant la programmation
système.
26
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DE LA MÉMOIRE
Espaces de mémoire

 Sous Linux, la mémoire est organisée sous différents espaces.


Dans un premier temps, nous allons donc faire un rapide tour
d’horizon pour savoir quels sont ces différents espaces
mémoires :

 Used : la mémoire utilisée par les processus et le noyau.

 Free : la mémoire qui est disponible.

 Shared : la mémoire qui est partagée par plusieurs processus en


même temps. Elle est inclue dans la mémoire « used ».

27
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DE LA MÉMOIRE
Espaces de mémoire

 Bufered/cache : il s’agit d’un espace mémoire destiné à accélérer


les accès aux disques et aux fichiers. Il est à noter que les SGBD
par exemple vont se baser sur ce mécanisme pour accélérer leurs
traitements afin d’optimiser les temps de lecture/écriture.

 SWAP : en cas de besoin, Linux va utiliser un espace d’échange


localisé sur le disque pour y transférer les processus inactifs et
non prioritaires afin de libérer de la mémoire vive.

28
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DE LA MÉMOIRE
Fonctionnement de la mémoire

 En termes de gestion de la mémoire, Linux emploie le


mécanisme de la mémoire virtuelle, et plus précisément, celui
de la mémoire virtuelle par pagination.

 Ainsi, Linux va éviter le gaspillage de mémoire en employant un


maximum de RAM afin d’en optimiser l’usage. Cependant, les
processus vont basculer sur l’espace de SWAP une fois la
valeur configurée dans le swappiness est atteinte (en %).

 Afin de consulter cette valeur, il suffit de taper la commande


suivante : cat /proc/sys/vm/swappiness
29
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DE LA MÉMOIRE
Cartographie de la mémoire

 Sur les systèmes d’exploitation modernes, chaque processus


réside dans sa propre région de mémoire allouée ou espace
d’allocation. Les limites de la région allouée ne sont pas
mappées directement aux adresses matérielles physiques.

 Le système d’exploitation crée un espace de mémoire virtuelle


pour chaque processus et agit comme une couche d’abstraction
en mappant la mémoire virtuelle à la mémoire physique.

30
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DE LA MÉMOIRE
Cartographie de la mémoire

 Ainsi, le noyau va maintenir une table de traduction pour


chaque processus, à laquelle l’unité centrale de traitement va
accéder.

 Par ailleurs, dans le cas où le noyau modifie le processus en


cours d’exécution sur un cœur de CPU particulier (pour les CPU
multi-core), il met à jour la table de traduction qui relie les
processus et les cœurs de CPU.

31
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DE LA MÉMOIRE
Cartographie de la mémoire

 Fidèle au principe « tout est fichier », Linux considérera alors


mêmes les processus comme des fichiers, et va attribuer à
chaque nouveau processus un répertoire portant comme nom le
PID de celui-ci, et contenant toutes les informations sur ce
dernier sous forme de fichiers.

 Le répertoire en question sera systématiquement supprimé à la


fin de l’exécution du processus.

32
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DE LA MÉMOIRE
Cartographie de la mémoire

 Ainsi, ces fichiers constituent un support que le noyau utilise afin d’exposer
une grande partie des informations concernant les processus.

 Il existe plusieurs fichiers par processus, il suffit de taper la commande


suivante pour les consulter : ls –l /proc/<pid>

 Parmi ces fichiers se trouvent deux fichiers nommés /proc/<pid>/maps et


/proc/<pid>/smaps.

 le fichier maps par exemple, affiche l’intervalle d’adresses de l’espace mémoire


alloué au processus, les permissions applicables à ces adresses, ainsi que
d’autres informations.

 La commande pmap lit les informations à partir de ces deux fichiers et affiche
les résultats sur le terminal.
33
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DE LA MÉMOIRE
Cartographie de la mémoire

 Exemple de l’utilisation de pmap


avec le processus bash
(responsable de lancer le
terminal) :

34
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DE LA MÉMOIRE
Cartographie de la mémoire

 Les champs présentés dans la sortie de la commande pmap sont


les suivants :

 La première ligne contient le PID du processus ainsi que son nom.

 Chacune des autres lignes indique une adresse mémoire mappée, et


la quantité de mémoire à cette adresse, exprimée en kilo-octets.

 Les cinq caractères suivants de chaque ligne sont appelés


permissions de mémoire virtuelle. Les permissions valides sont les
suivantes :

35
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DE LA MÉMOIRE
Cartographie de la mémoire

 r : permission de lecture de la région de mémoire mappée par le


processus.

 w : permission d’écriture de la région de mémoire mappée par le


processus.

 x : le processus peut exécuter toutes les instructions contenues dans


cette région de mémoire mappée.

 s : la mémoire mappée est partagée (shared), et les modifications


apportées à cette mémoire sont visibles par tous les processus qui la
partagent.

 R : l’espace swap n’est pas réservé pour cette mémoire mappée.

36
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DE LA MÉMOIRE
Cartographie de la mémoire

 La dernière information sur chaque ligne est le nom de la source du


mappage. Il peut s’agir d’un nom de processus, d’un nom de bibliothèque
utilisée, du stack ou du heap. La source de mappage peut parfois être
anonyme.

 Enfin, la dernière ligne contient la taille totale de mémoire virtuelle


occupée par le processus.

37
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DE LA MÉMOIRE
Les différents types de mémoire

 Lorsque l’on consulte l’état des processus et l’utilisation des


ressources systèmes (CPU, mémoire, temps d’exécution) à l’aide
de la commande top par exemple, on remarque que chaque
processus est caractérisé par un ensemble d’informations sur
son usage de la mémoire et sur l’usage du matériel de manière
générale.

38
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DE LA MÉMOIRE
Les différents types de mémoire

 Exemple :

39
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DE LA MÉMOIRE
Les différents types de mémoire

 Voici la signification de chacune des colonnes retournées par la commande top:

 PID : le pid du processus.

 UTIL. : l’utilisateur qui a lancé le processus.

 PR: valeur de la priorité attribuée au processus.

 NI: valeur de nice.

 VIRT (Virtual Memory) : représente la taille totale de la mémoire virtuelle utilisée par le
processus.

 RES (Resident memory Size) : signifie la taille de l’ensemble résident de la mémoire virtuelle qui
se trouve réellement dans la RAM. Cette valeur peut varier car les pages mémoires peuvent être
échangées vers l’intérieur ou vers l’extérieur (swap in et swap out). Inclut aussi SHR.

 SHR (Shared Memory) : est la mémoire physique totale partagée à laquelle le processus a accès.

40
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DE LA MÉMOIRE
Les différents types de mémoire
 S: Process status. Les valeurs possibles sont les suivantes:
 D : uninterruptible sleep,

 I : idle,

 R : running,

 S : sleeping,

 T : stopped by job control signal,

 t : stopped by debugger during trace,

 Z : zombie.

 %CPU : pourcentage d’occupation de la cpu par le processus par rapport à tout le système.

 %MEM : pourcentage de mémoire occupée par le processus, autrement dit, RES / Quantité de la
RAM.

 TEMPS+ : temps d’exécution cumulé.

 COM. : commande qui a provoqué le lancement du processus.

41
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DE LA MÉMOIRE
Commandes Shell pour la gestion de la mémoire

 Enfin, ci-après quelques commandes shell qui rentre dans le


cadre de la gestion de la mémoire. Nous nous limiterons à les
utiliser pour des fins de consultation de l’état de la mémoire :

42
Université Mohammed V de Rabat Département d’Informatique
École Normale Supérieure de Rabat CLE Informatique

GESTION DE LA MÉMOIRE
Commandes Shell pour la gestion de la mémoire

Commande Description Exemples d’utilisation


free Affiche la quantité de mémoire $free –m
libre et utilisée dans et par le $free -h
système.

ulimit Permet de spécifier les seuils de $ulimit –a


contrôle de la mémoire.

vmstat Rapporte les statistiques de la $vmstat


mémoire virtuelle du système.
swapon Active l’espace d’échange. $swapon –a
swapoff Désactive l’espace d’échange. $swapoff –a
top/htop Offre un tableau de bord général $top
pour le suivi de l’utilisation de la $htop
mémoire. $top –p <pids>

43

Vous aimerez peut-être aussi