Advanced Debugging
About AdvDbg Consult Train Services Products Tools Community Contact  
欢迎光临 高端调试 登录 | 注册 | FAQ
 
  ACPI调试
Linux内核调试
Windows内核调试
 
  调试战役
调试原理
新工具观察
 
  Linux
Windows Vista
Windows
 
  Linux驱动
WDF
WDM
 
  PCI Express
PCI/PCI-X
USB
无线通信协议
 
  64位CPU
ARM
IA-32
  CPU Info Center
 
  ACPI标准
系统认证
Desktop
服务器
 
  Embedded Linux
嵌入式开发工具
VxWorks
WinCE
嵌入式Windows
 
  格蠹调试套件(GDK)
  格蠹学院
  小朱书店
  老雷的微博
  《软件调试》
  《格蠹汇编》
  《软件调试(第二版)》
沪ICP备11027180号-1

调试ACPI和BIOS

帖子发起人: zl000   发起时间: 2008-01-05 12:55 下午   回复: 6

Print Search
帖子排序:    
   2008-01-05, 12:55 下午
zl000 离线,最后访问时间: 2008/12/29 17:20:26 zl000

发帖数前500位
注册: 2007-12-31
发 贴: 3
OS不加载自己的AML Code
Reply Quote
初涉ACPI, 在XP SP2上替换了checked acpi.sys(443K, 是不是这个?)后,用asl.exe编译并加载AML到注册表,code只简单实现修改内核的某地址处一个字节,重起,用windbg查看发现根本就未修改成功,哪位老大帮忙解释一下啊~~
IP 地址: 已记录   报告
   2008-01-05, 23:24 下午
Raymond 离线,最后访问时间: 2020/7/3 3:40:25 格蠹老雷

发帖数前10位
注册: 2005-12-19
发 贴: 1,303
Re: OS不加载自己的AML Code
Reply Quote
使用ACPIDUMP.EXE或者其他可以DUMP ACPI表的工具(AcpiView、WinACPI)在你的系统中做个DUMP,看DUMP下来的是否是改过的。
IP 地址: 已记录   报告
   2008-01-06, 14:23 下午
zl000 离线,最后访问时间: 2008/12/29 17:20:26 zl000

发帖数前500位
注册: 2007-12-31
发 贴: 3
Re: OS不加载自己的AML Code
Reply Quote
找到一个acpiview,竟然提示说不能load driver,晕~
其它工具网上很难找~~我在注册表里看到确实是添加了相应注册表项了,但是reboot后就是不执行我的代码。
还有没有其它什么原因,麻烦raymond解释一下,这方面资料除了ms官方上一些spec,真是少的可怜啊~
另把我的code贴上来,应该是没有问题吧??
DefinitionBlock("test.aml", "DSDT", 0x02, "TEST", "FORTEST", 0x3000)
{
Method(HOOK)
{
OperationRegion(TEST, SystemMemory, 0x4e4c01, 0x2)
Field(TEST, ByteAcc, NoLock, Preserve)
{
IOCD, 0x2
}

Store(Buffer(){0x90, 0x90}, IOCD)

}
}
IP 地址: 已记录   报告
   2008-01-08, 12:19 下午
Raymond 离线,最后访问时间: 2020/7/3 3:40:25 格蠹老雷

发帖数前10位
注册: 2005-12-19
发 贴: 1,303
Re: OS不加载自己的AML Code
Reply Quote
你在使用WinDBG的!amli调试时,能看到你的这个方法么?按你的设计,谁会调用你的HOOk方法呢?

IP 地址: 已记录   报告
   2008-01-10, 13:46 下午
zl000 离线,最后访问时间: 2008/12/29 17:20:26 zl000

发帖数前500位
注册: 2007-12-31
发 贴: 3
Re: OS不加载自己的AML Code
Reply Quote

看过规范之后有些东西还是不太理解。。。

我又尝试了下面的代码,发现还是不行。不知您能否给出一个可以让人确实看到AML确实被解释执行的代码例子~谢谢!

DefinitionBlock("test.aml", "DSDT", 0x02, "TEST", "FORTEST", 0x3000) 
{
OperationRegion(TEST, SystemMemory, 0x4e4c01, 0x2)
Field(TEST, ByteAcc, NoLock, Preserve)
{
IOCD, 0x2
}

Store(Buffer(){0x90, 0x90}, IOCD)

}


IP 地址: 已记录   报告
   2009-01-30, 03:38 上午
qdk0901 离线,最后访问时间: 2009/11/16 19:08:23 quanta

发帖数前150位
注册: 2008-12-14
q
发 贴: 6
Re: OS不加载自己的AML Code
Reply Quote
应该是你加载方法不对,我弄了很多次都可以的
IP 地址: 已记录   报告
   2010-02-23, 13:51 下午
wowanjinhua 离线,最后访问时间: 2010/2/22 14:08:50 炸金花

发帖数前200位
注册: 2010-02-12
发 贴: 5
Re: OS不加载自己的AML Code
Reply Quote
用RW来看你的东西是不是已经在系统里了
IP 地址: 已记录   报告
高端调试 » 软件调试 » 调试ACPI和BIOS » OS不加载自己的AML Code

 
Legal Notice Privacy Statement Corporate Governance Corporate Governance
(C)2004-2020 ADVDBG.ORG All Rights Reserved.