IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration système Discussion :

L'organisation de la mémoire


Sujet :

Administration système

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2004
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2004
    Messages : 63
    Par défaut L'organisation de la mémoire
    Hello

    Notre prof d'OS nous a expliqué ceci:
    Quand l'user 1 ouvre un programme, il y a ses différentes partie qui sont chargé en mémoire:
    -La partie DATA du programme.
    -La Pile.
    -La partie CODE du programme.

    Si un deuxième user réouvre le même programme : seul la pile et la partie DATA sera à nouveau chargé en mémoire. La partie CODE n'a pas besoin d'être rechargé car le CODE reste le même que pour l'utilisateur 1.

    Dans la table des processus: il y a un pointeur qui indique où l'user1 est arrivé dans le CODE et où l'user2 est arrivé dans le CODE.

    Notre prof nous a aussi expliqué que quand on ouvre un programme, l'entièrté du code du programme n'est pas charger en mémoire : il se charge au fur et a mesure de son éxécution.

    Ma question: Imaginons que le pointeur de la table des processus pour l'user1 se trouve à la fin du CODE et que le pointeur de l'user2 se trouve au début du CODE. Dans ce cas, TOUT le code du programme devrait être chargé en mémoire --> perte de mémoire !

    Dans ce cas, il serait plus intérressant de charger la partie CODE du programme 2 fois en mémoire, non ?

    Thanks...

  2. #2
    Membre éprouvé

    Profil pro
    Inscrit en
    Août 2005
    Messages
    118
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 118
    Par défaut
    Salut,
    Le présupposé du mécanisme que tu décrit est que dans la zone de code d'un processus, il y a une petite partie constament sollicitée alors que le reste ne l'est que rarement (initialisation, options particulieres, fin). Ce n'est pas toujours vrai mais statistiquement vérifiable.

    Il faut bien comprendre qu'au niveau du noyau, les meilleurs algorithmes sont connus depuis longtemps. La plus part des ameliorations sont d'ordre heuristique, basées sur des constatations statistiques et des probabilitées.

    A+
    Joris

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2004
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2004
    Messages : 63
    Par défaut
    Merci de t'a réponse d-jo mais je n'ait pas très bien compris t'a première phrase. Aurait-tu un exemple plus concret ?

    Merci d'avance...

  4. #4
    Membre éprouvé

    Profil pro
    Inscrit en
    Août 2005
    Messages
    118
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 118
    Par défaut
    Lorsque tu lances un navigateur :
    La majorité du temps, tu affiches des pages et suis des liens. Pourtant il existe bien d'autres fonctions :
    + Enregistrer sous
    + imprimer
    + marquer cette page
    + ajouter un extension
    + changer l'encodage ou la taille du texte
    + changer le theme
    + consulter l'aide
    + ...

    Tu peux donc raisonnablement présager que si tu lance deux fois le navigateur, tes deux pointeurs vont se retrouver le plus souvent dans la même zone de code parceque tu vas faire la même chose avec. Même si ce n'est pas obligatoirement vrai (tu peux tres bien passer ton temps à changer l'encodage), c'est statistiquement ce qui se passe.

    J'espere que c'est plus clair
    A+
    Joris

  5. #5
    Membre Expert

    Inscrit en
    Mai 2002
    Messages
    720
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 720
    Par défaut Re: L'organisation de la mémoire
    Bonjour

    Citation Envoyé par vincent0
    Ma question: Imaginons que le pointeur de la table des processus pour l'user1 se trouve à la fin du CODE et que le pointeur de l'user2 se trouve au début du CODE. Dans ce cas, TOUT le code du programme devrait être chargé en mémoire --> perte de mémoire !
    Pas forcément ... Il se peut que le milieu du code ne soit pas chargé

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2004
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2004
    Messages : 63
    Par défaut
    Merci pour vos 2 réponses : maintenant, je comprend mieux

Discussions similaires

  1. [Debutant(e)][eclipse] Comment organiser ses projets ?
    Par Javanaute dans le forum Eclipse Java
    Réponses: 9
    Dernier message: 09/04/2004, 10h07
  2. [C#] Organisation PlaceHolder
    Par Johan31 dans le forum ASP.NET
    Réponses: 6
    Dernier message: 26/01/2004, 14h20
  3. [Packages] Problème d'organisation
    Par lolo... dans le forum JBuilder
    Réponses: 5
    Dernier message: 22/04/2003, 13h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo