通过USB架设ASL code的WinDbg

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了通过USB架设ASL code的WinDbg相关的知识,希望对你有一定的参考价值。

通过USB3.0架设ASL code的WinDbg:

 

目标机器配置:

1. 获取OS同版本的check build acpi.sys;

2. 替换系统中的acpi.sys(参考:如何替换Windows的系统文件);

3. 重启,如果替换之后进不去OS:

(1)在Bios Setup界面把系统时间设成在acpi.sys文件的签名时间之内;

(2)在Advance选项中选择disable driver signature进入OS。

4. 关闭防火墙;

5. 设置通过USB调试:

方法1:执行下面指令:

 

bcdedit /debug on
bcdedit /set testsigning on
bcdedit /dbgsettings usb targetname:XX
reg add "HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Debug Print Filter"
reg add "HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Debug Print Filter" /v AMLI /t REG_DWORD /d 0xFFFFFFFF /f>nul

 

方法2:

WIN+R -> Msconfig -> Boot -> Advanced options… -> 选中debug, debug port: USB, USB target name: XX

 

主机配置:

1. 安装WinDbg程序;

2. Load正确的 Symbol File Path;

3. Kernel Debug...选中USB;

 

 

开始调试:

1. 暂停目标机器;

2. 依次输入:

 

.reload /f /v acpi.sys
!amli debugger 
!amli set verboseon  
!amli set traceon
!amli set nesttraceon 
!amli set spewon 

 

3. 输入g,回车之后进入amli Debug模式;

4. 执行S3/S4就能看到有ASL code丢出来。

 

以上是关于通过USB架设ASL code的WinDbg的主要内容,如果未能解决你的问题,请参考以下文章

如何使用WinDBG跟踪调试ASL/ACPI

使用WinDbg调试入门(内核模式)

如何通过ntsd -d在windbg中显示源代码?

揪出“凶手”——实战WinDbg分析电脑蓝屏原因

ORA-00600: internal error code, arguments: [25027], [1], [0], [], [], [], [], [], [], [], [], [](代码片

ORA-00600: internal error code, arguments: [25027], [1], [0], [], [], [], [], [], [], [], [], [](代码片