pedefe
Messages postés2Date d'inscriptionmercredi 10 septembre 2003StatutMembreDernière intervention31 mars 2008
-
15 févr. 2008 à 23:03
Lutinore
Messages postés3246Date d'inscriptionlundi 25 avril 2005StatutMembreDernière intervention27 octobre 2012
-
26 févr. 2008 à 18:59
Bonjour à Tous,
Comment pré-charger les modules (system, net, etc) en mémoire au préalable pour avoir une efficacité maximum dés le lancement de l'application.
J'ai eu l'information il y a très longtemps lors d'un cours, mais comme je ne me sers du C# qu'aujourd'hui, je n'arrive pas à retrouver l'astuce. Il s'agissait d'une commande en ligne qui permettait de lister les module du framework en mémoire ou d'en charger au préalable.
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 16 févr. 2008 à 10:12
Sérieusement, faire un truc en .net ou tout autre interprété et attendre une "efficacité maximum", c'est une illusion qu'il convient d'évacuer. Il n'y en aura pas plus au lancement qu'à l'exécution.
cs_rt15
Messages postés3874Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention 7 novembre 201413 16 févr. 2008 à 16:07
Salut,
Oublie ces gros trolls et regarde ici. Ils proposent l'inverse : ne pas charger certains modules au démarrage pour aller plus vite.
On t'a peut être parler de vadump.
Lutinore
Messages postés3246Date d'inscriptionlundi 25 avril 2005StatutMembreDernière intervention27 octobre 201241 17 févr. 2008 à 02:48
Tu deviens prévisible BruNews..
Bien sûr ça restera une application managée qui tourne sous l'exécution du CLR, dans ce sens là c'est pas l'équivalent d'un exécutable C/C++ mais avec ngen.exe l'application sera déja compilée en code machine ce qui est un gain important par rapport au JIT.
cs_coq
Messages postés6349Date d'inscriptionsamedi 1 juin 2002StatutMembreDernière intervention 2 août 2014101 17 févr. 2008 à 11:08
Pas d'édition 64 sous la main mais je suppose que ce sera NativeImages_v2.0.50727_64 au lieu de NativeImages_v2.0.50727_32.
Si le framework .NET est installé, naturellement.
cs_coq
Messages postés6349Date d'inscriptionsamedi 1 juin 2002StatutMembreDernière intervention 2 août 2014101 17 févr. 2008 à 11:25
Ne regarde pas par l'explorer, il y a une extension du shell qui personnalise un poil l'affichage.
D'où la cmd, ou au pire passe par Winrar, il te laissera voir les chose sous leur forme réelle.
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 18 févr. 2008 à 02:37
Merci pour l'envoi.
Sur sytem 64 comme sur 32, on obtient l'injurebox comme quoi ce n'est pas une appli Win32 valide, mystique ça. Si compilé natif, on devrait avoir point d'entrée non trouvé dans dll xxx ou message de ce genre mais image binaire valide.
On voit d'autres trucs marrants dedans:
....
mov esi, eax
mov edi, esi
mov eax, esi
pop edi
pop esi
ret 0
Tout ceci ne fait absolument rien, les 3 MOV avant les POPs ne servent strictement à que dalle. Les POPs avant le RET indique bien une sortie de fonction correcte mais cet entassement d'instructions inutiles reste un mystère.
Je peux continuer à coder tranquille, c'est pas demain qu'on produira un logiciel avec pareille bouillie.
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 23 févr. 2008 à 00:24
Ce n'est carrément pas exécutable du tout, c'est une injurebox "IMAGE BINAIRE INVALIDE" qu'on obtient au lieu que le loader system afficherait la 1ere dépendance non trouvée.
C'est la CLR qui en fera du code exécutable après COMPLETE INTERPRETATION, rien à voir avec du compilé natif comme dit qlqs post plus tôt.