La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

ARCHITECTURE DE L’ORDINATEUR Victor Alibert, ‘ZIo’ (avec l’aide des diapos de « night »)

Présentations similaires


Présentation au sujet: "ARCHITECTURE DE L’ORDINATEUR Victor Alibert, ‘ZIo’ (avec l’aide des diapos de « night »)"— Transcription de la présentation:

1 ARCHITECTURE DE L’ORDINATEUR Victor Alibert, ‘ZIo’ (avec l’aide des diapos de « night »)

2

3 Registres du processeur ultra rapide Cache du processeur très rapide Mémoire vive (RAM : Random Access Memory) rapide Mémoire morte lente mais non volatile ( interne ou externe ) capacité - + ‘’vitesse’’ ns ms coût € €€€€€

4 Ici, quand on va parler de mémoire : Mémoire ≠ Disque dur !

5 Bits ≠ Bytes 1 Byte = 1 Octet = 8 Bits

6 Central Processing Unit : Unité Centrale de Calcul Récupère les instructions et les données dans la mémoire puis exécute les instructions demandées.

7 L’OS (Operating System) est composé : De programmes (ex : explorateur de fichiers ) D’un noyau qui fait l’interface entre tous les programmes et le matériel

8 La plupart des OS actuels sont multi-tâche: Ils effectuent plusieurs processus simultanément…

9 La plupart des OS actuels sont multi-tâche : Ils effectuent plusieurs processus simultanément… …Ou pas : Un CPU, à moins qu’il n’ait plusieurs cœurs, ne peut exécuter qu’une instruction à la fois, et on ne peut lire ou écrire qu’une information à la fois sur le disque dur. Comment l’odieux mensonge passe-t-il inaperçu ?

10 La plupart des OS actuels sont multi-tâches : Ils effectuent plusieurs processus simultanément… …Ou pas : Un CPU, à moins qu’il n’ait plusieurs cœurs, ne peut exécuter qu’une instruction à la fois, et on ne peut lire ou écrire qu’une information à la fois sur le disque dur. Comment l’odieux mensonge passe-t-il inaperçu ?

11 Préemption : Un processus est en cours de traitement. Un autre processus veut prendre la main. Il est prioritaire. Mais le processus précédent n’est pas terminé. Le processeur doit donc l’arrêter. Commutation de contexte : Le processus arrêté est stocké en vue d’un traitement ultérieur. Le nouveau processus est lancé.

12 Comment nous trompe le multi-tâche ? >> Il fait de la commutation de contexte en permanence ! Il traite un petit bout d’un processus, puis d’un autre, puis d’un autre… Puis revient au premier processus, et recommence… Et tous les processus semblent avancer simultanément !

13 Comment nous trompe le multi-tâche ? >> Il fait de la commutation de contexte en permanence ! Il traite un petit bout d’un processus, puis d’un autre, puis d’un autre… Puis revient au premier processus, et recommence… Et tous les processus semblent avancer simultanément !

14 Comment nous trompe le multi-tâche ? >> Il fait de la commutation de contexte en permanence ! Il traite un petit bout d’un processus, puis d’un autre, puis d’un autre… Puis revient au premier processus, et recommence… Et tous les processus semblent avancer simultanément !

15 Comment nous trompe le multi-tâche ? >> Il fait de la commutation de contexte en permanence ! Il traite un petit bout d’un processus, puis d’un autre, puis d’un autre… Puis revient au premier processus, et recommence… Et tous les processus semblent avancer simultanément !

16 Comment nous trompe le multi-tâche ? >> Il fait de la commutation de contexte en permanence ! Il traite un petit bout d’un processus, puis d’un autre, puis d’un autre… Puis revient au premier processus, et recommence… Et tous les processus semblent avancer simultanément !

17 Comment nous trompe le multi-tâche ? >> Il fait de la commutation de contexte en permanence ! Il traite un petit bout d’un processus, puis d’un autre, puis d’un autre… Puis revient au premier processus, et recommence… Et tous les processus semblent avancer simultanément !

18 Comment nous trompe le multi-tâche ? >> Il fait de la commutation de contexte en permanence ! Il traite un petit bout d’un processus, puis d’un autre, puis d’un autre… Puis revient au premier processus, et recommence… Et tous les processus semblent avancer simultanément !

19 CPU = ressource critique Engorgement à l’entrée… Il faut donc choisir quel processus traiter en premier…

20 Quelques exemples courants : FIFO (First In First Out) SPN (Shortest Process Next) Round Robin

21 Quelques exemples courants : FIFO (First In First Out) SPN (Shortest Process Next) Round Robin Un algorithme est bon s’il n’y a pas famine

22 Quelques exemples courants : FIFO (First In First Out) SPN (Shortest Process Next) Round Robin Un algorithme est bon s’il n’y a pas famine, si le temps moyen de traitement d’un processus n’est pas trop long

23 Quelques exemples courants : FIFO (First In First Out) SPN (Shortest Process Next) Round Robin Un algorithme est bon s’il n’y a pas famine, si le temps moyen de traitement d’un processus n’est pas trop long, et si le CPU ne passe pas trop de temps à ne rien faire.

24 Si on vous demande de commenter la performance d’un algorithme : Pas d’algorithme miracle, Il faut faire des compromis entre 3 exigences incompatibles ! Et tout dépend de ce que l’on veut privilégier ! Ce qui semble être une amélioration dans un cas peut être un défaut dans un autre cas.

25 Tout est dans le titre. Si on vous demande de commenter l’algorithme FIFO, gardez en tête qu’il est très simple, et très bête, donc pas optimisé du tout !

26 Processus (dans l’ordre d’arrivée)12345 Temps de calcul demandé (ms)1648122 Traitement dans l’ordre d’arrivée Pas de préemption

27 Processus (dans l’ordre d’arrivée)12345 Temps de calcul demandé (ms)1648122 1 t (ms) 0 16

28 Processus (dans l’ordre d’arrivée)12345 Temps de calcul demandé (ms)1648122 12 2016 t (ms) 0

29 Processus (dans l’ordre d’arrivée)12345 Temps de calcul demandé (ms)1648122 132 282016 t (ms) 0

30 Processus (dans l’ordre d’arrivée)12345 Temps de calcul demandé (ms)1648122 1432 40282016 t (ms) 0

31 Processus (dans l’ordre d’arrivée)12345 Temps de calcul demandé (ms)1648122 14325 4028201642 t (ms) 0

32 Processus (dans l’ordre d’arrivée)12345 Temps de calcul demandé (ms)1648122 14325 4028201642 Temps moyen de traitement : (16 + 20 + 28 + 40 +42) / 5 = 29,2 ms Pas de famine, mais pas optimisé du tout ! t (ms) 0

33 Processus (dans l’ordre d’arrivée)12345 Temps de calcul demandé (ms)1648122 Pas de préemption Le processus le plus court passe en premier

34 Processus (dans l’ordre d’arrivée)12345 Temps de calcul demandé (ms)1648122 5 2 t (ms) 0

35 Processus (dans l’ordre d’arrivée)12345 Temps de calcul demandé (ms)1648122 25 6 2 t (ms) 0

36 Processus (dans l’ordre d’arrivée)12345 Temps de calcul demandé (ms)1648122 325 186 2 t (ms) 0

37 Processus (dans l’ordre d’arrivée)12345 Temps de calcul demandé (ms)1648122 4325 26 186 2 t (ms) 0

38 Processus (dans l’ordre d’arrivée)12345 Temps de calcul demandé (ms)1648122 1 4325 26 186 242 t (ms) 0

39 Processus (dans l’ordre d’arrivée)12345 Temps de calcul demandé (ms)1648122 1 4325 26 186 242 Temps moyen de traitement : (2 + 6 + 18 + 26 +42) / 5 = 18 ms Temps optimisé, mais risque de famine… t (ms) 0

40 Processus (dans l’ordre d’arrivée)12345 Temps de calcul demandé (ms)1648122 Un certain quantum de temps est alloué aux processus pour s’effectuer S’il ne s’est pas terminé avant la fin du temps imparti : changement de contexte L’algorithme est préemptif

41 12 Processus (dans l’ordre d’arrivée)12345 Temps de calcul demandé (ms)1648122 4 t (ms) 0 Quantum : 4ms Temps restant

42 12 Processus (dans l’ordre d’arrivée)12345 Temps de calcul demandé (ms)1648122 4 t (ms) 0 Quantum : 4ms 0 Temps restant 8

43 12 Processus (dans l’ordre d’arrivée)12345 Temps de calcul demandé (ms)1648122 4 t (ms) 0 Quantum : 4ms 04 Temps restant 12 8

