Uso de comandos del depurador de AMLI
Los comandos siguientes se pueden emitir desde el símbolo del depurador de AMLI.
Categoría General | Acción específica | Comandos del depurador de AMLI |
---|---|---|
Controlar el depurador |
Continuar la interrupción de ejecución en el depurador de kernel | gq |
Control de la ejecución de AML |
Ejecutar paso a paso por encima del seguimiento de código de AML en código AML | ejecutarpt |
Controlar la configuración del modo de seguimiento |
Configurar el modo de seguimiento |
seguimiento |
Notificación de un objeto de espacio de nombres |
Notify Namespace (objeto) |
notificar |
Mostrar la tabla de recuento de objetos |
Mostrar tabla de recuento de objetos |
dc |
Acceso a la memoria |
Mostrar datos Mostrar bytes de datos Mostrar palabras de datos Mostrar datos DWORDs Mostrar memoria de edición de cadena de datos | ddbdwdddae |
Acceso a puertos |
Leer byte desde el puerto Leer word desde el puerto Read DWORD del puerto Escribir byte en el puerto Escribir palabra en el puerto escribir DWORD en el puerto | iwidoowod |
Mostrar ayuda |
Mostrar ayuda |
? |
Control del depurador
Estos comandos salen del depurador de AMLI. El comando g reanudará la ejecución normal del equipo de destino y el comando q inmovilizará el equipo de destino y se interrumpirá en el depurador de kernel.
g
t
Control de la ejecución de AML
Estos comandos permiten ejecutar o recorrer paso a paso métodos AML. El comando run inicia la ejecución en un punto especificado. Los comandos p y t permiten recorrer paso a paso una instrucción a la vez. Si se encuentra una llamada de función, el comando p trata la función como un solo paso, mientras que el comando t realiza un seguimiento de la nueva función una instrucción cada vez.
run MethodName [ArgumentList]
ejecutar CodeAddress [ArgumentList]
p
t
MethodName
Especifica la ruta de acceso completa y el nombre de un método. La ejecución se iniciará al principio de la ubicación de memoria de este método.
CodeAddress
Especifica la dirección donde se va a iniciar la ejecución.
ArgumentList
Especifica una lista de argumentos que se van a pasar al método . Cada argumento debe ser un entero. Se deben separar varios argumentos con espacios.
Controlar la configuración del modo de seguimiento
El comando de seguimiento controla la configuración del modo de seguimiento del intérprete de AML. Si este comando se usa sin parámetros, se mostrará la configuración del modo de seguimiento actual.
trace [trigon|trigoff] [level=Level] [add=TPStrings] [zap=TPNumbers]
Trigon
Activa el modo de desencadenador de seguimiento.
trigoff
Desactiva el modo de desencadenador de seguimiento.
Nivel
Especifica la nueva configuración para el nivel de seguimiento.
TPStrings
Especifica uno o varios puntos de desencadenador que se van a agregar. Cada punto de desencadenador se especifica por nombre. Varias cadenas de punto de desencadenador deben estar separadas por comas.
TPNumbers
Especifica uno o varios puntos de desencadenador que se van a eliminar. Cada punto de desencadenador se especifica por número. Varios números de punto de desencadenador deben estar separados por comas. Para ver una lista de números de punto de desencadenador, use el comando trace sin parámetros.
Notificación de un objeto de espacio de nombres
El comando notify envía una notificación a un objeto de espacio de nombres ACPI. La notificación se colocará en la cola del objeto especificado.
notify ObjectName Value
notify ObjectAddress Value
ObjectName
Especifica la ruta de acceso completa del espacio de nombres del objeto que se va a notificar.
ObjectAddress
Especifica la dirección del objeto que se va a notificar.
Valor
Especifica el valor de notificación.
Mostrar la tabla de recuento de objetos
El comando dc muestra la tabla de recuento de objetos de memoria.
dc
Acceso a la memoria
Los comandos de acceso a memoria permiten leer y escribir en la memoria. Al leer la memoria, puede elegir el tamaño de las unidades de memoria con el comando db, dw, dd o da . Un comando d simple muestra memoria en las unidades elegidas más recientemente. Si se trata del primer comando para mostrar usado, se usan unidades de bytes.
Si no se especifica ninguna dirección o método, la pantalla comenzará donde finalizó el comando de visualización anterior.
Estos comandos tienen el mismo efecto que los comandos de memoria del depurador de kernel estándar; se duplican en el depurador de AMLI para facilitar el acceso.
d[b|w|d|a] [ [l=Length] [ Método | [%%]Dirección ] ]
e [%%]Address Datalist
b
Especifica que los datos deben mostrarse en unidades de bytes.
t
Especifica que los datos deben mostrarse en unidades de palabra (16 bits).
d
Especifica que los datos deben mostrarse en unidades DWORD (32 bits).
a
Especifica que los datos se deben mostrar como una cadena. Los datos se muestran como caracteres ASCII. La pantalla finaliza cuando se lee un carácter NULL o cuando se muestran caracteres de longitud .
Duración
Especifica el número de bytes que se van a mostrar. La longitud debe ser un número hexadecimal (sin un prefijo 0x ). Si se omite Length , el tamaño de presentación predeterminado es 0x80 bytes.
Método
Especifica la ruta de acceso completa y el nombre de un método. La pantalla se iniciará al principio de la ubicación de memoria de este método.
Dirección
Especifica la dirección de memoria en la que se iniciará la lectura o escritura. Si la dirección tiene el prefijo dos por ciento de signos (%%), se interpreta como una dirección física. De lo contrario, se interpreta como una dirección virtual.
DataList
Especifica los datos que se van a escribir en la memoria. Cada elemento de la lista puede ser un byte hexadecimal o una cadena. Cuando se usa una cadena, debe incluirse entre comillas. Varios elementos deben estar separados por espacios.
Acceso a puertos
Los comandos de puerto permiten enviar la salida o recibir la entrada de un puerto de datos. Los comandos i y o transfieren bytes únicos, los comandos iw y ow transfieren palabras (16 bits) y los comandos id y od transfieren DWORDS (32 bits).
Estos comandos tienen el mismo efecto que los comandos de puerto del depurador de kernel estándar; se duplican en el depurador de AMLI para facilitar el acceso.
i Port
Puerto de iw
id Port
o Port DataForPort
ow Port DataForPort
od Port DataForPort
Puerto
Especifica la dirección del puerto al que se va a acceder. El tamaño del puerto debe coincidir con el comando elegido.
DataForPort
Especifica los datos que se van a escribir en el puerto. El tamaño de estos datos debe coincidir con el comando elegido.
Mostrar ayuda
Este comando muestra texto de ayuda para los comandos del depurador de AMLI.
? [Comando]
Comando
Especifica el comando para el que se va a mostrar la ayuda. Si se omite, se muestra una lista de todos los comandos del depurador de AMLI y las extensiones del depurador de AMLI.