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

Visual C++ Discussion :

Comportement m�moires des dll link�es ou externes ?


Sujet :

Visual C++

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    27
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 27
    Par d�faut Comportement m�moires des dll link�es ou externes ?
    Bjr,
    Dans le cadre d'un dev VS2008, je souhaite � tout prix r�duire l'empreinte m�moire code et donn�es de mon programme.
    On initialise donc la majorit� des structures du r�f�rentiel de donn�es dans une dll link� lors de la compilation avec passage de pointeurs et force malloc/calloc.

    Mon programme �galement fait appel � une dll externe charg�e via l'instruction LoadLibrary.

    Quel comportement vis � vis de la m�moire de ces deux impl�mentations d'appel � des dll ? Cela d�pend-t-il uniquement du param�tre syst�me "AlwaysUnloadDll" ?

    Merci de votre attention.

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    27
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 27
    Par d�faut
    Auto-R�ponse :

    1) La terminologie semble �tre dll implicite pour celles link�es, explicite pour celles charg�es par "LoadLibrary".
    2) Les implicites sont charg�s et d�charg�s avec le main.
    3) Les explicites sont d�chargeables par l'API "FreeLibrary".

    En conclusion, il semble que seul le mode explicite permet d'atteindre l'objectif d'�conomie de ressources m�moire.

  3. #3
    Expert confirm�
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    F�vrier 2005
    Messages
    5 504
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 53
    Localisation : France, Val de Marne (�le de France)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : F�vrier 2005
    Messages : 5 504
    Par d�faut
    Charger une librairie ne signifie pas charger tout le code de la librairie en m�moire, loin s'en faut.
    Cela ne r�serve qu'une section de l'espace d'adressage et modifie quelques structures internes utilis�es par l'OS. C'est donc n�gligeable � moins d'avoir des centaines de milliers de dll.

    Le probl�me n'est donc pas le chargement de ou des dll.

    Vous ne nous donnez que tr�s peu d'information sur la nature de l'empreinte m�moire.
    Ratio code/donn�, taille du working-set, nature des phases critique (d�marrage � chaud, � froid), localit� du code.

    Pour correctement corrig� un probl�me d'empreinte m�moire, il faut analyser celle-ci.

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. Utiliser des DLL externes dans un projet Qt
    Par Kermichou dans le forum Qt
    R�ponses: 2
    Dernier message: 18/07/2013, 15h28
  2. Unicit� des dlls en m�moire.
    Par bleuerouge dans le forum C#
    R�ponses: 9
    Dernier message: 05/06/2012, 16h48
  3. R�ponses: 3
    Dernier message: 05/03/2010, 09h00
  4. utiliser des DLL externe dans crystal report XI
    Par dimmu dans le forum EDI/Outils
    R�ponses: 0
    Dernier message: 25/01/2009, 14h10
  5. [VS2003] D�bugger des DLLs avec un .exe externe
    Par Vonziz dans le forum Visual Studio
    R�ponses: 4
    Dernier message: 22/08/2008, 16h50

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