44 Processus (dans l’ordre d’arrivée)12345 Temps de calcul demandé (ms)1648122 4 t (ms) 0 Quantum : 4ms 084 Temps restant 12 8 16

45 12 Processus (dans l’ordre d’arrivée)12345 Temps de calcul demandé (ms)1648122 4 t (ms) 0 Quantum : 4ms 0804 Temps restant 12 8 20 16

46 12 Processus (dans l’ordre d’arrivée)12345 Temps de calcul demandé (ms)1648122 4 t (ms) 0 Quantum : 4ms 08804 Temps restant 12 8 20 16 24

47 12 Processus (dans l’ordre d’arrivée)12345 Temps de calcul demandé (ms)1648122 4 t (ms) 0 Quantum : 4ms 088004 Temps restant 12 8 20 1628 24

48 12 Processus (dans l’ordre d’arrivée)12345 Temps de calcul demandé (ms)1648122 4 t (ms) 0 Quantum : 4ms 0880044 Temps restant 12 8 20 1628 24 32

49 12 Processus (dans l’ordre d’arrivée)12345 Temps de calcul demandé (ms)1648122 4 t (ms) 0 Quantum : 4ms 08800444 Temps restant 12 8 20 1628 2436 32

50 12 Processus (dans l’ordre d’arrivée)12345 Temps de calcul demandé (ms)1648122 4 t (ms) 0 Quantum : 4ms 088000444 Temps restant 12 8 20 1628 2436 32 40

51 12 Processus (dans l’ordre d’arrivée)12345 Temps de calcul demandé (ms)1648122 4 t (ms) 0 Quantum : 4ms 0880000444 Temps restant 12 8 20 1628 2436 32 44 40

52 12 Processus (dans l’ordre d’arrivée)12345 Temps de calcul demandé (ms)1648122 4 Temps moyen de traitement : (8 + 18 + 28 + 40 + 44) / 5 = 27,6 ms Evite la famine, mais les changements de contextes induisent un temps supplémentaire, et les quanta peuvent être inadéquats t (ms) 0 Quantum : 4ms 0880000444 Temps restant 12 8 20 1628 2436 32 44 40

53 On a besoin de stocker des choses sur son PC et la mémoire qui répond à la ns : c’est CHER !!! Donc on stocke sur le disque dur (« Hard drive »)

54 Fred : « Mais Jamy, comment sont stockées les données dans le Disque Dur ? »

55 Le disque tourne à des vitesses de l’ordre de 100 tours par seconde La tête de lecture se déplace pour sélectionner la piste C’est ce dernier mouvement qui est lent

56 2 Problèmes : Plusieurs processus veulent accéder au disque « simultanément » (engorgement du disque dû à sa lenteur) >> Comment traiter l’ordre de priorité ?

57 FIFO ou FCFS (First In First Out ou First Come First Served) SS(T)F (Shortest Seek (Time) First) SCAN et LOOK (ascenseur)

58 On considère un disque de 10 pistes, le bras de lecture est initialement sur la piste 5 et on peut négliger le temps entre les différentes demandes d’accès. Ordre d’arrivée12345 Piste demandée102619

59 Ordre d’arrivée12345 Piste demandée102619 Demande traitée1 Piste d’arrivée10 Déplacement de la tête5

60 Ordre d’arrivée12345 Piste demandée102619 Demande traitée12 Piste d’arrivée102 Déplacement de la tête58

61 Ordre d’arrivée12345 Piste demandée102619 Demande traitée123 Piste d’arrivée1026 Déplacement de la tête584

62 Ordre d’arrivée12345 Piste demandée102619 Demande traitée1234 Piste d’arrivée10261 Déplacement de la tête5845

63 Ordre d’arrivée12345 Piste demandée102619 Demande traitée12345 Piste d’arrivée102619 Déplacement de la tête58458

64 Ordre d’arrivée12345 Piste demandée102619 Demande traitée12345 Piste d’arrivée102619 Déplacement de la tête58458 Nombre total de déplacements : 30, c’est servi !

65 On va à chaque fois chercher la piste demandée la plus proche de la position actuelle de la tête de lecture Nécessite moins de déplacements Mais possibilité de « famine » Ressemble au SPN pour la mémoire virtuelle…

66 Ordre d’arrivée12345 Piste demandée102619

67 Ordre d’arrivée12345 Piste demandée102619 Demande traitée3 Piste d’arrivée6 Déplacement de la tête1

