BSOD 0x000000A5 — ACPI_BIOS_ERROR

Данный стоп код означает, что Advanced Configuration and Power Interface (ACPI) BIOS компьютера не соответствует полностью спецификации ACPI.

Параметры стоп кода

Параметр 1 определяет тип несовместимости, значения остальных параметров зависят от него.

Если несовместимость BIOS относится к категории Plug and Play (PnP) или управлению электропитанием, используются следующие параметры.

Параметр 1 Параметр 2 Параметр 3 Параметр 4 Причина
0x01 deviceExtension ACPI ResourceList ACPI 0: список ресурсов не найден
1: в списке не найден ресурс IRQ
ACPI cannot find the System Control Interrupt (SCI) vector in the resources that are handed to it when ACPI is started.
0x02       см. таблицу ниже
0x03 ACPI объект, который запускался Возвращаемое значение Имя метода контроля (в формате ULONG) ACPI попытался выполнить метод контроля в процессе создания расширения устройства для отображения пространства имен ACPI, но произошла ошибка в процессе его выполнения
0x04 Расширение ACPI, которому принадлежит _PRW Указатель на метод Возвращаемый DataType (см. Amli.h) ACPI evaluated a _PRW and expected to find an integer as a package element.
0x05 Расширение ACPI, которому принадлежит _PRW Указатель на _PRW Количество элементов в _PRW ACPI выполнило _PRW, но возвращаемый пакет не содержит двух элементов. Спецификация ACPI требует, чтобы 2-а элемента всегда находились в _PRW
0x06 Расширение ACPI, которому принадлежит _PRx Указатель на _PRx Указатель на объект, поиск которого проводился ACPI попытался найти именованный объект, но это завершилось неудачно
0x07 Расширение ACPI, которому принадлежит метод Указатель на метод Возвращаемый DataType (см. Amli.h) ACPI выполнил метод и ожидал получить буфер, однако метод вернул данные другого типа
0x08 Расширение ACPI, которому принадлежит метод Указатель на метод Возвращаемый DataType (см. Amli.h) ACPI выполнил метод и ожидал получить данные целого типа, однако метод вернул данные другого типа
0x09 Расширение ACPI, которому принадлежит метод Указатель на метод Возвращаемый DataType (см. Amli.h) ACPI выполнил метод и ожидал получить пакет, однако метод вернул данные другого типа
0x0A Расширение ACPI, которому принадлежит метод Указатель на метод Возвращаемый DataType (см. Amli.h) ACPI выполнил метод и ожидал получить строку, однако метод вернул данные другого типа
0x0B Расширение ACPI, которому принадлежит _EJD Статус возврата Имя объекта, поиск которого, попытался выполнить ACPI ACPI не смог найти объект указываемый _EJD
0x0C Расширение ACPI для которого было найдено подключаемое устройство Указатель на метод _EJD 0: BIOS не указал, что система подключаемая
1: Найден дубликат расширения устройства для для подключаемого устройства
ACPI предоставил ошибочную или неполную информацию о поддержки подключения
0x0D Расширение ACPI для которого ACPI требует объект Имя метода, который искал ACPI 0: Base Case
1: Conflict
ACPI не нашел требуемый метод или объект в пространстве имен. Этот стоп код используется если не указан _HID или _ADR
0x0E NS PowerResource, для которого ACPI требует объект Имя метода, который искал ACPI 0: Base Case ACPI не смог найти требуемый метод или объект в пространстве имен ресурсу электропитания. Этот стоп код используется если для ресурса электропитания нет _ON, OFF или _STA
0x0F Текущий буфер, разбор которого выполнял ACPI Теги буфера Указанная длина буфера ACPI не смог “отпарсить” дескриптор ресурса
0x10       смотрите таблицу ниже на этой странице
0x11       смотрите таблицу ниже на этой странице
0x14 Текущий буфер, разбор которого выполнял ACPI Теги буфера Указатель на переменную, которая содержит (ULONGULONG) длину буфера ACPI не смог “отпарсить” дескриптор ресурса, максимальная длина превысила MAXULONG
0x15 Контекст языка (AML) ACPI компьютера 1: ошибка загрузки таблицы
2: Параметр пути строки объекта не найден
3: ошибка вставки параметра данных в объект параметра строки
4: нехватка системной памяти
Код ошибки (NT status code) Возникла фатальная ошибка, когда ACPI пытался загрузить таблицу
0x16 Указатель на родительский NSOBJ Указатель на некорректный потомок пространства объектов ACPI Зарезервировано Возникла ошибка, когда ACPI пытался обработать xSDT. Объект был задекларирован как потомок родителя, у которого нет потомков

Если возникла ошибка маршрутизации прерывания или произошла ошибка, связанная с совместимостью, используются следующие параметры.

