USB KDNET EEM Kernel-Mode Hata Ayıklama Ayarlarını Yapma (KDNET-EEM-USB)

Windows için Hata Ayıklama Araçları, Ethernet Öykünme Modu (EEM) kullanarak USB kablosu üzerinden çekirdek hata ayıklamasını destekler. Bu konuda, kdnet.exe yardımcı programını kullanarak USB EEM'nin nasıl ayarlanacağı açıklanmaktadır.

Hata ayıklayıcısını çalıştıran bilgisayaraana bilgisayar adı verilir ve hata ayıklanan bilgisayarahedef bilgisayar adı verilir.

Kernel-Mode USB EEM cihaz gereksinimleri

Aşağıdakiler gereklidir:

  • Hedef bilgisayarda, bir USB türü C bağlantı noktasına bağlı bir Synopsys USB 3.0 denetleyicisi.

  • Ana bilgisayarda dışarıdan erişilebilen bir USB 3.0 bağlantı noktası gerekir.

  • Windows 10 Ekim 2020 Güncelleştirmesi (20H2) veya üzeri

KDNET-EEM-USB aktarımı aşağıdakiler için yapılandırılabilir:

  • PCI hata ayıklama cihazı. Bu hata ayıklama cihazları dbgsettings::busparams=seg.bus.dev.fun kullanılarak ayarlanır.
  • Tablo hata ayıklama cihazlarını ACPI-DBG2. Bu hata ayıklama cihazları, dbgsettings::busparams=1|2|3 kullanılarak ayarlanır ve 1|2|3, hata ayıklama cihazı yapılandırmasının bulunduğu ACPI DBG2-Table dizi girdisine işaret eder.

Kablo gereksinimleri

  • Ana bilgisayar türü A bağlantı noktasını hedef C bağlantı noktasına bağlamak için standart bir USB 3.0 Tip C - Tür A kablosu gereklidir.

İkili aktarım dosyaları

X64 için ikili dosyalar kd_0C_8086.dll ve ARM için kd_8003_5143.dll, KDNET-EEM-USB hata ayıklayıcısı aktarımını desteklemek için kullanılır.

Hedefte desteklenen bir USB denetleyicisinin kullanılabilir olduğunu onaylayın

Hedef bilgisayarda Cihaz Yöneticisi'ni başlatın.

Synopsys USB 3.0 Dual-Role Denetleyicisi'nin listelenmiş olduğunu doğrulayın.

Synopsys USB 3.0 Dual-Role Denetleyicisi vurgulanmış şekilde USB düğümünü görüntüleyen Cihaz Yöneticisi ekran görüntüsü.

Birden çok bağlantı noktası kullanılabilir olduğunda hata ayıklama bağlantı noktasını belirleme

Hata ayıklamayı destekleyen bir bağlantı noktası belirledikten sonra, sonraki adım bu bağlantı noktasıyla ilişkili fiziksel USB bağlayıcısını bulmaktır.

Örneğin, Surface Pro X'te KDNET EEM hata ayıklaması için iki USB C bağlantı noktasının alt kısmını kullanın.

İki USB-C bağlantı noktası içeren Surface Pro X'in yan tarafındaki fotoğraf .

Cihaz desteğini onaylamak ve busparams değerini görüntülemek için kdnet.exe kullanın

Intel / AMD 64 cihazları

BCDEDIT hata ayıklama seçenekleri Önyükleme Yapılandırma Verileri (BCD) deposunda depolanır. Daha fazla bilgi için bkz. bcdedit /debug.

ARM cihazları

ARM cihazları, hata ayıklayıcıyı yapılandırmak için ACPI DBG2 tablosunu kullanır; burada veri yolu parametreleri DBG2 tablo girdisine atıfta bulunur. Kullanılacak hata ayıklama bağlantı noktasını belirtmek için busparm kullanılır. Genellikle yalnızca ilk busparam kullanılır ve cihaza bağlı olarak 0 veya 1'dir. Normalde, 0 DBG2 tablo girişi normalde seri cihaz COM için ayrıldığından cihazlar busparams=0 kullanmaz. ACPI DBG2 tablosu hakkında daha fazla bilgi için bkz. Microsoft Hata Ayıklama Portu Tablosu 2 (DBG2).