68 Ordre d’arrivée12345 Piste demandée102619 Demande traitée35 Piste d’arrivée69 Déplacement de la tête13

69 Ordre d’arrivée12345 Piste demandée102619 Demande traitée351 Piste d’arrivée6910 Déplacement de la tête131

70 Ordre d’arrivée12345 Piste demandée102619 Demande traitée3512 Piste d’arrivée69102 Déplacement de la tête1318

71 Ordre d’arrivée12345 Piste demandée102619 Demande traitée35124 Piste d’arrivée691021 Déplacement de la tête13181

72 Ordre d’arrivée12345 Piste demandée102619 Demande traitée35124 Piste d’arrivée691021 Déplacement de la tête13181 Nombre total de déplacements : 14, c’est bien mieux !

73 Principe de l’ascenseur La tête de lecture fait des allers-retours entre les pistes extrêmes. Les accès au disque sont faits lorsque la tête se trouve au- dessus de la piste demandée. LOOK : SCAN amélioré, la tête fait demi-tour lorsqu’il n’y a plus d’accès disque à effectuer dans la direction où elle va.

74 On considère un disque de 10 pistes, le bras de lecture est initialement sur la piste 5 et on peut négliger le temps entre les différentes demandes d’accès. Ordre d’arrivée12345 Piste demandée102619

75 Ordre d’arrivée12345 Piste demandée102619 Demande traitée2 Piste d’arrivée2 Déplacement de la tête3

76 Ordre d’arrivée12345 Piste demandée102619 Demande traitée24 Piste d’arrivée21 Déplacement de la tête31

77 Ordre d’arrivée12345 Piste demandée102619 Demande traitée243 Piste d’arrivée216 Déplacement de la tête315

78 Ordre d’arrivée12345 Piste demandée102619 Demande traitée2435 Piste d’arrivée2169 Déplacement de la tête3153

79 Ordre d’arrivée12345 Piste demandée102619 Demande traitée24351 Piste d’arrivée216910 Déplacement de la tête31531

80 Ordre d’arrivée12345 Piste demandée102619 Demande traitée24351 Piste d’arrivée216910 Déplacement de la tête31531 Nombre total de déplacements : 13, C’est bien aussi !

81 2 façons de créer un programme : -Programme interprété : code source ->code objet-> resultat Exemple : Java, PHP, Basic,… -Programme compilé : code source->compilateur->code objet->éditeur de liens->executable (xxx.exe)->computer->resultat Exemple : C,C++,…

82 Code source : Ce que l’on écrit avec le logiciel pour programmer ainsi que les modules que l’on a prélablement écrit et que notre programme utilise (Code::Blocks, …). Code objet : La même chose mais dans un langage que l’ordinateur comprend. Code executable (xxx.exe) : Les différents blocs de notre programme contient (eh oui : un programme s’écrit par bloc) sont lié pour ne former plus qu’UN !

83 COOL : Notre programme est fait ! Je n’ai plus qu’à le mettre dans la RAM et c’est PARTI !!!! FACILE !!!!

84 Il n’y a pas assez de place dans la RAM  On a besoin du lourd : le disque dur (eh oui : il fallait bien qu’il revienne lui car je frôlais le hors sujet…) En fait : le programme est sur les deux en même temps et ces deux mémoires (RAM et disque dur) forment le concept de la mémoire virtuelle Oui je sais : ça fait flipper….

85 On fait croire à l’ordinateur qu’une partie de son disque dur est de la mémoire. Le programme est vu comme un ensemble de pages qui sont regroupées dans cette mémoire virtuelle et il existe une fonction, dite « paging function » qui demande : « toi, page n, t’es où ??? »

86 123456789101112 1594 Les données sont regroupées par pages La page (le processus) a besoin doit se trouver dans la RAM Si elle n’y est pas, il y a défaut de page, il faut charger la page dans la RAM Un défaut de page représente un temps d’inactivité pour le processus, le temps d’accéder au disque Processus : il me faut la page 3 RAM : ah… attends je l’ai pas je vais la chercher Processus : j’attends…….

87

88 2 cas : -Soit il y a de la place dans la mémoire centrale : Dans ce cas on utilise la fonction « page allocation » -Soit on a plus de place : On doit dans ce cas sacrifier une page (appelée victime) pour la remplacer par la novelle à l’aide de la fonction « page replacement »

