Ricerca per categorie inviare messaggi di traccia a un debugger del kernel?
È possibile usare diversi metodi per reindirizzare i messaggi di traccia a un debugger in modalità kernel. Di seguito sono illustrati alcuni argomenti.
È possibile reindirizzare i messaggi di traccia a KD o a Windbg, a qualsiasi elemento collegato. Il debugger deve essere collegato tramite una porta COM con un cavo debug (modem Null) o tramite la porta 1394 ("firewire") con un cavo IEEE 1394. Non è possibile reindirizzare i messaggi di traccia ad altri debugger del kernel, ad esempio NTSD.
Per visualizzare i messaggi di traccia in un debugger, wmitrace.dll e traceprt.dll devono trovarsi nel percorso di ricerca del debugger nel computer host. Queste DLL sono incluse in Strumenti di debug per Windows , inoltre, per consentire al debugger di trovare i file di formato dei messaggi di traccia (con estensione tmf) per i messaggi di traccia, i file TMF devono trovarsi nel percorso di ricerca del debugger nel computer host. Per impostare il percorso di ricerca del debugger, usare l'estensione di debugger specializzata !wmitrace.searchpath o impostare il valore della variabile di ambiente %TRACE_FORMAT_SEARCH_PATH%.
Per altre informazioni, cercare !wmitrace in Strumenti di debug per Windows.
Logman
Usare il comando Logman seguente per reindirizzare i messaggi di traccia a un debugger in modalità kernel:
logman start TraceSession -ets -mode KernelFilter -bs 3
Il parametro -ets avvia una sessione di traccia eventi non controllata dal servizio Log prestazioni e Avvisi. Il parametro -mode attiva le opzioni avanzate, inclusa l'opzione KernelFilter .
Il parametro -bs imposta le dimensioni del buffer per la sessione di traccia su 3 KB, ovvero le dimensioni massime del buffer per il debugger. Se si omette questo parametro, la sessione del debugger non funzionerà correttamente.
Logman è incluso in Windows XP e versioni successive di Windows.
Tracelog
Usare il comando Tracelog seguente reindirizza i messaggi di traccia a un debugger in modalità kernel:
tracelog -start MyTrace -guid MyProvider.ctl -rt -kd
Il parametro -guid specifica il provider di traccia. Il parametro -rt specifica una sessione di traccia in tempo reale. Il parametro -kd reindirizza i messaggi di traccia al debugger del kernel e imposta la dimensione massima del buffer su 3 KB, il valore massimo per il debugger.
Per un esempio, vedere Esempio 16: Visualizzazione dei messaggi di traccia in un debugger.
Tracelog si trova nella sottodirectory tools\tracing\<Platform> di WDK, dove <Platform> è i386, amd64 o ia64.
TraceView
TraceView ha un'interfaccia utente grafica.
È possibile reindirizzare i messaggi di traccia a un debugger del kernel durante la creazione di una sessione di traccia. Nella pagina Opzioni sessione log fare clic su Opzioni sessione log avanzate, fare clic sulla scheda Opzioni parametro sessione log e quindi modificare il valore dell'opzione Windbg su TRUE. Non è possibile modificare questa opzione durante l'esecuzione della sessione di traccia.
TraceView si trova nella sottodirectory tools\tracing\<Platform> di WDK, dove <Platform> è i386, amd64 o ia64.