KDNET EEM USB'yi yapılandırmak için kdnet.exe kullanma

KDNET-EEM-USB aktarım hata ayıklamasını destekleyen denetleyicilerin parametre bilgilerini görüntülemek için kdnet.exe yardımcı programını kullanın.

  1. Windows Hata Ayıklama Araçları'nın konakta ve hedef sistemde yüklü olduğunu onaylayın. Hata ayıklayıcı araçlarını indirme ve yükleme hakkında bilgi için bkz. Windowsiçin Hata Ayıklama Araçları .

  2. kdnet.exe yardımcı programını bulun. Varsayılan olarak, dosyalar burada bulunur.

    C:\Program Files (x86)\Windows Kits\10\Debuggers\x64

  3. Hedef bilgisayarda, Yönetici olarak bir Komut İstemi penceresi açın. Hedef bilgisayarın desteklenen bir ağ bağdaştırıcısına sahip olduğunu doğrulamak ve busparams değerini görüntülemek için bu komutu girin.

    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.
    
  4. kdnet.exe çıktısı, 1 busparams değerine sahip desteklenen bir USB denetleyicisinin kullanılabilir olduğunu gösterdiğinden devam edebiliriz.

Hedef Bilgisayarı Ayarlama

Aşağıdaki adımları izleyerek hedef bilgisayardaki hata ayıklayıcı ayarlarını yapılandırmak için kdnet.exe yardımcı programını kullanın.

Önemli

Önyükleme bilgilerini değiştirmek için bcdedit'i kullanmadan önce, test bilgisayarında BitLocker ve Güvenli Önyükleme gibi Windows güvenlik özelliklerini geçici olarak askıya almanız gerekebilir. ÖNYÜKLEME bilgilerini güncelleştirmek için BCDEdit'i kullanmayı bitirdikten sonra Bit Locker ve Secure Boot'ı yeniden etkinleştirebilirsiniz. Güvenlik özellikleri devre dışı bırakıldığında test bilgisayarını uygun şekilde yönetin.

  1. Aşağıda gösterilen komutu kullanarak busparams değerini, konak sisteminin IP adresini ve bağlantı noktasını ayarlayın ve benzersiz bir bağlantı anahtarı oluşturun. 169.254.255.255 IP adresi tüm USB EMM bağlantıları için kullanılır.

  2. Birlikte çalıştığınız her hedef/konak çifti için önerilen 50000-50039 aralığında benzersiz bir bağlantı noktası adresi seçin. Örnekte 50005 gösterilmektedir.


   C:\>kdnet.exe 169.254.255.255 50005

   Enabling network debugging on Intel(R) 82577LM Gigabit Network Connection.
   Key=2steg4fzbj2sz.23418vzkd4ko3.1g34ou07z4pev.1sp3yo9yz874p
  1. Döndürülen anahtarı bir not defteri .txt dosyasına kopyalayın. Gösterilen örnekte, oluşturulan anahtarın değeri:

    2steg4fzbj2sz.23418vzkd4ko3.1g34ou07z4pev.1sp3yo9yz874p

  2. Parametrelerin beklendiği gibi olup olmadığını denetlemek için BCDEdit komutunu kullanın. Daha fazla bilgi için bkz. 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.

Host üzerinde güvenlik duvarını devre dışı bırak

Ana makinede hata ayıklayıcı için güvenlik duvarını devre dışı bırakın.

Çekirdek hata ayıklaması için WinDbg'yi hedefe bağlama

Konak bilgisayarda WinDbg'yi açın. Dosya menüsünde Çekirdek Hata Ayıklama öğesini seçin. Çekirdek Hata Ayıklama iletişim kutusunda Net sekmesini açın. Daha önce not defteri .txt dosyasına kaydettiğiniz bağlantı noktası numaranızı ve anahtarınızı yapıştırın. Tamam'ı seçin.