89 FIFO (First In, First Out) : On remplace la page qui a été chargée il y a le plus longtemps LRU (Least Recently Used) : On remplace la page qui a été utilisée il y a le plus longtemps LFU (Least Frequently Used) : On remplace la page la moins souvent utilisée

90 Trois cases dans la mémoire centrale On demande les pages 1, 2, 5, 3, 1, 2, 4, 1, 2, 5, 3, 4

91 1, 2, 5, 3, 1, 2, 4, 1, 2, 5, 3, 4 page demandéeÉtat de la mémoiredéfaut de page 11X 1

92 1, 2, 5, 3, 1, 2, 4, 1, 2, 5, 3, 4 page demandéeÉtat de la mémoiredéfaut de page 11X 21 2X 1

93 1, 2, 5, 3, 1, 2, 4, 1, 2, 5, 3, 4 page demandéeÉtat de la mémoiredéfaut de page 11X 21 2X 51 2 5X 1 1 2 1 2 5

94 1, 2, 5, 3, 1, 2, 4, 1, 2, 5, 3, 4 page demandéeÉtat de la mémoiredéfaut de page 11X 21 2X 51 2 5X 33 2 5X 1 2 5 2 5 3 1 2 1

95 1, 2, 5, 3, 1, 2, 4, 1, 2, 5, 3, 4 page demandéeÉtat de la mémoiredéfaut de page 11X 21 2X 51 2 5X 33 2 5X 13 1 5X 1 2 1 5 3 1 1 2 5 2 5 3

96 1, 2, 5, 3, 1, 2, 4, 1, 2, 5, 3, 4 page demandéeÉtat de la mémoiredéfaut de page 11X 21 2X 51 2 5X 33 2 5X 13 1 5X 23 1 2X 1 2 1 3 1 2 5 3 1 1 2 5 2 5 3

97 1, 2, 5, 3, 1, 2, 4, 1, 2, 5, 3, 4 page demandéeÉtat de la mémoiredéfaut de page 11X 21 2X 51 2 5X 33 2 5X 13 1 5X 23 1 2X 44 1 2X 1 2 1 1 2 4 3 1 2 5 3 1 1 2 5 2 5 3

98 1, 2, 5, 3, 1, 2, 4, 1, 2, 5, 3, 4 page demandéeÉtat de la mémoiredéfaut de page 11X 21 2X 51 2 5X 33 2 5X 13 1 5X 23 1 2X 44 1 2X 1 1 2 1 1 2 4 3 1 2 5 3 1 1 2 5 2 5 3

99 1, 2, 5, 3, 1, 2, 4, 1, 2, 5, 3, 4 page demandéeÉtat de la mémoiredéfaut de page 11X 21 2X 51 2 5X 33 2 5X 13 1 5X 23 1 2X 44 1 2X 1 2 1 2 1 1 2 4 3 1 2 5 3 1 1 2 5 2 5 3

100 1, 2, 5, 3, 1, 2, 4, 1, 2, 5, 3, 4 page demandéeÉtat de la mémoiredéfaut de page 11X 21 2X 51 2 5X 33 2 5X 13 1 5X 23 1 2X 44 1 2X 1 2 54 5 2X 1 2 1 1 2 4 2 4 5 3 1 2 5 3 1 1 2 5 2 5 3

101 1, 2, 5, 3, 1, 2, 4, 1, 2, 5, 3, 4 page demandéeÉtat de la mémoiredéfaut de page 11X 21 2X 51 2 5X 33 2 5X 13 1 5X 23 1 2X 44 1 2X 1 2 54 5 2X 34 5 3X 1 2 1 1 2 4 2 4 5 4 5 3 3 1 2 5 3 1 1 2 5 2 5 3

102 1, 2, 5, 3, 1, 2, 4, 1, 2, 5, 3, 4 page demandéeÉtat de la mémoiredéfaut de page 11X 21 2X 51 2 5X 33 2 5X 13 1 5X 23 1 2X 44 1 2X 1 2 54 5 2X 34 5 3X 4 1 2 1 1 2 4 2 4 5 4 5 3 3 1 2 5 3 1 1 2 5 2 5 3

103 1, 2, 5, 3, 1, 2, 4, 1, 2, 5, 3, 4 page demandéeÉtat de la mémoiredéfaut de page 11X 21 2X 51 2 5X 33 2 5X 13 1 5X 23 1 2X 44 1 2X 1 2 54 5 2X 34 5 3X 4 9 défauts de pages

