2013-06-07 1 views
8

Je cherche à utiliser la fonction enregistrement de gdb pour générer une liste des instructions exécutées pour le tutorial exampleexécution Extrait journal du record gdb dans une VirtualBox VM

Je peux utiliser record gdb pour aller de l'avant et à l'arrière avec succès et sauver la journal d'exécution dans un fichier en utilisant "enregistrement enregistrer".

Je pense que ce que je veux faire est « dossier instruction-histoire » qui, à partir docs

Disassembles instructions from the recorded execution log

Mais lorsque je tente ce que je reçois l'erreur:

You can't do that when your target is 'record-full'

Toute tentative de régler le dossier cible à btrace renvoie l'erreur:

Target does not support branch tracing.

Je cours gdb 7.6 dans un VM VirtualBox, ai-je besoin d'être en cours d'exécution nativement ou y at-il une autre magie qui me manque?

+0

Vous devriez également regarder dans Intel SDE: http://stackoverflow.com/a/31814199/895245 –

Répondre

2

Votre problème vient d'un problème sur VirtualBox lui-même pour effectuer cette opération. Comme vous pouvez le voir dans this link, plus précisément dans ce sens:

if (packet->support != PACKET_ENABLE) 
    error (_("Target does not support branch tracing.")); 

Ce problème est expliqué here.

But VirtualBox does NOT 
emulate certain debugging features of modern x86 CPUs like branch target 
store or performance counters. 

Ma meilleure estimation est d'installer d'autres VirtualBox fonctionnalités qui vous permettent d'effectuer de telles opérations, ou basculez vers un nouvel environnement virtuel.

Je vais continuer à chercher des informations.

+1

Excellent peu de recherche Jean, je ne suis plus la recherche de ce problème, mais bon d'obtenir une réponse de toute façon, va marquer comme solution, mais changera le titre pour refléter la nature spécifique de la question de la boîte virtuelle. – bcleary

+0

L'indicateur 'cpuinfo' requis est' intel_pt': http://stackoverflow.com/questions/22507169/how-to-run-record-instruction-history-and-function-call-history-in-gdb/31814199# 31814199 –

Questions connexes