Configurazione di Kernel-Mode debug tramite USB EEM in un dispositivo Arm tramite KDNET
Gli strumenti di debug per Windows supportano il debug del kernel su un cavo USB usando EEM in un dispositivo Arm. Questo argomento descrive come configurare USB EEM in un dispositivo Arm usando l'utilità kdnet.exe.
Il computer che esegue il debugger viene chiamato computer host e il computer in fase di debug viene chiamato computer di destinazione.
Kernel-Mode requisiti del dispositivo USB EEM Arm
I requisiti sono i seguenti:
Nel computer di destinazione un controller USB 3.0 di Synopsys connesso a una porta USB tipo C.
Nel computer host è necessaria una porta USB 2.0 o USB 3.0.
È necessario un cavo USB 3.0 tipo C standard per digitare A per connettere il tipo host A alla porta C del tipo di destinazione.
Windows 10 aggiornamento di ottobre 2020 (20H2) o versioni successive
Verificare che un controller USB supportato sia disponibile nella destinazione
Nel computer di destinazione avviare Gestione dispositivi.
Verificare che sia elencato synopsys USB 3.0 Dual-Role Controller .
Determinare la porta di debug quando sono disponibili più porte
Dopo aver identificato una porta che supporta il debug, il passaggio successivo consiste nel individuare il connettore USB fisico associato a tale porta.
Nella Surface Pro X usare la parte inferiore delle due porte USB C usate per il debug di KDNET EEM.
Usare kdnet.exe per confermare il supporto del dispositivo e visualizzare il valore del busparams
Per specificare la porta di debug che verrà usata, viene usato busparm. In genere viene usato solo il primo busparam ed è 0 o 1 a seconda del dispositivo.
I dispositivi Arm usano la tabella DBG2 ACPI per configurare il debugger, in cui i busparams puntano alla voce della tabella DBG2. In genere, i dispositivi non usano busparams=0, poiché la voce della tabella 0 DBG2 è normalmente riservata per il dispositivo seriale COM.
Usare l'utilità kdnet.exe per visualizzare le informazioni sui parametri per i controller che supportano il debug del trasporto KDNET-EEM-USB.
Verificare che gli strumenti di debug di Windows siano installati nel sistema host. Per informazioni sul download e l'installazione degli strumenti del debugger, vedere Debug degli strumenti per Windows.
Individuare i file di kdnet.exe e VerifiedNICList.xml. Per impostazione predefinita, si trovano qui.
C:\Program Files (x86)\Windows Kits\10\Debuggers\x64
Nel computer host copiare i due file in una condivisione di rete o un'unità personale, in modo che siano disponibili nel computer di destinazione.
Nel computer di destinazione creare una directory C:\KDNET e copiare i file di kdnet.exe e VerifiedNICList.xml in tale directory.
Nel computer di destinazione aprire una finestra del prompt dei comandi come amministratore. Immettere questo comando per verificare che il computer di destinazione abbia una scheda di rete supportata e per visualizzare il valore busparams.
C:\KDNET>kdnet.exe Network debugging is not supported on any of the NICs in this machine. KDNET supports NICs from Intel, Broadcom, Realtek, Atheros, Emulex, Mellanox and Cisco. Network debugging is supported on the following USB controllers: busparams=1, Device-mode USB controller with Vendor ID: 5143 (Default) busparams=2, Device-mode USB controller with Vendor ID: 5143 busparams=3, Device-mode USB controller with Vendor ID: 5143 busparams=4, Device-mode USB controller with Vendor ID: 5143 This Microsoft hypervisor supports using KDNET in guest VMs.
Poiché l'output da kdnet.exe indica che è disponibile un controller USB supportato con un valore busparams pari a 1, è possibile procedere.
Configurazione del computer di destinazione
Usare l'utilità kdnet.exe per configurare le impostazioni del debugger nel PC di destinazione seguendo questa procedura.
Importante
Prima di usare bcdedit per modificare le informazioni di avvio, potrebbe essere necessario sospendere temporaneamente le funzionalità di sicurezza di Windows, ad esempio BitLocker e Avvio sicuro nel PC di test. È possibile riabilitare Bit Locker e Avvio sicuro dopo aver usato BCDEdit per aggiornare le informazioni di avvio. Gestire in modo appropriato il PC di test, quando le funzionalità di sicurezza sono disabilitate.
Usare il comando illustrato di seguito per impostare il valore busparams, l'indirizzo IP e la porta del sistema host e generare una chiave di connessione univoca. L'indirizzo IP 169.254.255.255 viene usato per tutte le connessioni USB EMM.
Selezionare un indirizzo di porta univoco per ogni coppia di destinazione/host con cui si lavora, all'interno dell'intervallo consigliato di 50000-50039. 50005 viene visualizzato nell'esempio.
C:\>kdnet.exe 169.254.255.255 50005
Enabling network debugging on Intel(R) 82577LM Gigabit Network Connection.
Key=2steg4fzbj2sz.23418vzkd4ko3.1g34ou07z4pev.1sp3yo9yz874p
Copiare la chiave restituita in un blocco note .txt file. Nell'esempio illustrato, la chiave generata ha un valore di:
2steg4fzbj2sz.23418vzkd4ko3.1g34ou07z4pev.1sp3yo9yz874p
Usare il comando BCDEdit per verificare che i parametri siano come previsto. Per altre informazioni, vedere BCDEdit /dbgsettings
C:\>bcdedit /dbgsettings
busparams 1
key 2steg4fzbj2sz.23418vzkd4ko3.1g34ou07z4pev.1sp3yo9yz874p
debugtype NET
hostip 169.254.255.255
port 50005
dhcp No
The operation completed successfully.
Disabilitare il firewall nell'host
Nell'host disabilitare il firewall per il debugger.
Connessione di WinDbg alla destinazione per il debug del kernel
Nel computer host aprire WinDbg. Scegliere Debug kernel dal menu File. Nella finestra di dialogo Debug del kernel aprire la scheda Net . Incollare il numero di porta e la chiave salvati nel blocco note .txt file precedente. Selezionare OK.
È anche possibile avviare una sessione WinDbg aprendo una finestra del prompt dei comandi e immettendo il comando seguente, dove è la porta selezionata in precedenza ed è la chiave restituita da kdnet.exe precedente. Incollare nella chiave in cui è stato salvato nel blocco note .txt file in precedenza.
windbg -k -d net:port=<YourDebugPort>,key=<YourKey>
Riavviare il computer di destinazione
Una volta connesso il debugger, riavviare il computer di destinazione. Un modo per riavviare il PC consiste nell'usare il shutdown -r -t 0
comando dal prompt dei comandi di un amministratore.
Dopo il riavvio del PC di destinazione, il debugger deve connettersi automaticamente.
Risoluzione dei problemi di destinazione
Verificare che la scheda di rete WINDOWS KDNET-USB-EMM sia presente in Schede di rete in Windows Gestione dispositivi.
Le proprietà del dispositivo mostrano quando il controller è riservato per l'uso dal debugger del kernel di Windows.
Risoluzione dei problemi dell'host
Verificare che la scheda di rete WINDOWS KDNET-USB-EMM sia presente in Schede di rete in Windows Gestione dispositivi.
Nell'host viene visualizzata la connessione KDNET-EEM usando la porta USB Type A.
Vedi anche
Configurazione automatica del debug del kernel di rete KDNET
Configurazione manuale del debug del kernel di rete KDNET
Configurazione manuale del debug Kernel-Mode tramite un cavo USB 3.0
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per