HAPITRE III –LA MÉMOIRE CENTRALE
Transcript of HAPITRE III –LA MÉMOIRE CENTRALE
Faculté des Sciences de GabesDépartement d’informatique
20/11/2016
Cours SE 1
20/11/2016 Khaled Hassine 1
CCHAPITREHAPITRE IIIIII ––LLAAMÉMOIREMÉMOIRE CENTRALECENTRALE
20/11/2016 Khaled Hassine 2
Par :
Khaled Hassine
Stratégies de gestion mémoire
Généralités
Récapitulatifs
PLAN
20/11/2016 Khaled Hassine 3
Organisation de la mémoire
Stratégies de gestion mémoire
Généralités
Récapitulatifs
PLAN
20/11/2016 Khaled Hassine 4
Organisation de la mémoire
Faculté des Sciences de GabesDépartement d’informatique
20/11/2016
Cours SE 2
La ressource mémoire
La mémoire principale (Main memory, Primary memory, Internalmemory, Real Storage) : la ressource la plus critique
Hiérarchie en couche : au sommet : les registres (petite capacité, grande vitesse, coût
élevé) en bas de la pyramide : les supports magnétiques et optiques de
mémoire secondaire (grande capacité, faible coût, lents) La performance doit :
tirer le meilleur parti des mémoires rapides pour pallier leslimitations des plus lents
à l’inverse d’exploiter au maximum les types de mémoire les plusabondants pour simuler les types plus rapides disponibles enquantités limitées.
20/11/2016 Khaled Hassine 5
Fonctionnalités attendues d’ungestionnaire de la mémoire
Connaître les parties libres de la mémoirephysique.
Allouer de la mémoire au processus en évitantautant que possible le gaspillage.
Récupérer la mémoire libérée suite à laterminaison d’un processus.
Protéger la mémoire contre les utilisationsinterdites,
Offrir des services de mémoire virtuelle
20/11/2016 Khaled Hassine 6
Performance de la mémoire
Dépend : de la taille mémoire et du temps d'accès.
des protections mises en œuvre.
Ces paramètres sont contradictoires et difficilement dissociables. influent considérablement sur la performance de la
machine.
20/11/2016 Khaled Hassine 7
Protection de la mémoire
Gestion garantissant l'intégrité (logique) desinformations : interdisant l'autodestruction : Volontaire (Virus, Intrus, …) Involontaire (Défaut de programmation, Accès non
autorisé, …) Particulièrement en multiprogrammation
Atteinte au SE, Utilisateur non autorisé, Modification des programmes ou des données des autres, Accès aux informations partagées …
20/11/2016 Khaled Hassine 8
Faculté des Sciences de GabesDépartement d’informatique
20/11/2016
Cours SE 3
Monoprogrammation versusMultiprogrammation
20/11/2016 Khaled Hassine 9
Système d'exploitation
Mono-utilisateur
Programme user 1
Système d'exploitation
Multiutilisateurs-Multi-tâches
Programme et donnéesutilisateur 2
Données utilisateur 1
Programme / Donnéesutilisateur
Stratégies de gestion mémoire
Généralités
Récapitulatifs
PLAN
20/11/2016 Khaled Hassine 10
Organisation de la mémoire
Problématique
Taille requise de la mémoire de plus en plus importante les exigences des utilisateurs en matière de système d'exploitation, l'emploi d'interfaces graphiques sophistiquées, l'utilisation des logiciels aux possibilités sans cesse accrues (le traitement
d'images, …) Or, l'espace directement adressable limité par la taille des registres
d'adresse. Un sérieux problème :
comment pouvoir accéder à toutes les cellules d'une mémoire ? qu'on souhaite de taille importante ?
Deux solutions sont proposées à ce problème en pratique : la segmentation la pagination.
20/11/2016 Khaled Hassine 11
Organisation de la mémoire Adresse logique versus adresse
physique Organisation en segments Organisation en pages Organisation mixte
20/11/2016 Khaled Hassine 12
Faculté des Sciences de GabesDépartement d’informatique
20/11/2016
Cours SE 4
Mécanisme de traduction(translation)
Convertir : l’adresse logique de l'information (instruction ou donnée) issue de
l’UC, en adresses physiques ou réelles, effectivement présenté sur le bus
d'adresse, correspondant à une location en mémoire.
Besoin de deux registres (systèmes, éventuellement table) : le registre de base, ou registre de relocation, contient l’adresse du
début de la partition mémoire du programme usager, le registre limite correspond à la taille de la partition mémoire du
programme usager et permet de vérifier si la demande d’accès enmémoire est permise ou non (protection mémoire par registre).
20/11/2016 Khaled Hassine 13
Transformation Adresses logique enadresse physique
20/11/2016 Khaled Hassine 14
MémoireRegistre
limite
Adresselogique
Adressephysique
Unitécentrale <
Oui
Non
RegistreRelocation
+
Organisation de la mémoire Adresse logique versus adresse
physique Organisation en segments Organisation en pages Organisation mixte
20/11/2016 Khaled Hassine 15
Principe de base
Trois catégories d’informations : code, données et pile, aisément discernables, les séparer physiquement en leurs associant des zones
mémoires distinguées, appelées segments.
Solution adoptée par Intel pour le 8086 et sessuccesseurs. Quatre registres correspondant aux trois segments (CS,
DS, SS) Un registre supplémentaire dit Extra Segment (ES).
20/11/2016 Khaled Hassine 16
Faculté des Sciences de GabesDépartement d’informatique
20/11/2016
Cours SE 5
Caractéristiques
Particularité : taille variable avec une limites : Max : 64 kilooctets pour le 8086. Min : 16 octets
Avantages : Réservation selon les besoins (minimiser le gaspillage) Protection facile : selon le type d’information
Inconvénients : Gestion des adresses : non uniforme Attribution de l’adresse début par le SE : Recherche de la
localisation
20/11/2016 Khaled Hassine 17
Mécanisme de traduction
Registres d’adresses : 16bits
Bus d’adresses : 20 bits
20/11/2016 Khaled Hassine 18
0000Registre de segment(16 bits)
Déplacement (16bits)
Adresse mémoire sur le busd’adresse (20 bits)
Protection
L'espace mémoire total (1 Megaoctet) peut être vu soit comme unepartition de 16 segments de 64 Kilooctets. Les adresses début des segments : des multiples de 16. Les segments peuvent être disjoints ou se recouvrir partiellement.
La protection est assurée dès lors que les segments sont disjoints. Les registres de segments doivent être chargés avec des valeurs
adéquates. Une écriture en mémoire ne pourra modifier un mot que dans le segment de
données associé à une instruction. Le jeu d'instructions définit le champ d'application de chaque instruction,
en particulier, les segments impliqués dans l'exécution de chacune d'entreselles branchement sous entend segment de code, transfert sous entend segment de donnée, empiler segment de pile, etc.
20/11/2016 Khaled Hassine 19
Organisation de la mémoire Adresse logique versus adresse
physique Organisation en segments Organisation en pages Organisation mixte
20/11/2016 Khaled Hassine 20
Faculté des Sciences de GabesDépartement d’informatique
20/11/2016
Cours SE 6
Principe de base
Découper la mémoire centrale en zones dedimension égales appelées pages.
Plus simple à gérer que la segmentation puisque,par définition même, les pages sont disjointes. Table des pages : fournir l'adresse physique de chaque
page dans la mémoire centrale
Une adresse logique est composée de deux parties : un numéro de page
un déplacement dans la page (< taille d’une page).
20/11/2016 Khaled Hassine 21
Fragmentation
Un programme et ses données ne remplissentgénéralement pas les pages qui lui sont associées.
Exemple : taille d'une page est 4096 octets un programme qui nécessite 26000 octets. Le nombre de pages occupées = 7
6 pleines une occupant réellement 1424 Octets et 2672 octets inutilisés.
En pratique, le nombre de pages partiellementoccupées est important lors d'une session de travail.
20/11/2016 Khaled Hassine 22
Taille de page : compromis entredeux tendances contradictoires
Des petites pages :+ Minimise le problème de fragmentation
- Alourdi la gestion : sauvegarde des tables des pages, leur chargement et
déchargement
provoquent des surcoûts et des surcharges importants.
Des grandes pages :- Maximise le problème de fragmentation
+ Facilite la gestion
20/11/2016 Khaled Hassine 23
Taille de page en pratique
Dans une architecture à mémoire hiérarchisée, la tailled'une page dépend de : La taille d'un secteur du disque magnétique.
Le temps de recherche sur disque (localisation du cylindre, de laface, du secteur) est plus important que le temps de transfert entremémoire centrale et le disque dur.
Il est plus rentable de lire une quantité importante de donnée qu'unepetite quantité.
La taille de la cache : l’information réside lors de samanipulation par l'unité centrale dans la mémoire cache.
OS offre lors de l'installation une gamme de tailles depages que l'utilisateur peut choisir.
20/11/2016 Khaled Hassine 24
Faculté des Sciences de GabesDépartement d’informatique
20/11/2016
Cours SE 7
Mécanisme de traduction : Exemple
Soit une machine : L'unité centrale fournit une adresse logique sur 16 bits. Une mémoire physique de 1 Megaoctets. La taille d'une page est de 4 Kilooctets.
Solution : Les 4 bits A12 à A15 de l'adresse constituent le numéro d'une
entrée dans une table de page. Chaque mot de la table contient l’adresse physique début de
l'une des 16 pages, codée sur 8 bits. Les 12 bits A0 à A11 constituent le déplacement dans cette
page 20 bits d'adresse, soit 220 = 1024 Kilooctets accessibles.
20/11/2016 Khaled Hassine 25 20/11/2016 Khaled Hassine 26
Pagination
8 bits 20 bits
12 bits
A12-A15(N° de page)
A0-A11(Déplacement)
Table de pages
4 bits
Adresse logique
Mémoire
AdressePhysique
Registre de table de page
Avec ce concept, on adresse 16 x 4 Kilooctets, soit 64Kilooctets.
Or la mémoire est de taille 1024 Kilooctets.
Pour adresser toutes les cellules de la mémoire, il nousfaut 16 tables de pages différentes.
Un registre de table de page : Pour chaque partie de code ou de donnée
Contient un numéro (l'adresse début) d'une table de page,
Chargé lors de l'accès à la mémoire, par la valeur adéquate.
20/11/2016 Khaled Hassine 27
Protection (plusieurs utilisateurs)
Un ensemble de pages dit espace de travail (Working Set)est alloué par le SE à chaque processus.
Ces pages peuvent être : distinctes pour assurer une certaine protection réciproque,
commune (pour partager des données par exemple).
A chaque utilisateur est associée une table de descriptiondes pages qui lui sont accordées : Chaque entrée est complétée par des bits d'autorisation d'accès à la
page correspondante.
La mise à jour de la mémoire des pages est à la charge du SE
20/11/2016 Khaled Hassine 28
Faculté des Sciences de GabesDépartement d’informatique
20/11/2016
Cours SE 8
Organisation de la mémoire Adresse logique versus adresse
physique Organisation en segments Organisation en pages Organisation mixte
20/11/2016 Khaled Hassine 29
Principe de base
Combiner les deux mécanismes de segmentation et depagination
Bénéficier des avantages de deux concepts : De la segmentation :
Modularité, Facilité de programmation, Protection et partage.
De la pagination : Facilité de gestion (taille uniforme) La possibilité de ne charger en mémoire centrale que la page
sollicitée par l'accès.
Exemple : MULTICS - IBM 370
20/11/2016 Khaled Hassine 30
Segmentation paginée
20/11/2016 Khaled Hassine 31
Seg
Table dessegments
Page Offset
Table despages
+OffsetPage réelle
Adresse mémoireréelle
Adresse virtuelle
Table dessegments
du programme
IBM 370
Gère des segments paginés.
Deux possibilités de segments sont offertes : 16 segments de 1 Megaoctets chacun
256 segments de 64 kilooctets.
Pagination avec deux tailles possibles : 2 Kilooctets ou
4 Kilooctets.
20/11/2016 Khaled Hassine 32
Faculté des Sciences de GabesDépartement d’informatique
20/11/2016
Cours SE 9
20/11/2016 Khaled Hassine 33
Segmentationpaginée
Descripteursdes segments
Bits divers : Modification – protection - …
0 : En MC
1 : En MA
Mémoire
Page sollicitée
N° de la pageN° de segment Déplacement
Adresse de la page
Nb pages Bit divers @ table de pages
Table des pages
Segmentation avec pagination: MULTICS
34
Un descripteur de segmentL'adresse est complétée par 6 zéros carles adresses physiques de 24 bits sontalignées sur des pages de 64 octets.
Stratégies de gestion mémoire
Généralités
Récapitulatifs
PLAN
20/11/2016 Khaled Hassine 35
Organisation de la mémoire
Stratégies de gestion de lamémoire Représentation de l’espace libre
Bitmap Liste chaînée
Stratégies d’allocation Multiprogrammation et utilisation de l’UC Multiprogrammation à partitions fixes Multiprogrammation à partitions variables Gestion de la mémoire par subdivision
Stratégies de placement
20/11/2016 Khaled Hassine 36
Faculté des Sciences de GabesDépartement d’informatique
20/11/2016
Cours SE 10
Stratégies de gestion de lamémoire Représentation de l’espace libre
Bitmap Liste chaînée
Stratégies d’allocation Multiprogrammation et utilisation de l’UC Multiprogrammation à partitions fixes Multiprogrammation à partitions variables Gestion de la mémoire par subdivision
Stratégies de placement
20/11/2016 Khaled Hassine 37
Problématique
Mémoire découpée en unités d’allocation (blocmémoire).
Trace des emplacements occupés et libres de lamémoire : table de bits (bitmaps) liste chaînée.
Libération d’un bloc mémoire si un processus estévacué
Fusion éventuel avec des blocs adjacents libres.
20/11/2016 Khaled Hassine 38
Exemple
X est le bloc qui se libère
20/11/2016 Khaled Hassine 39
X BA A lib B
Avant libération Après libération
A X libA lib
Stratégies de gestion de lamémoire Représentation de l’espace libre
Bitmap Liste chaînée
Stratégies d’allocation Multiprogrammation et utilisation de l’UC Multiprogrammation à partitions fixes Multiprogrammation à partitions variables Gestion de la mémoire par subdivision
Stratégies de placement
20/11/2016 Khaled Hassine 40
Faculté des Sciences de GabesDépartement d’informatique
20/11/2016
Cours SE 11
Condition
L’espace mémoire adressable est décomposé enblocs de taille fixe.
La partition allouée à un processus est composéed’un nombre entier de blocs.
Une table de bits : conservée en mémoire
chaque bit définit l’état (libre=0, occupé=1) d’un bloc enmémoire.
20/11/2016 Khaled Hassine 41
Table de bits
+ Simple à implémenter- Présente peu d’informations Peu utilisée
+ plus l’unité d’allocation est petitemoins on a de perte lors desallocations
- plus cette table occupe de place enmémoire.
20/11/2016 Khaled Hassine 42
Stratégies de gestion de lamémoire Représentation de l’espace libre
Bitmap Liste chaînée
Stratégies d’allocation Multiprogrammation et utilisation de l’UC Multiprogrammation à partitions fixes Multiprogrammation à partitions variables Gestion de la mémoire par subdivision
Stratégies de placement
20/11/2016 Khaled Hassine 43
Principe
Maintenir une liste chaînée des blocs alloués et desblocs libres
Chaque bloc correspond soit à : un processus,
un trou entre deux partitions de processus.
Taille variable : puissances de 2 (16K, 32K, 64K).
20/11/2016 Khaled Hassine 44
Faculté des Sciences de GabesDépartement d’informatique
20/11/2016
Cours SE 12
Structure d’une liste chainée
20/11/2016 Khaled Hassine 45
Stratégies de gestion de lamémoire Représentation de l’espace libre
Bitmap Liste chaînée
Stratégies d’allocation Multiprogrammation et utilisation de l’UC Multiprogrammation à partitions fixes Multiprogrammation à partitions variables Gestion de la mémoire par subdivision
Stratégies de placement
20/11/2016 Khaled Hassine 46
Stratégies de gestion de lamémoire Représentation de l’espace libre
Bitmap Liste chaînée
Stratégies d’allocation Multiprogrammation et utilisation de l’UC Multiprogrammation à partitions fixes Multiprogrammation à partitions variables Gestion de la mémoire par subdivision
Stratégies de placement
20/11/2016 Khaled Hassine 47
Problématique
Objectif principal de la multiprogrammation : une meilleureutilisation de l’UC et de la mémoire (le système).
Modèle simpliste : n processus s’exécutent en concurrence, (n le degré de
multiprogrammation).
les n processus passent tous une fraction p de leur temps à effectuerdes E/S
le taux d’utilisation de l’UC est :
20/11/2016 Khaled Hassine 48
nUC pTU 1
Faculté des Sciences de GabesDépartement d’informatique
20/11/2016
Cours SE 13
Problématique
Commentaméliorer le tauxd’utilisation del’UC lorsque leprocessus qui ledétient réalise desopérations d’E/S ?
20/11/2016 Khaled Hassine 49
Stratégies de gestion de lamémoire Représentation de l’espace libre
Bitmap Liste chaînée
Stratégies d’allocation Multiprogrammation et utilisation de l’UC Multiprogrammation à partitions fixes Multiprogrammation à partitions variables Gestion de la mémoire par subdivision
Stratégies de placement
20/11/2016 Khaled Hassine 50
Principe de base
Décomposer, lors de l’initialisation du système, l’espace mémoire usageren plusieurs partitions fixes (Fixed Partition Multiprogramming : FPM).
Le répartiteur de haut niveau (l’ordonnanceur) décide de l’attribution despartitions libres au processus qui en font la demande.
La partition mémoire demandée se fait sur la base de : la taille du code et des données (statiques) du programme une estimation de la taille de la mémoire dynamique (pile, pointeurs, …)
requise pour l’exécution du programme. La multiprogrammation à partitions fixes était surtout utilisée sur les
ordinateurs mainframes d’IBM. Idéalement, avoir des partitions de tailles différentes de manière à :
pouvoir accommoder différents types de programme. avoir une file d’attente par type de partition : une file pour les petites partitions,
une pour les partitions moyennes, etc.
20/11/2016 Khaled Hassine 51
File d’attente : multiple versusunique
20/11/2016 Khaled Hassine 52
Faculté des Sciences de GabesDépartement d’informatique
20/11/2016
Cours SE 14
Problèmes à éviter
Cas d’une file d’attente unique Fragmentation interne : une partition de grande taille
gaspillée par un petit processus.
Cas des files d’attente multiples : Fragmentation externe : un processus attend indéfiniment
qu’une partition correspondant à ses besoins se libère, alorsque l’espace libre est décomposé en plusieurs petitespartitions.
Un processus attend indéfiniment qu’une partitioncorrespondant à ses besoins se libère, alors qu’une partition degrande taille est disponible.
20/11/2016 Khaled Hassine 53
Stratégies de gestion de lamémoire Représentation de l’espace libre
Bitmap Liste chaînée
Stratégies d’allocation Multiprogrammation et utilisation de l’UC Multiprogrammation à partitions fixes Multiprogrammation à partitions variables Gestion de la mémoire par subdivision
Stratégies de placement
20/11/2016 Khaled Hassine 54
Principe
Le nombre, la taille, la localisation et la location despartitions changent au cours du temps.
En multiprogrammation à partitions variables, unprocessus ne peut pas avoir de garantie sur la locationde sa partition avant d’être chargé en mémoire.
En particulier un processus ne peut pas requérir unerégion particulière de la mémoire principale, vu quecelle-ci pourrait ne jamais se libérer. Par conséquent,opter pour une stratégie de multiprogrammation àpartition variable impose que le code exécutable desprogrammes soit au minimum relogeable.
20/11/2016 Khaled Hassine 55
Exemple
Evolution possible des partitions correspondant auxévènements suivants : (a) le processus A est chargé en mémoire, (b) B est chargé en mémoire, (c) C est chargé en mémoire, (d) A termine (et libère la mémoire), (e) D est chargé en mémoire, (f) B se termine, (g) E est chargé en mémoire, (h) D termine, (i) E termine, (j) F est chargé en mémoire.
20/11/2016 Khaled Hassine 56
Faculté des Sciences de GabesDépartement d’informatique
20/11/2016
Cours SE 15
Occupation de la mémoire
20/11/2016 Khaled Hassine 57
Observations
L’utilisation de partitions variables ne résout pas leproblème de la fragmentation externe : si le processus F se présente avant que E ne se termine, il
devra attendre faute de trou mémoire assez grand.
20/11/2016 Khaled Hassine 58
Solutions
Lorsque le niveau de fragmentation externe de lamémoire devient trop important, ou lorsqu’unedemande d’allocation de mémoire ne peut êtresatisfaite, on effectue une compaction de lamémoire, de manière à regrouper les trous isolésen trous plus importants
Le SE peut effectuer une opération de ramasse-miettes (garbage collection).
20/11/2016 Khaled Hassine 59
Stratégies de gestion de lamémoire Représentation de l’espace libre
Bitmap Liste chaînée
Stratégies d’allocation Multiprogrammation et utilisation de l’UC Multiprogrammation à partitions fixes Multiprogrammation à partitions variables Gestion de la mémoire par subdivision
Stratégies de placement
20/11/2016 Khaled Hassine 60
Faculté des Sciences de GabesDépartement d’informatique
20/11/2016
Cours SE 16
Gestion de la mémoire par subdivisions(ou frères siamois)
Proposé par Donald KNUTH en 1973
Objectif : accélérer la fusion des zones libresadjacentes lors de la libération d'unités grace à unesubdivision dichotomique.
Le gestionnaire mémorise utilise une liste de blocslibres dont la taille est une puissance de 2 (1, 2, 4, 8octets, ...., jusqu'à la taille maximale de lamémoire).
20/11/2016 Khaled Hassine 61
Exemple
20/11/2016 Khaled Hassine 62
1M
A 128 256 512
Avec une mémoire de 1 Mo, on a ainsi 251 listes. Initialement, lamémoire est vide. Toutes les listes sont vides, sauf la liste 1 Mo quipointe sur la zone libre de 1 Mo :
Un processus A demande 70 Ko :1. la mémoire est fragmentée en deux compagnons (buddies) de 512
Ko;2. l'un d'eux est fragmenté en deux blocs de 256 Ko;3. l'un d'eux est fragmenté en deux blocs de 128 Ko et on loge A dans
l'un d'eux, puisque 64 < 70 < 128 :
Allocation et libération
20/11/2016 Khaled Hassine 63
A B 64 256 512
Un processus B demande 35 Ko :1. l'un des deux blocs de 128 Ko est fragmenté en deux de 64 Ko2. on loge B dans l'un d'eux puisque 32 < 35 < 64
Un processus C demande 80 Ko :1. le bloc de 256 Ko est fragmenté en deux de 128 Ko2. on loge C dans l'un d'eux puisque 64 < 80 < 128
A B 64 C 128 512
Allocation et libération …
20/11/2016 Khaled Hassine 64
A s'achève et libère son bloc de 128 Ko.
Puis un processus D demande 60 Ko :le bloc libéré par A est fragmenté en deux de 64 Ko, dont l'un logera D
128 B 64 C 128 512
128 B D C 128 512
Faculté des Sciences de GabesDépartement d’informatique
20/11/2016
Cours SE 17
Allocation et libération …
20/11/2016 Khaled Hassine 65
B s'achève, permettant la libération d'un bloc de64 Ko :
D s'achève, permettant la reconstitution d'un blocde 256 Ko , etc...
128 64 D C 128 512
256 C 128 512
Inconvénients
L'allocation et la libération des blocs sont trèssimples.
Mais un processus de taille 2n+1 octets utilisera unbloc de 2n+1 octets !
Il y a beaucoup de perte de place en mémoire.
20/11/2016 Khaled Hassine 66
Stratégies de gestion de lamémoire Représentation de l’espace libre
Bitmap Liste chaînée
Stratégies d’allocation Multiprogrammation et utilisation de l’UC Multiprogrammation à partitions fixes Multiprogrammation à partitions variables Gestion de la mémoire par subdivision
Stratégies de placement
20/11/2016 Khaled Hassine 67
Placement Strategies
L’allocation d’un espace libre pour un processuspeut se faire suivant 3 stratégies principalescommunément employées : Le premier ajustement (First Fit)
Le meilleur ajustement (Best Fit)
Le pire ajustement (Worst Fit dite aussi stratégiepréventive)
20/11/2016 Khaled Hassine 68
Faculté des Sciences de GabesDépartement d’informatique
20/11/2016
Cours SE 18
Le premier ajustement (First Fit)
Consiste à prendre le premier bloc libre de la listequi peut contenir le processus qu’on désire charger.
L'avantage de cette stratégie est dans sa simplicité :on minimise le temps de recherche.
L'inconvénient est qu'on risque de laisser assésd'espace mémoire difficile à exploiter(fragmentation externe).
20/11/2016 Khaled Hassine 69
Le meilleur ajustement (Best Fit)
Alloue au processus le plus petit espace mémoirequi peut le contenir.
Cette stratégie garantie que l'espace mémoire nonutilisé (non exploitable dans le futur) sera le pluspetit.
L'inconvénient de cette approche est la surchargedu système d'exploitation passée dans le choix et lacomparaison des espaces libres.
20/11/2016 Khaled Hassine 70
Le pire ajustement (Worst Fit)
Dite aussi stratégie préventive
Alloue au processus le plus grand bloc de mémoiredisponible.
Cette approche se base sur le fait que laisser plusd'espace permet de placer dans le futur d'autresprocessus, à la différence du meilleur ajustementqui va laisser des petits espaces libres difficiles àexploiter dans le futur.
20/11/2016 Khaled Hassine 71 20/11/2016 Khaled Hassine 72