Windows windbg kernel debug 雙機核心除錯 - USB3.0 除錯 USB除錯 除錯線
0x1 使用USB3.0 除錯線,進行windows雙機核心除錯
從win8開始,windows就引入了USB 3.0的核心除錯 ,速度可以說爽的一批。不過能否支援USB3.0的除錯,還需要看你的機器配置。
怎麼知道知否支援USB3.0除錯?
Host端 :
1 系統,WIN8 以及以上
2 Target機器帶有 xHCI 控制器,即USB3.0的介面
Target端:
1 系統,WIN8 以及以上
2 Target機器帶有 xHCI 控制器,即USB3.0的介面
3 Target機器的USB3.0的port支援除錯。使用usbview.exe檢視對應的USB3.0 port,需滿足下列三個Yes
Is Port User Connectable: yes
Is Port Debug Capable: yes
USB 3.0: yes
如果上面的條件都滿足,恭喜你,你可以使用USB 3.0 的核心除錯之旅了。
USB3.0 windbg 核心除錯線可以在淘寶購買,連結https://item.taobao.com/item.htm?ft=t&id=618941145412
0x2 使用USB 3.0 連線Host和Target端符合條件的USB3.0 port
0x3 目標計算機設定
使用bcdedit更改引導資訊之前,您可能需要暫時掛起Windows PC安全功能,例如關閉BitLocker和secure boot。
-
(可選)記下要用於除錯的xHCI控制器的匯流排,裝置和功能編號。UsbView.exe可以顯示這些數字。在以下示例中,匯流排號為48,裝置號為0,功能號為0。
USB xHCI Compliant Host Controller ... DriverKey: {36fc9e60-c465-11cf-8056-444553540000}\0020 ... Bus.Device.Function (in decimal): 48.0.0
-
(可選)確定支援除錯的xHCI控制器後,下一步是找到與xHCI控制器上的埠關聯的物理USB聯結器。要找到物理聯結器,請將任何USB 3.0裝置插入目標計算機上的任何USB聯結器。重新整理UsbView以檢視裝置的位置。如果UsbView顯示您的裝置已連線到所選的xHCI主機控制器,則您已找到可用於USB 3.0除錯的物理USB聯結器。
-
在目標計算機上,以管理員身份開啟“命令提示符”視窗,然後輸入以下命令:
-
bcdedit /debug on
-
bcdedit /dbgsettings usb targetname:TargetName
其中TargetName是建立的除錯名稱。請注意,TargetName不必是目標計算機的正式名稱。只要滿足以下限制,它就可以是您建立的任何字串:
- 該字串在大寫字母或小寫字母的任意組合中,不得在TargetName中的任何位置包含“debug”字樣。例如,如果您在目標名稱中的任何地方使用“ DeBuG”或“ DEBUG”,則除錯將無法正常進行。
- 字串中唯一的字元是連字元(-),下劃線(_),數字0到9和字母A到Z(大寫或小寫)。
- 字串的最大長度為24個字元。
也可以通過msconfig.exe進行配置
4.(可選) bcdedit /set "{dbgsettings}" busparams b.d.f
其中b,d和f是USB主機控制器的匯流排,裝置和功能號。匯流排,裝置和功能編號必須為十進位制格式。
例:bcdedit /set "{dbgsettings}" busparams 48.0.0
5. 重新啟動目標計算機。
0x4 主機端的配置
- 將通用序列匯流排(USB)3.0除錯電纜連線到在主機和目標計算機上選擇用於除錯的USB 3.0埠。(如果前面沒有連線,我們這裡必須要連線Host和Target端了)
- 確定主機上執行的Windows的位數(32位或64位)。
- 在主機上,開啟與主機上執行的Windows位數匹配的WinDbg版本(以管理員身份)。例如,如果主機執行的是64位版本的Windows,則以管理員身份開啟WinDbg的64位版本。(首次除錯必須管理員啟動windbg)
- 在檔案選單上,選擇核心除錯。在“核心除錯”對話方塊中,開啟“ USB”選項卡。輸入設定目標計算機時建立的目標名稱。單擊確定。
此時,USB除錯驅動程式已安裝在主機上。這就是為什麼將WinDbg的位數與Windows的位數進行匹配很重要的原因。安裝USB除錯驅動程式後,可以將32位或64位版本的WinDbg用於後續的除錯會話。
0x5 連線成功
0x6 故障排除
0x6.1 HOST端。在一些win10的HOME版本,usb2dbg.sys沒有簽名或者簽名不正確。請從別的正常的版本拷貝一個過來覆蓋掉。
相關文章
- .NET高階除錯系列-Windbg除錯入門篇高階除錯
- AS之Debug除錯除錯
- windbg 搭建雙擊除錯環境除錯
- 除錯篇——除錯物件與除錯事件除錯物件事件
- nodejs的除錯debugNodeJS除錯
- windbg 常用除錯命令總結除錯
- vscode 使用 PHP debug 除錯VSCodePHP除錯
- debug技巧之本地除錯除錯
- Xcode Debug除錯彙總XCode除錯
- 核心頁表除錯除錯
- Python 程式碼除錯—使用 pdb 除錯Python除錯
- IsDebuggerPresent的反除錯與反反除錯除錯
- .NET 5 程式高階除錯-WinDbg高階除錯
- debug技巧之使用Arthes除錯除錯
- debug技巧之遠端除錯除錯
- 斷點除錯 debug模式 1006斷點除錯模式
- 使用IDEA遠端debug除錯Idea除錯
- nginx 錯誤除錯Nginx除錯
- android 無線除錯Android除錯
- Linux核心使用gdb除錯Linux除錯
- 前端除錯前端除錯
- python 除錯Python除錯
- LLDB除錯LLDB除錯
- postman除錯Postman除錯
- Linux除錯Linux除錯
- 除錯toybox除錯
- gdb除錯除錯
- Windows 除錯工具課程Windows除錯
- Windows 下如何除錯 PowerShellWindows除錯
- vscode 無法進行 debug 除錯VSCode除錯
- 【Java】Debug斷點除錯常用技巧Java斷點除錯
- 反除錯&反反除錯 -- 利用sysctl檢測偵錯程式是否存在除錯
- 如何除錯SSH連線除錯
- 【除錯】SystemTap除錯網路卡狀態一例除錯
- 一加6T怎麼開啟手機USB除錯?一加6T手機USB除錯連線電腦教程除錯
- win10 如何除錯串列埠_win10串列埠除錯怎麼除錯Win10除錯串列埠
- vscode使用chrome除錯報錯VSCodeChrome除錯
- console 除錯技巧除錯