Skype et CPU élevé
Depuis quelques temps, j’ai remarqué que mon Skype consommait beaucoup de CPU alors qu’il était simplement démarré et connecté à mon compte.
On peut le voir sur le screenshot de Process Explorer ci-dessous.
Dans l’onglet “Threads”, on voit qu’un seul thread (TID = 8556) consomme la quasi totalité du CPU utilisé par Skype.
Après avoir pris plusieurs dumps avec ProcDump (Skype semble ne pas trop aimer être breaké par WinDbg, il lance un nombre incalculable d’access violation lors de la libération du processus).
continuer la lectureAfficher les chaînes de caractères situées dans un processus ou un dump
Récupérer la liste des chaînes de caractères (string) présentes dans la mémoire utilisée par un exécutable peut être intéressant (Mise en place d’interning par exemple).
Cet article montre plusieurs manières de récupérer ces chaînes de caractères directement dans un processus live ou un dump.
Dans les exemples ci-dessous, l’application console (.NET) récupère un mot situé sur une page web. Le but est de retrouver ce mot en mémoire.
continuer la lectureRendre les adresses mémoire cliquables dans WindDBG
Petite astuce donnée dans l’émission DefragTools rendant l’utilisation de WinDBG un peu plus “clicky clicky” avec la version de SOS pour .NET 4.
Par défaut, lorsqu’on affiche les objets de la stack .NET avec !dso par exemple, les adresses mémoire pointant vers les objets ne sont pas cliquables et il est necessaire de faire un :
0:000> !DumpObj xxxxxxxx
pour accéder au contenu de l’objet :
En tapant la commande :
0:000> .prefer_dml 1
on active les liens pour certaines commandes
continuer la lectureWinDBG : charger les bonnes extensions
Pour débugguer vos applications .NET, Microsoft propose un outil nommé WinDBG disponible dans le “Windows SDK”.
WinDBG étant un debugueur natif, il a besoin d’extensions pour fonctionner avec les applications .NET. Ces extensions sont différentes en fonction de la technologie et de la version de .NET que votre application utilise (Silverlight / WPF / .NET 2.0 / .NET 4, etc.).
SOS
SOS.dll (Son Of Strike) est une DLL fournie lors de l’installation du framework .NET qui se trouve dans le répertoire : C:\Windows\Microsoft.NET\Framework\
continuer la lecture