Ayrıca, bir Komut İstemi penceresi açarak ve aşağıdaki komutu girerek bir WinDbg oturumu başlatabilirsiniz; burada yukarıda seçtiğiniz bağlantı noktasıdır ve , yukarıda kdnet.exe tarafından döndürülen anahtardır. Daha önce not defteri .txt dosyasına kaydettiğiniz anahtarı yapıştırın.

windbg -k -d net:port=<YourDebugPort>,key=<YourKey>

Hedef bilgisayarı yeniden başlatın

Hata ayıklayıcı bağlandıktan sonra hedef bilgisayarı yeniden başlatın. Bilgisayarı yeniden başlatmanın bir yolu, yöneticinin komut isteminden shutdown -r -t 0 komutunu kullanmaktır.

Hedef bilgisayar yeniden başlatıldıktan sonra hata ayıklayıcının otomatik olarak bağlanması gerekir.

Sorun giderme

Hedef sorunlarını giderme

Windows KDNET-USB-EMM Ağ Bağdaştırıcısı'nın Windows Cihaz Yöneticisi'ndeki Ağ Bağdaştırıcıları altında mevcut olduğunu onaylayın.

Cihaz özellikleri, denetleyicinin Windows çekirdek hata ayıklayıcısı tarafından kullanılmak üzere ne zaman ayrıldığını gösterir.

Cihaz Yöneticisi'nin, denetleyicinin ayrılmış olduğunu belirten Synopsys USB 3.0 Dual-Role Denetleyicisi ile birlikte USB düğümünü gösteren ekran görüntüsü.

Sunucu Sorunlarını Giderme

Windows KDNET-USB-EMM Ağ Bağdaştırıcısı'nın Windows Cihaz Yöneticisi'ndeki Ağ Bağdaştırıcıları altında mevcut olduğunu onaylayın.

Ana bilgisayarda USB Tür A bağlantı noktası kullanılarak KDNET-EEM bağlantısı gösterilir.

Windows KDNET USB-EEM ağ bağdaştırıcısı girişiyle ağ düğümünü görüntüleyen Cihaz Yöneticisi'nin ekran görüntüsü.

Intel PCI - Bağlantı deneme mesajları hata ayıklayıcı konsolu pencerelerinde görünür ve hedefe müdahale edilemez - SkipPciProbeDebugDevice

KDNET hata ayıklayıcısı konsolunda aşağıdaki iletiyle karşılaşırsanız, hedefe bir giriş başlatamazsanız veya belirli komutlarla (kdfile'lar gibi) ilgili sorunlarla karşılaşırsanız, bunun nedeni KDNET'in sıra dışı ping paketi alması olabilir."

... Retry sending the same data packet for 128 times.

The transport connection between host kernel debugger and target Windows seems lost.
please try resync with target, recycle the host debugger, or reboot the target Windows.

bu sorun, pci.sys sürücüsünün hata ayıklama cihazını yanlış bir şekilde yokladığı için oluşabilir. Hataları ortadan kaldırmak için bir yönetici komut isteminde TARGET cihazında aşağıdaki kayıt defteri girdisini oluşturun.

reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\SERVICES\kdnet /v SkipPciProbeDebugDevice /t REG_DWORD /d 1 /f

Ardından hedef makineyi yeniden başlatın.

shutdown /r /t 0

Cihaz yeniden başlatıldıktan sonra hatalar kaybolmalıdır ve komutlar beklendiği gibi çalışmalıdır.

Ayrıca bkz.

Otomatik olarak KDNET Ağ Çekirdeği Hata Ayıklamasını Ayarlama

KDNET Ağ Çekirdeği Hata Ayıklama Ayarlarını Elle Yapılandırma

USB 3.0 xHCI-DBC çekirdek modu hata ayıklama (KDUSB) ayarlama

USB KDNET çekirdek modu hata ayıklamasını ayarlama (KDNET-USB)