Petites questions
3 participants
Page 1 sur 1
Petites questions
Hop Hop, un petit topic pour les questions diverses en OS
Et j'inaugure avec :
Dans le chapitre 2, portant sur la mémoire > Dans la partie pagination :
Je ne parviens pas a comprendre une chose ... La mémoire logique elle se trouve ou ? Dans la RAM, sur le disque dur ? Parce que je vois bien le concept de translation entre adresse logique et physique, mais je comprends pas ou se trouve la mémoire logique ...
Quelqu'un pourrait il m'éclairer ?
Un grand merci d'avance !
Et j'inaugure avec :
Dans le chapitre 2, portant sur la mémoire > Dans la partie pagination :
Je ne parviens pas a comprendre une chose ... La mémoire logique elle se trouve ou ? Dans la RAM, sur le disque dur ? Parce que je vois bien le concept de translation entre adresse logique et physique, mais je comprends pas ou se trouve la mémoire logique ...
Quelqu'un pourrait il m'éclairer ?
Un grand merci d'avance !
SphaX- Messages : 149
Date d'inscription : 17/09/2008
Age : 36
Re: Petites questions
Désolé pour le temps de réponse,
Alors en fait il n'y a pas vraiment de mémoire logique.
Il faut savoir que le programme en cours d'exécution ne connait JAMAIS l'adresse physique de la RAM.
Lorsque ton programme se lance, l'OS lui attribue une telle place en RAM (de la case 294 à la case 1324).
Mais pour le programme, la case (physique) 294 (qui en ram a l'adresse(physique) 294) aura l'adresse (logique) 0.
L'adresse logique c'est celle que ton programme utilise, c'est par exemple l'adresse contenue dans un pointeur.
Le pointeur ne contient pas l'adresse physique (réelle) de la ram, mais bien l'adresse logique.
Et c'est lors des opérations sur ladite mémoire que le MMU (si mes souvenirs sont bons) va s'occuper de la translation.
C'est ce qui permet d'abord la sûreté du système.
Ensuite, si tu exécutes ton programme 3 fois de suite, l'allocation de la mémoire se situera à des endroits différents.
Cela permet d'être portable, et également de ne pas se soucier de la quantité de mémoire, et toutes ces choses.
J'espère avoir été clair et correct, sinon faites-le savoir haut et fort.
Courage à tous et bon réveillon
Alors en fait il n'y a pas vraiment de mémoire logique.
Il faut savoir que le programme en cours d'exécution ne connait JAMAIS l'adresse physique de la RAM.
Lorsque ton programme se lance, l'OS lui attribue une telle place en RAM (de la case 294 à la case 1324).
Mais pour le programme, la case (physique) 294 (qui en ram a l'adresse(physique) 294) aura l'adresse (logique) 0.
L'adresse logique c'est celle que ton programme utilise, c'est par exemple l'adresse contenue dans un pointeur.
Le pointeur ne contient pas l'adresse physique (réelle) de la ram, mais bien l'adresse logique.
Et c'est lors des opérations sur ladite mémoire que le MMU (si mes souvenirs sont bons) va s'occuper de la translation.
C'est ce qui permet d'abord la sûreté du système.
Ensuite, si tu exécutes ton programme 3 fois de suite, l'allocation de la mémoire se situera à des endroits différents.
Cela permet d'être portable, et également de ne pas se soucier de la quantité de mémoire, et toutes ces choses.
J'espère avoir été clair et correct, sinon faites-le savoir haut et fort.
Courage à tous et bon réveillon
rich- Messages : 162
Date d'inscription : 23/09/2008
Age : 36
Localisation : Liège
Re: Petites questions
si les pointeurs contenaient l'adresse logique on aurait des valeurs telles que 1-2-3, voire 10 ou 100 mais pas des machins dans le genre 765457877876 donc je pense que c'est bien l'adresse physique, c'est également la raison pour laquelle on a des erreurs dans le style "l'écriture dans l'emplacement X0876543 n'est pas permise (petit con), l'adresse logique est utilisée parce que lorsqu'on lance le processus, quand on declare int i et que par la suite on appelle i, bah note i en question pour le proco c'est juse la variable numero 1 par exemple, pour les pauvres zumains que nous sommes, si on devait designer nos variables par leurs numero on serait dans la merde :p donc bah le processeur il voit (en assembleur) INC 1, et doit donc faire la translation d'adresse. Donc en gros sphax l'adresse logique se trouve bien en memoire comme tt le reste de nos humbles instructions, ma faut jouste ce dire que nos label sont remplacés en mémoire par l'adresse logique, Verstanden ?
Re: Petites questions
Je pense avoir compris ^^
Merci pour vos explications les amis ! Et bonne continuation !
Merci pour vos explications les amis ! Et bonne continuation !
SphaX- Messages : 149
Date d'inscription : 17/09/2008
Age : 36
Re: Petites questions
et un petit complément d'information avec de jolis dessins :CLIQUE J'AI DIT!
rich- Messages : 162
Date d'inscription : 23/09/2008
Age : 36
Localisation : Liège
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
|
|