Параметр 1 Параметр 2 Параметр 3 Параметр 4 Причина
0x2001 InterruptModel (integer) Возвращаемое значение Указатель на метод PIC контроллера ACPI попытался выполнить метод PIC, но произошла ошибка
0x10001 Указатель на объект устройства Указатель на родителя объекта устройства Указатель на объект _PRT ACPI tried to do interrupt routing, but failed.
0x10002 Указатель на объект устройства Указатель на имя строки, которую искал ACPI, но не нашел Указатель на объект _PRT объект ACPI не мог найти связанный узел, указываемый в _PRT
0x10003 Указатель на объект устройства ID устройства или номер функции. Этот DWORD расшифровывается следующим образом:
биты 5:0 – номер PCI устройства
биты 8:6 – номер PCI функции
Указатель на объект _PRT объект ACPI не смог найти соответствие в _PRT пакете для устройства
0x10005 Указатель на объект _PRT объект Указатель на текущий _PRT элемент ID устройства или номер функции. Этот DWORD расшифровывается следующим образом:
биты 5:0 – номер PCI устройства
биты 8:6 – номер PCI функции
Общий формат для элемента _PRT, который описывает номер устройства указан, но номер функции — нет
0x10006 Указатель на связанный узел 0 0 ACPI нашел связанный узел, но он не может отключить узел
0x10007 Вектор, который не может быть найден 0 0 _PRT содержит ссылку на вектор, который не описан в I/O APIC элементах таблицы MAPIC
0x10008 Ошибочный уровень прерываний 0 0 ACPI SCI уровень прерывания ошибочен
0x10009 0 0 0 Таблица Fixed ACPI Description не может быть найдена
0x1000A 0 0 0 RSDP или XSDT не могут быть найдены
0x1000B Сигнатура таблицы ACPI Указатель на таблицу ACPI 0 Длина таблицы ACPI не совпадает
0x20000 Порт I/O в Fixed Table 0 0 Элемент PM_TMR_BLK в таблице Fixed ACPI Description не указывает на рабочий блок ACPI таймера

Если параметр 1 равен 0x02, это означает, что ACPI BIOS не смог обработать список ресурсов на корневых шинах PCI. В этом случае параметр 3 указывает конкретную проблему и другие параметры имеют соответствующие параметры.

Параметр 2 Параметр 3 Параметр 4 Причина
ACPI расширение для шины ACPI 0x0 Указатель на QUERY_RESOURCES IRP ACPI не может конвертировать список ресурсов BIOS в необходимый формат
ACPI расширение для шины ACPI 0x1 Указатель на QUERY_RESOURCE_REQUIREMENTS IRP ACPI не может конвертировать список ресурсов BIOS в необходимый формат
ACPI расширение для шины ACPI 0x2 0 ACPI нашел пустой список ресурсов
ACPI расширение для шины ACPI 0x3 Указатель на дескриптор PNP CRS ACPI не может найти текущий номер шины в CRS
ACPI расширение для шины ACPI Указатель не список ресурсов ACPI Указатель на таблицу памяти E820 Список ресурсов, которые PCI были объявлены как декодированные, пересекаются со списком регионов памяти из отчета интерфейса E820 BIOS

Если параметр 1 равен 0x10, это означает, что ACPI BIOS не может определить корректно “system-to-device-state mapping”. В этой ситуации, параметр 3 указывает на конкретную проблему, а остальные параметры имеют соответствующий смысл.

Параметр 2 Параметр 3 Параметр 4 Причина
The ACPI extension whose mapping is needed 0x0 The DEVICE_POWER_STATE (this is «x+1») _PRx was mapped back to a non-supported S-state.
The ACPI extension whose mapping is needed 0x1 The SYSTEM_POWER_STATE that cannot be mapped ACPI cannot find a D-state to associate with the S-state.
The ACPI extension whose mapping is needed 0x2 The SYSTEM_POWER_STATE that cannot be mapped The device claims to be able to wake the system when the system is in this S-state, but the system does not actually support this S-state.

Если параметр 1 равен 0x11, это означает, что система не может перейти в режим ACPI. В этом случае, параметр 2 описывает проблему, а остальные параметры имеют соответствующий смысл.

Параметр 2 Параметр 3 Параметр 4 Причина
0x0 0 0 Система не может инициализировать AML интерпритатор
0x1 0 0 Система не может найти RSDT
0x2 0 0 Система не может выделить критический структуры драйверов
0x3 0 0 Система не может загрузить RSDT
0x4 0 0 Система не может загрузить DDB
0x5 0 0 Система не смогла выполнить подключение к вектору прерывания
0x6 0 0 SCI_EN никогда не будет установлен в контрольном регистре PM1
0x7 Указатель на таблицу, которая имеет неправильную контрольную сумму Ревизия создателя Контрольная сумма таблицы неверна
0x8 Указатель на таблицу, которую ACPI не смог загрузить Ревизия создателя ACPI не смог загрузить DDB
0x9 Версия FADT 0 Неподдерживаемая версия прошивки
0xA 0 0 Система не может найти MADT
0xB 0 0 Система не может найти какие-либо корректные локальный структуры SAPIC в MADT

Решение

Если вы разработчик и занимаетесь отладкой этой ошибки, используйте расширение !analyze –v. Это расширение отобразит все необходимые важный данные.

Если вы пользователь, вам необходимо обновить прошивку BIOS. Если вы не можете выполнить обновление или последняя версия BIOS остается ACPI несовместимой, вы можете отключить ACPI. Для этого нужно нажать f7 в процессе предложения установки устройств хранения данных. Системе не уведомит вас о том, что вы нажали F7, но ACPI будет отключен, а процесс установки продолжится.

Замечание

Таблица маршрутизации PCI (_PRT) – это объект ACPI BIOS, который определяет каким образом все PCI устройства подключены к контроллеру прерываний. Компьютер с несколькими PCI шинами, будет иметь несколько таких таблиц.

Для отображения _PRT вы можете воспользоваться отладчиком и расширением !acpikd.nsobj вместе с адресом _PRT объекта в качестве аргумента.