bcdedit /debug onbcdedit /dbgsettings serial debugport:1 baudrate:115200重啟虛擬機系統,發現連接不上。因為我們新建的串口是串口 2,而我們在虛擬機系統裡設置的是串口 1。bcdedit /debug onbcdedit /dbgsettings serial debugport:2 baudrate:115200最後,還演示了windbg通過命令行直接連接。命令行如下:windbg.exe -k com:pipe,port=\\.\pipe\bcn_com,reconnect經常做雙機內核調試的小夥伴兒一定對VirtualKD不陌生。可以大大提高雙機內核調試的速度,可謂神器。幾年前,用VirtualKD搭建雙機內核調試環境很簡單。沒想到這次居然各種連接不上。通過google搜索關鍵字VMware15 VirtualKD,在VirtualKD github issues和看雪論壇『求助問答』的帖子看到已經有小夥伴兒遇到這個問題了。應該是VirtualKD3.0與VMware15.5不兼容。真是個壞消息,不過也有好消息 —— 已經有大佬解決了這個問題,github上對應的倉庫是VirtualKD-Redux。在查找解決方案的過程,發現有人遇到另外一個問題。在虛擬機裡執行bcdedit /debug on失敗,提示值被保護,如下圖:VirutalKD-Redux的使用方法和VirutalKD一樣,簡要步驟如下:在調試主機端運行vmmon64.exe,點擊Debugger Path...選擇調試器路徑。把target64拷貝到虛擬機中(如果是32位系統,請拷貝target32)。在虛擬機中執行target64目錄下的vminstall.exe安裝VirtualKD-Redux。重啟虛擬機系統,選擇新建立的Entry,並且按F8選擇禁用強制籤名。如果順利,調試器會自動彈出並連接到被調試系統(因為Start debugger automatically默認是勾選狀態)。如果調試器沒自動彈出,或者我們意外的關閉了調試器,我們可以通過點擊Run Debugger按鈕,手動啟動調試器。當我們執行一些命令的時候(比如,!thread),需要符號文件的幫助。我們可以通過_NT_SYMBOL_PATH環境變量設置符號路徑。如果還沒有設置,可以在windbg中執行.symfix path/to/symbol_cache自動設置微軟符號伺服器為上遊符號伺服器。當需要符號時,windbg會先到path/to/symbol_cache中查找符號,如果找不到,會繼續到微軟符號伺服器上查找,如果在微軟符號伺服器上找到了,會緩存到path/to/symbol_cache,然後從path/to/symbol_cache加載符號。溫馨提示:symfix命令會刪除windbg中現有的符號路徑設置。目前,好像需要科學上網才能成功連接微軟符號伺服器。使用VMware前,最好禁用Hyper-V,禁用Security Boot,開啟Intel VT-x。一定要注意,VMware默認帶的印表機會佔用串口 1,如果不刪除印表機就新建串口的話,新建的串口是串口 2。VirtualKD3.0還不支持VMware15.5,我們可以使用VirtualKD-Redux。執行.symfix path/to/symbol_cache使用微軟符號伺服器。VirtualKD official install tutorial
"VMware Workstation and Device/Credential Guard are not compatible" error in VMware Workstation on Windows 10 host (2146361)
Setting up kernel debugging (VirtualKD)
VMware+Windgb+Win7內核驅動調試
看雪ID:編程難
https://bbs.pediy.com/user-873494.htm
*本文由看雪論壇 編程難 原創,轉載請註明來自看雪社區。好書推薦