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

Système d’exploitation : Assembleur

Présentations similaires


Présentation au sujet: "Système d’exploitation : Assembleur"— Transcription de la présentation:

1 Système d’exploitation : Assembleur
Semaine 03 Gestion de la mémoire

2 Gestion de la mémoire : Espace adressable
bus 20 bits (8088) : 220 emplacements adressables emplacements d’un octet adressables 1 Mo bus 32 bits (80386) : 232 emplacements adressables emplacements d’un octet adressables 4 Go

3 Gestion de la mémoire : Espace adressable
Carte de la mémoire adressable sous 1Mo

4 Gestion de la mémoire (1/7)
Problème du 8088 : La taille des registres est de 16 bits Or l’adressage se fait sur 20 bits… La solution : SEGMENTATION : passage d’une adresse de 16 bits à une adresse de 20 bits

5 Gestion de la mémoire (2/7)
Notion d’adresse effective C’est l’offset (décalage par rapport au début du segment) C’est donc la distance qui sépare l’information à atteindre du début du segment Notion d’adresse logique L’adresse sous le format xxxx:yyyy Où xxxx est le numéro de segment Et yyyy est l’offset dans ce segment Notion d’adresse physique C’est le résultat du calcul RegSeg0000b + offset C’est une adresse sur 20 bits

6 Gestion de la mémoire (3/7)

7 Gestion de la mémoire (4/7) Exemples:
Que signifie : CS:IP avec CS= 0ABC et IP=1234 ? IP=362A CS=6ED1. Adresse physique ? ES=1234 DI=5678. Adresse physique ? SS=4321 BP=BCDE. Adresse physique ? CS=89B2 adresse physique=8AE43 IP=? Adresse physique=A2B4C IP=? CS=? Adresse physique=ABCDE DS=? SI=? 1. CS:IP  0ABC:1234 0ABC0 +1234 0BDF4  adresse physique 2. IP=362A CS=6ED1 adresse physique ? 6ED10h+362Ah = 7233Ah ES=1234 DI=5678 adresse physique ? h+5678h = 179B8h SS=4321 BP=BCDE adresse physique ? 43210h+BCDEh = 4EEEEh 3. CS=89B2 adresse physique=8AE43 IP=? 8AE43-89B20=1323 4. Adresse physique =A2B4C IP=? CS=? Une réponse : CS=A2B4, IP=000C Autre réponse : CS=A2B0 et IP=004C 5. ABCDE DS =? SI =? Une réponse: DS=ABC0,SI=00DE Autre réponse : DS=AB00,SI=0CDE

8 Gestion de la mémoire (5/7) Exemples:
Soit une donnée A se trouvant dans le segment de données (12C4) à l’adresse effective 7AF Où se situe la donnée en mémoire ? Si CS=17A8 DS=4F8C SS=205E ES=3B60, A quelles adresses physiques correspondent ES:3B60 DS:3B60 SS:64F2 CS:0000 A quelle adresse physique se trouve l’instruction dont l’adresse effective est 5AF8? 6. 12C40 adresse physique du segment x 16 +7AF2 adresse effective (16 bits) 1A732 adresse physique (20 bits de la donnée A) ON ECRIRA : Segment:Offset  DS:7AF2 7. ES:3B60  3F160 DS:3B60  53420 SS:64F2  26AD2 CS:0000  17A80 8. CS:IP  17A80+5AF8 = 1D578

9 Gestion de la mémoire (6/7)
FFFFFh 00000h Zone disponible à l’utilisateur Largeur : 1 octet 4 zones de 64 Ko : CS, DS, ES, SS Dans la zone CS:0000 à CS:FFFF se trouve le code source du programme Dans la zone DS:0000 à DS:FFFF se trouvent les données du programme Dans la zone ES:0000 à ES:FFFF se trouvent les données supplémentaires Dans la zone SS:0000 à SS:FFFF se trouve la pile de sauvegarde En mettant bout à bout ces 4 segments, on ne pourrait adresser que 256Ko. Dans ce cours d’introduction, nous ne dépasserons jamais 64Ko de mémoire pour le code, les données, les données supplémentaires et la pile (c.à.d. plus de lignes!!!) Les 4 registres de segment contiendront donc toujours la même adresse Expl de la mémoire ……. 012A F0 012A 012A FF 012A 012A A2 012A Attention : octet de poids le plus fort à la plus forte adresse. Si on va lire à 012A6 : FF03 et pas 03FF

10 Gestion de la mémoire (7/7)
Rangement des données en mémoire Attention : Octet de poids le plus fort à la plus forte adresse. Si on va lire à 012A6 : FF03 et pas 03FF F0 012A9 21 012A8 FF 012A7 03 012A6 A2 012A5 00 012A4 …….


Télécharger ppt "Système d’exploitation : Assembleur"

Présentations similaires


Annonces Google