Vous êtes sur la page 1sur 1

Université 8 Mai Guelma Département d’Informatique

Systèmes d’exploitation SEI 2ième Année Licence

Travail pratique N°2


Objectif :
Ce TP permettra aux étudiants de mettre en pratique les connaissances qu’ils ont acquis au chapitre
3, et qui concerne les politiques d’allocation mémoire.

Travail à réaliser :
Il est demandé de réaliser un gestionnaire d’allocation mémoire avec les algorithmes vus dans le
cours. Chaque groupe va programmer une seule politique répartie comme suit :

Première zone libre (first-fit) : choix de la première zone libre de taille


(Groupe 03)
suffisante.
Le meilleur ajustement (best-fit) : choix de la plus petite zone de taille suffisante
(Groupe 01)
(fragment minimal)
Le plus grand résidu (worst-fit) : la plus grande zone libre est choisie (Groupe 04)
Next fit : choisir la première zone libre de taille suffisante juste après la dernière
(Groupe 02)
zone choisie

Détails :
Ecrire un programme en C qui permet de :

1. Initialiser l’état de la mémoire selon le tableau suivant :


partition partition partition partition partition partition partition partition partition partition partition partition
1 2 3 4 5 6 7 8 9 10 11 12
utilisée libre utilisée libre utilisée libre utilisée libre utilisée utilisée libre utilisée
10Ko 30Ko 20Ko 38Ko 10Ko 20Ko 30Ko 50Ko 10Ko 45Ko 20Ko 30Ko

2. Afficher l’état de la mémoire.


3. Afficher le Menu suivant :

- Allouer une partition à un processus (entrer les infos du nouveau processus et faire
l’allocation)
- Libérer une partition (entrer le numéro de la partition à libérer)
- Défragmenter (cette opération permet de rassembler tous les espaces libres en un seul
espace libre à la fin)
- Sortir

4. Suivant le choix effectué (il faut tester les valeurs entrées, exemple < > 0).
5. Afficher l’état de la mémoire après l’allocation, après la libération et après la
défragmentation.
6. Après chaque opération, les partitions seront renommées si nécessaire.

Exemple : Arrivée de 30 KO

partition partition partition Partition Partition Partition Partition


4 5 6 4 5 6 7
devient
utilisée libre utilisée utilisée utilisée libre utilisée
38Ko 50Ko 20Ko 38Ko 30KO 20Ko 20Ko

7. En cas de non disponibilité d’emplacement mémoire, afficher un message ‘Processus non


alloué faute d’espace mémoire’ et proposer l’opération de défragmentation si l’espace
résultant de la défragmentation permet l’allocation du processus.

Vous aimerez peut-être aussi