Instrucciones para utilizar la herramienta idbx para depurar un programa desde la línea de mandatos.
Acerca de esta tarea
El usuario puede ejecutar la herramienta idbx invocando el mandato "idbx" en el indicador de mandatos. Esto
permitirá al usuario depurar un programa sin utilizar un entorno de trabajo de interfaz de usuario.
- Lista de mandatos
- assign <variable> = <expresión>
- Asignar el valor de la expresión a la variable.
- clear <número-línea>
- Eliminar todos los puntos de interrupción y rastreos en un número de línea dado.
Nota: Vea también delete.
- cont <número-señal>
- cont <nombre-señal>
- Continuar la ejecución desde donde se detuvo. Si se especifica una señal, el proceso continúa como si hubiera
recibido la señal. De lo contrario, el proceso continúa como si no se hubiera detenido.
- delete <número-estado>
- delete all
- delete tskip [ for t<número-hebra> ]
- Se eliminan los rastreos o las detenciones correspondientes a los números dados o el recuento de tskip restante
para la hebra especificada. Los números asociados con rastreos, detenciones y los recuentos de tskip de hebra restantes
se pueden imprimir con el mandato "status".
- disable <número-estado>
- disable
- Se inhabilitan los rastreos o las detenciones correspondientes a los números dados.
Los números asociados a los rastreos y las detenciones se pueden imprimir con el mandato
"status".
- down
- down <recuento>
- up
- up <recuento>
- Subir o bajar la función actual, que se utiliza para resolver nombres, un número <recuento> de niveles en la
pila. El <recuento> predeterminado es uno.
- enable <número-estado>
- enable all
- Se habilitan los rastreos o las detenciones correspondientes a los números dados.
Los números asociados a los rastreos y las detenciones se pueden imprimir con el mandato
"status".
- goto <número-línea>
- goto "<nombre-archivo>" : <número-línea>
- gotoi <dirección>
- Cambiar contador de programa a <dirección> o a una dirección cerca de <número-línea>.
La variable unsafegoto debe establecerse si se desea un goto fuera de la función actual.
- help
- help [> <nombre-archivo> ]
- help <mandato> [> <nombre-archivo> ]
- help <tema> [> <nombre-archivo> ]
- Imprimir información sobre el mandato o el tema. (Puede abreviarse la serie que describe un tema.) Se pueden
paginar los mensajes largos utilizando el alias "pg" predeterminado. Por ejemplo: "pg" (help set_variables).
Nota: "pg"
no está soportado actualmente.
Nota: La redirección a un archivo no está soportada actualmente.
- list [ <número-línea-fuente> [, <número-línea-fuente> ]]
- list <procedimiento>
- Lista las líneas en el archivo origen actual desde el primer número de línea al segundo ambos inclusive. Si no se
especifican líneas, se listan las 10 líneas siguientes. Si el nombre de un procedimiento o una función, se listan las
líneas n-k a n+k donde n es la primera sentencia del procedimiento o la función y k está definido por listwindow.
- listi
- listi [ <dirección> [ , <dirección> ]]
- listi at <número-línea-fuente>
- listi <procedimiento>
- Listar las instrucciones de la ubicación del contador de programa actual o la dirección dada, el número de línea o
el procedimiento dados. El número de instrucciones impreso lo controla la variable interna de dbx listwindow.
- move <número-línea-fuente>
- Cambiar la línea siguiente a visualizar por el mandato list a número-línea-fuente
- next
- next <recuento>
- Ejecutar hasta la línea siguiente. Si se proporciona un recuento, ejecutar ese número de líneas siguientes. La
diferencia entre esto y "step" es que si la línea contiene una llamada a un procedimiento o a una función, el mandato
"step" se detendrá al principio de ese bloque, mientras que el mandato "next" no lo hará.
- nexti
- nexti <recuento>
- Un solo paso como en "next", pero realizar una sola instrucción en lugar de una línea fuente. Si se proporciona un
recuento, ejecutar ese número de instrucciones siguientes.
- print <expresión> [ , <expresión> ]
- print <procedimiento (<parámetros>)
- Imprime el valor de la expresión especificada. Los valores de registros generales y de registros de coma flotante
también se pueden imprimir mediante este mandato.
- "print <procedimiento> (<parámetros>)" ejecuta el código de objeto asociado al procedimiento e imprime
el valor de retorno.
- Los nombres se resuelven primero mediante el ámbito estático de la función actual y a continuación se utiliza el
ámbito dinámico si el nombre no está definido en el ámbito estático. Si las búsquedas estática y dinámica no
proporcionan un resultado, se elige un símbolo arbitrario y se imprime el mensaje "[utilizando
<nombre-calificado>]". El procedimiento de resolución de nombres se puede sobrescribir calificando un
identificador con un nombre de bloque, p. ej. "variable.módulo". Para C, los archivos fuente se tratan como módulos
llamados por el nombre de archivo sin ".c"
- prompt
- prompt "serie"
- Visualiza la solicitud dbx o cambia la solicitud a "serie".
- quit
- Salir de dbx (programa terminado).
- registers
- Imprime el contenido de todos los registros generales, los registros de control del sistema, los registros de coma
flotante y el registro de instrucción actual.
Para visualizar registros de coma flotante, utilice el submandato de dbx "unset noflregs".
- Los registros se pueden visualizar o asignar individualmente mediante los nombres de registro predefinidos
siguientes: r0 a través de $r31 para los registros de propósito general, fr0 a $fr31 para los registros de coma
flotante, sp, iar, cr, link para, respectivamente, el puntero de pila, el contador del programa, el registro de
condiciones y el registro de enlaces.
- run [<argumentos>] [< <nombre-archivo> ] [> <nombre-archivo> ]
- [>> <nombre-archivo> ] [>! <nombre-archivo> ]
- [2> <nombre-archivo> ] [2>> <nombre-archivo> ]
- [>& <nombre-archivo> ] ]>>& <nombre-archivo> ]
- rerun [<argumentos>] [< <nombre-archivo> ] [> <nombre-archivo>
]
- [>> <nombre-archivo> ] [>! <nombre-archivo> ]
- [2> <nombre-archivo> ] [2>> <nombre-archivo> ]
- [>& <nombre-archivo> ] ]>>& <nombre-archivo> ]
- Empezar a ejecutar el archivo de objeto, pasar argumentos como argumentos de línea de mandatos; < o > se
pueden utilizar para redirigir la entrada o la salida de forma parecida a shell. Cuando se utiliza "rerun" sin ningún
argumento, la lista de argumentos anterior se pasa al programa; de lo contrario, es idéntico a run.
Nota: Los argumentos
para los mandatos run y rerun no están soportados actualmente.
- return
- return <procedimiento>
- Continuar hasta que se ejecuta un retorno a <procedimiento> o hasta que el procedimiento actual retorna si no
se especifica ninguno.
- set <nombre>
- set <nombre> = <expresión>
- El mandato set define valores para variables de dbx. Los nombres de estas variables no pueden presentar un
conflicto con los nombres del programa que se está depurando y se expanden a la expresión correspondiente dentro de
otros mandatos.
Utilice "unset" para eliminar una definición de variable establecida. Vea también "help set_variables" para conocer las
definiciones de variables establecidas predefinidas.
- skip [<número>]
- Reanudar e ignorar el punto de interrupción siguiente. Si se proporciona un "número", ignorar los "número" puntos
de interrupción siguientes.
- status [> <nombre-archivo> ]
- status more [> <nombre-archivo> ]
- Visualizar los mandatos de rastreo y detención activos actualmente con los submandatos de dbx asociados y los
recuentos de tskip de hebra restantes.
- step
- step <recuento>
- Ejecutar una línea. Si se proporciona un recuento, ejecutar ese número de líneas siguientes. La diferencia entre
esto y "next" es que si la línea contiene una llamada a un procedimiento o a una función, el mandato "step"
especificará ese procedimiento o esa función, mientras que el mandato "next" no lo hará.
Nota: Consulte también:
set_variables stepignore.
- stepi
- stepi <recuento>
- Ejecutar una sola instrucción. Si se proporciona un recuento, ejecutar las instrucciones de recuento siguientes.
- !stop if <condición>
- stop at <número-línea> ![if <condición>]
- stop in <procedimiento> ![if <condición>]
- !stop <variable> [if <condición>]
- !stop <variable> at <número-línea> [if <condición>]
- !stop <variable> in <procedimiento> [if <condición>]
- !stop on load ["<módulo>"] [if <condición>]
- !stop on load ["<módulo>(<miembro>)"] [if <condición>]
- Detener la ejecución cuando se alcanza la línea dada, el procedimiento o la función especificados, la variable
cambiada, el módulo cargado o descargado o la condición true.
Nota: ! no está soportado actualmente.
- unset <nombre>
- Eliminar la definición para <nombre>
- whatis <nombre>
- Imprimir la declaración del nombre dado.
- where [startframe endframe] [> <nombre-archivo>]
- Imprimir un rastreo de pila de los procedimiento y las funciones activos asociados con los números de marco
startframe a endframe. Establezca stack_details para un rastreo de pila verboso.
- visual <nombre-host> <número-puerto>
- Adjuntar el depurador IDBX a un entorno de trabajo de interfaz de usuario en el host y el puerto especificados del
daemon de la interfaz de usuario.