Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Отладчик AMLI поддерживает два типа специализированных команд: расширения отладчика AMLI и команды отладчика AMLI.
При отладке AML следует тщательно различать два различных типа запросов, которые будут отображаться в окне команды отладчика:
При появлении запроса kd> вы управляете отладчиком ядра. Доступны все стандартные команды и расширения отладчика ядра. Кроме того, доступны расширения отладчика AMLI. Эти расширения имеют синтаксис команды!amli. Команды отладчика AMLI недоступны в этом режиме.
Когда вы видите приглашение AMLI(? для справки)->, вы управляете отладчиком AMLI. (При использовании WinDbg эта строка появится в верхней области окна команды отладчика, а в нижней области появится запрос ввода> .) В этой строке можно ввести любую команду отладчика AMLI. Вы также можете ввести любое расширение отладчика AMLI; эти расширения не должны быть префиксированы !amli. Стандартные команды отладки ядра недоступны в этом режиме.
Если на экране нет никакого запроса, целевой компьютер работает.
В начале любого сеанса отладки необходимо задать параметры отладчика AMLI с расширением !amli set . verboseon, traceon и errbrkon также очень полезны. Следует рассмотреть возможность активации параметра spewon . Дополнительные сведения см. на странице документации по расширению.
Отладчик AMLI может стать активным несколькими способами:
Если обнаружена точка останова в AML-коде, ACPI перейдёт в отладчик AMLI.
Если в коде AML возникает серьезная ошибка или исключение (например, int 3), ACPI войдет в отладчик AMLI.
Если установлен параметр errbrkon, любая ошибка AML приведет к переходу ACPI в отладчик AMLI.
Если вы хотите намеренно войти в отладчик AMLI, используйте расширение !amli отладчика, а затем команду g (Go). При следующем выполнении интерпретатором любого кода AML отладчик AMLI активируется и возьмет контроль.
При появлении запроса отладчика AMLI можно ввести q , чтобы вернуться в отладчик ядра или ввести g , чтобы возобновить нормальное выполнение.
Следующие расширения особенно полезны для отладки AML:
Расширение !amli dns отображает пространство имен ACPI для определенного объекта, дерево пространства имен, подчиненное данному объекту, или даже целое дерево пространства имен. Эта команда особенно полезна при определении того, какой объект пространства имен является -- является ли он методом, полем, устройством или другим типом объекта.
Расширение !amli find принимает имя любого объекта пространства имен и возвращает полный путь.
Расширение !amli u выполняет разбор кода AML.
Расширение !amli lc отображает краткие сведения обо всех активных контекстах ACPI.
Расширение !amli r отображает подробные сведения о текущем контексте интерпретатора. Это полезно при появлении запроса отладчика AMLI после обнаружения ошибки.
Точки останова можно задать и контролировать в коде AML. Используйте !amli bp, чтобы задать точку останова, !amli bc, чтобы очистить точку останова, !amli bd, чтобы отключить точку останова, !amli be, чтобы повторно включить точку останова и !amli bl для перечисления всех точек останова.
Отладчик AMLI может выполнять, пошагово исполнять и трассировать через код AML. Используйте команды run, p и t для выполнения этих действий.
Полный список расширений и команд см. в разделе "Использование расширений отладчика AMLI " и "Использование команд отладчика AMLI".