您可以使用下面的信息来帮助调试 Stop 0x000000A5 错误。
• | 导致此 Stop 消息的原因始终是 ACPI BIOS 中的错误。在操作系统级别,您无法修复任何错误。 |
• | 在其他情况下也可能会出现此 Stop 消息。例如,您可能会在安装 Windows XP 并随后进行硬件更改(如添加设备)时收到此 Stop 错误。可以正常运行 Microsoft Windows 98 的计算机可能无法正常运行 Windows XP。Windows 98 不一定使用 Windows XP 所使用的全部 ACPI 功能。Windows 98 可能会允许使用 Windows XP 由于其严格的系统稳定性要求而无法使用的替代方法。 |
以下信息列出了 Stop 0x000000A5 错误的可能原因。要确定此 Stop 错误的原因,请记下
Parameter1 并将其与以下段落中列出的数字进行比较,以便大概了解问题所在。
本文不讨论其他参数。您只能通过将系统连接到内核调试程序来查看这些其他参数。本文介绍此 Stop 错误可能涉及到的问题,而不需要更高级的调试。有关更多信息,请参考 Acpidbg.h。
(0x00000001, Parameter2, Parameter3, Parameter4):此参数被定义为 ACPI 根资源故障。更具体地说就是,ACPI 在启动时收到的任何资源中都找不到系统控制中断 (SCI) 矢量。SCI 是一个特殊的中断类型,它提供了一个更为高效的方法,以处理通常需要由系统管理中断 (SMI) 处理的问题。如果 SCI 无法初始化,ACPI 将无法工作。如果列表中没有此 IRQ 的条目,或者根本找不到任何 IRQ 资源列表,就可能会发生此问题。
(0x00000002, Parameter2, Parameter3, Parameter4):此错误被定义为 ACPI 根 PCI 资源故障。要了解 PCI 设备当前使用了哪些资源,ACPI 必须能够在 ACPI 名称空间中查询 CRS 描述符。如果 BIOS 缺少指向列表的指针,或者列表为空,或者列表包含错误或冲突,将发生此错误。
(0x00000003, Parameter2, Parameter3, Parameter4):此错误被定义为“故障 ACPI 必须成功方法”。如果 ACPI 无法生成控制方法以引用 ACPI 名称空间,将发生此错误。此错误的其他参数引用正在运行的 ACPI 对象以及控制方法的名称。一种更为简单的解释(可能并不完全准确)是,系统找不到定义系统的即插即用和电源管理功能的 ACPI 表。
(0x00000004, Parameter2, Parameter3, Parameter4):发生此错误的原因是:系统在 ACPI 名称空间中定义 _PRW 方法时收到的某种数据类型不是所需的要用作其数据包元素的类型。_PRW 仅为能够将系统从休眠模式中唤醒的系统定义。除其他部分外,_PRW 还定义系统可以进入并能够从中恢复的最低电源系统状态。
(0x00000005, Parameter2, Parameter3, Parameter4):引用的 _PRW 必须至少包含两个元素。在被查询时,_PRW 指示它不完整。
(0x00000006, Parameter2, Parameter3, Parameter4):命名了电源资源,但是名称空间中没有可用于该资源的信息。
(0x00000007, Parameter2, Parameter3, Parameter4):当系统引用了 ACPI 名称空间中的方法时,系统需要 BUFFER 数据类型,但是收到了某种其他数据类型。
(0x00000008, Parameter2, Parameter3, Parameter4):系统需要 INTEGER 数据类型,但是收到了某种其他数据类型。
(0x00000009, Parameter2, Parameter3, Parameter4):系统需要 PACKAGE 数据类型,但是收到了某种其他数据类型。
(0x0000000A, Parameter2, Parameter3, Parameter4):系统需要 STRING 数据类型,但是收到了某种其他数据类型。
(0x0000000B, Parameter2, Parameter3, Parameter4):_EJD 字符串引用了不存在的对象。_EJD 对象定义依赖于特定弹出设备的对象。例如,如果插接站中有一个附加适配器,并且您尝试弹出便携式计算机,则 ACPI 将引用此名称空间,以确定插接站中的从属适配器是否支持弹出操作。发生此错误的原因是没有用于定义 _EJD 字符串中引用的名称的对象。
(0x0000000C, Parameter2, Parameter3, Parameter4):此名称空间定义对插接的支持,但是没有足够的信息来实现它。这可能是因为定义不正确,或者定义了重复的服务。
(0x0000000D, Parameter2, Parameter3, Parameter4):ACPI 名称空间中必须定义许多对象,但其中一个或多个对象找不到。如果缺少 _HID 或 _ADR 对象,通常会出现此错误。_ADR 用于定义设备在其父级总线上的地址。_ADR 是一个静态地址,它定义设备的插槽编号,这些设备可以位于任意数量的总线类型上,其中包括 EISA、软驱、IDE 控制器、IDE 通道、PCI、PCMCIA 和 CardBus。_HID 包含向操作系统提供设备的即插即用硬件 ID 的对象。从技术角度上讲,这些对象是可选的,但是要描述 ACPI 驱动程序所枚举的任意设备,就必须使用它们。
(0x0000000E, Parameter2, Parameter3, Parameter4):发生此错误的原因是系统无法在电源资源名称空间中找到所需的方法或对象。电源资源是“设备”以外的任何对象。如果 BIOS 不为电源资源提供 ON、OFF 或 STA 中的任何一个,系统将停止并生成此错误。
(0x0000000F, Parameter2, Parameter3, Parameter4):当即插即用资源描述符小于其定义的大小时,将出现此错误,因为这表明该描述符不完整或已损坏。资源描述符描述计算机正在使用的、可以使用的或想要使用的系统资源。每个描述符条目都有一个预定义的大小,该大小必须与返回的数据相符。
(0x000000010, Parameter2, Parameter3, Parameter4):当系统从一个电源状态转换到另一个状态时,它会将整个系统都支持的状态与系统中个别设备所支持的状态进行比较。如果电源资源映射到不存在的系统范围资源,将发生此错误。您可以使用内核调试程序来查看此错误的具体信息,包括导致出现问题的系统电源状态。
(0x000000011, Parameter2, Parameter3, Parameter4):系统无法进入 ACPI 模式。发生此问题的原因有多个,其中包括:
• | 系统无法初始化 AML 解释器。 |
• | 系统找不到根系统描述表。 |
• | 系统无法分配关键驱动程序。 |
• | 系统无法加载根系统描述表。 |
• | 系统无法加载设备描述符块。 |
• | 系统无法连接中断矢量。 |
• | 无法设置 SCI_EN(系统控制中断启用请求)(请参见 0x00000001)。 |
• | ACPI 表的校验和不正确。 |
ACPI 是表的分层排列,每个表都构建在下一个表之上,以定义系统以及系统中各台设备的完整功能。ACPI 首先查找根系统描述表,该表指向下一个表,下一个表又指向它的下一个表,依此类推。通常,发生 0x000000011 错误的原因是这些表被损坏或丢失。
(0x000000012, Parameter2, Parameter3, Parameter4):ACPI 需要一个电源资源对象,但是它找不到该对象。您可以通过内核调试程序来查看此错误,以准确了解该对象。
(0x00002001, Parameter2, Parameter3, Parameter4):ACPI 试图评估特定类型的可编程中断控制器的控制方法,但没有成功。
(0x00010001, Parameter2, Parameter3, Parameter4):ACPI 试图执行中断路由,但没有成功。发生此错误的原因通常是中断路由表已损坏。
(0x00010002, Parameter2, Parameter3, Parameter4):ACPI 找不到中断路由表中引用的链接节点。
(0x00010003, Parameter2, Parameter3, Parameter4):系统中存在某个设备,但是 IRQ 路由表中没有对应该设备的条目。
(0x00010005, Parameter2, Parameter3, Parameter4):此错误与定义如何写入 PCI 路由表的规则有关。为了避免出现含糊不清的情况,必须在表中指定设备编号,但是绝对不能指定函数编号。为此,必须将函数字段全部设置为 F。当函数编号没有全部为 F 时,将发生此错误。
(0x00010006, Parameter2, Parameter3, Parameter4):ACPI 必须能够禁用链接节点,才能对其进行重新编程。如果 ACPI 无法禁用链接节点,将会发生此错误。
posted on 2007-03-16 10:34
yuhen 阅读(7910)
评论(0) 编辑 收藏 引用 所属分类:
技术文档