104 1, 2, 5, 3, 1, 2, 4, 1, 2, 5, 3, 4 page demandéeÉtat de la mémoiredéfaut de page 11X 1

105 1, 2, 5, 3, 1, 2, 4, 1, 2, 5, 3, 4 page demandéeÉtat de la mémoiredéfaut de page 11X 21 2X 1

106 1, 2, 5, 3, 1, 2, 4, 1, 2, 5, 3, 4 page demandéeÉtat de la mémoiredéfaut de page 11X 21 2X 51 2 5X 1 1 2 1 2 5

107 1, 2, 5, 3, 1, 2, 4, 1, 2, 5, 3, 4 page demandéeÉtat de la mémoiredéfaut de page 11X 21 2X 51 2 5X 33 2 5X 1 1 2 1 2 5 2 5 3

108 1, 2, 5, 3, 1, 2, 4, 1, 2, 5, 3, 4 page demandéeÉtat de la mémoiredéfaut de page 11X 21 2X 51 2 5X 33 2 5X 13 1 5X 1 1 2 1 2 5 2 5 3 5 3 1

109 1, 2, 5, 3, 1, 2, 4, 1, 2, 5, 3, 4 page demandéeÉtat de la mémoiredéfaut de page 11X 21 2X 51 2 5X 33 2 5X 13 1 5X 23 1 2X 1 1 2 1 2 5 2 5 3 5 3 1 3 1 2

110 1, 2, 5, 3, 1, 2, 4, 1, 2, 5, 3, 4 page demandéeÉtat de la mémoiredéfaut de page 11X 21 2X 51 2 5X 33 2 5X 13 1 5X 23 1 2X 44 1 2X 1 1 2 1 2 5 2 5 3 5 3 1 3 1 2 1 2 4

111 1, 2, 5, 3, 1, 2, 4, 1, 2, 5, 3, 4 page demanedéÉtat de la mémoiredéfaut de page 11X 21 2X 51 2 5X 33 2 5X 13 1 5X 23 1 2X 44 1 2X 1 1 1 2 1 2 5 2 5 3 5 3 1 3 1 2 1 2 4 2 4 1

112 1, 2, 5, 3, 1, 2, 4, 1, 2, 5, 3, 4 page demandéeÉtat de la mémoiredéfaut de page 11X 21 2X 51 2 5X 33 2 5X 13 1 5X 23 1 2X 44 1 2X 1 2 1 1 2 1 2 5 2 5 3 5 3 1 3 1 2 1 2 4 2 4 1 4 1 2

113 1, 2, 5, 3, 1, 2, 4, 1, 2, 5, 3, 4 page demandéeÉtat de la mémoiredéfaut de page 11X 21 2X 51 2 5X 33 2 5X 13 1 5X 23 1 2X 44 1 2X 1 2 55 1 2X 1 1 2 1 2 5 2 5 3 5 3 1 3 1 2 1 2 4 2 4 1 4 1 2 1 2 5

114 1, 2, 5, 3, 1, 2, 4, 1, 2, 5, 3, 4 page demandéeÉtat de la mémoiredéfaut de page 11X 21 2X 51 2 5X 33 2 5X 13 1 5X 23 1 2X 44 1 2X 1 2 55 1 2X 35 3 2X 1 1 2 1 2 5 2 5 3 5 3 1 3 1 2 1 2 4 2 4 1 4 1 2 1 2 5 2 5 3

115 1, 2, 5, 3, 1, 2, 4, 1, 2, 5, 3, 4 page demandéeÉtat de la mémoiredéfaut de page 11X 21 2X 51 2 5X 33 2 5X 13 1 5X 23 1 2X 44 1 2X 1 2 55 1 2X 35 3 2X 45 3 4X 1 1 2 1 2 5 2 5 3 5 3 1 3 1 2 1 2 4 2 4 1 4 1 2 1 2 5 2 5 3 5 3 4

116 page demandéeÉtat de la mémoiredéfaut de page 11X 21 2X 51 2 5X 33 2 5X 13 1 5X 23 1 2X 44 1 2X 1 2 55 1 2X 35 3 2X 45 3 4X 10 défauts de pages 1, 2, 5, 3, 1, 2, 4, 1, 2, 5, 3, 4

117 2 cas : -Soit il y a de la place dans la mémoire centrale : Dans ce cas on utilise la fonction « page allocation » -Soit on a plus de place : On doit dans ce cas sacrifier une page (appelée victime) pour la remplacer par la novelle à l’aide de la fonction « page replacement »

118 Au fur et à mesure des allocations et désallocations de mémoire, celle-ci devient fragmentée : 10 Ko 4 Ko 20 Ko18 Ko7 Ko Comment choisir les emplacements où l’on va allouer la mémoire ?

119 First Fit Next Fit Best Fit Worst Fit

120 La mémoire est allouée dans la première zone libre disponible 10 Ko 4 Ko 20 Ko18 Ko7 Ko Ex : On doit allouer 12 Ko, 10 Ko et 9 Ko

121 La mémoire est allouée dans la première zone libre disponible 10 Ko 4 Ko 8 Ko18 Ko7 Ko Ex : On doit allouer 12 Ko, 10 Ko et 9 Ko 12 Ko

122 La mémoire est allouée dans la première zone libre disponible 10 Ko 4 Ko 8 Ko18 Ko7 Ko Ex : On doit allouer 12 Ko, 10 Ko et 9 Ko 12 Ko

123 La mémoire est allouée dans la première zone libre disponible 10 Ko 4 Ko 8 Ko9 Ko7 Ko Ex : On doit allouer 12 Ko, 10 Ko et 9 Ko 12 Ko9 Ko First Fit n’est pas optimisé !

124 Petite variante du First Fit, on choisi la première case à partir de la dernière allouée 10 Ko 4 Ko 18 Ko7 Ko Ex : On doit allouer 12 Ko, 10 Ko et 9 Ko 20 Ko

125 Petite variante du First Fit, on choisi la première case à partir de la dernière allouée 10 Ko 4 Ko 18 Ko7 Ko Ex : On doit allouer 12 Ko, 10 Ko et 9 Ko 8 Ko12 Ko

126 Petite variante du First Fit, on choisi la première case à partir de la dernière allouée 10 Ko 4 Ko 8 Ko7 Ko Ex : On doit allouer 12 Ko, 10 Ko et 9 Ko 8 Ko12 Ko10 Ko

127 Petite variante du First Fit, on choisi la première case à partir de la dernière allouée 9 Ko 4 Ko 8 Ko7 Ko Ex : On doit allouer 12 Ko, 10 Ko et 9 Ko 8 Ko12 Ko10 Ko 1 Ko1 Ko Pas plus optimisé que First Fit…

128 On choisit l’emplacement qui minimise l’espace résiduel 10 Ko 4 Ko 7 Ko Ex : On doit allouer 12 Ko, 10 Ko et 9 Ko 20 Ko18 Ko

129 On choisit l’emplacement qui minimise l’espace résiduel 10 Ko 4 Ko 12 Ko7 Ko Ex : On doit allouer 12 Ko, 10 Ko et 9 Ko 20 Ko 6 Ko

130 On choisit l’emplacement qui minimise l’espace résiduel 10 Ko 4 Ko 12 Ko7 Ko Ex : On doit allouer 12 Ko, 10 Ko et 9 Ko 20 Ko 6 Ko

131 On choisit l’emplacement qui minimise l’espace résiduel 10 Ko 4 Ko 12 Ko7 Ko Ex : On doit allouer 12 Ko, 10 Ko et 9 Ko 9 Ko 6 Ko 11 Ko

132 On choisit l’emplacement qui maximise l’espace résiduel 10 Ko 4 Ko 7 Ko Ex : On doit allouer 12 Ko, 10 Ko et 9 Ko 20 Ko18 Ko

133 On choisit l’emplacement qui maximise l’espace résiduel Ex : On doit allouer 12 Ko, 10 Ko et 9 Ko 10 Ko 4 Ko 7 Ko18 Ko8 Ko12 Ko

134 On choisit l’emplacement qui maximise l’espace résiduel Ex : On doit allouer 12 Ko, 10 Ko et 9 Ko 10 Ko 4 Ko 7 Ko8 Ko12 Ko 6 Ko

135 On choisit l’emplacement qui maximise l’espace résiduel Ex : On doit allouer 12 Ko, 10 Ko et 9 Ko 4 Ko 7 Ko8 Ko12 Ko 6 Ko 9 Ko 1 Ko1 Ko


Télécharger ppt "ARCHITECTURE DE L’ORDINATEUR Victor Alibert, ‘ZIo’ (avec l’aide des diapos de « night »)"

Présentations similaires


Annonces Google