La herramienta de depuración en línea ( ODT ) se utilizó para describir varios programas de depuración desarrollados para hardware de Digital Equipment Corporation (DEC). Varios sistemas operativos, incluidos OS / 8 , RT-11 , RSX-11 y RSTS / E implementaron ODT, al igual que la consola de firmware de todos los procesadores de la familia LSI-11 , incluido el 11/03, 11/23/24, 11 / 53, 11/73 y 11/83/84.
El depurador permitió el acceso a la memoria utilizando direcciones y datos octales . Dentro de los sistemas de software , el depurador accedió al espacio de direcciones del proceso. La línea de procesadores PDP-11 de DEC no implementó memoria virtual, desde la perspectiva del sistema operativo, sino que trabajaba en un espacio de direcciones fijo, que se asignaba a una vista unificada del espacio de direcciones del programa, utilizando un Registro de página activo (APR). Un APR podría asignar la RAM del programa en incrementos de 4K palabras de 16 bits, hasta un máximo de 32K. En otras palabras, un APR podría mapear 8 segmentos de RAM, cada uno limitado a 4K. Debido a esta estructura, la RAM máxima que un APR pudo mapear fue de 32K palabras de 16 bits. En el caso de RSTS / E, esto generalmente significaba que un Runtime System, o RTS, mapeado en la parte superior del espacio de direcciones y un programa de usuario residía en la parte inferior del espacio de direcciones. El RTS proporcionó un código para respaldar el acceso al sistema operativo, en nombre del programa de usuario; el propio RTS almacenaba cualquiera de sus datos no estáticos en el espacio de direcciones del programa de usuario, porque el RTS solía ser de solo lectura. El sistema operativo cargó una única copia del RTS y esta se asignó a cualquier programa de usuario que requiriera ese RTS. El APR se establecería para mapear el RTS en la parte superior del espacio de direcciones del programa, en incrementos de 4K. Por lo tanto, el BASIC Plus RTS (para Basic + Programming Language) generalmente se asignó 16K a sí mismo y el programa de usuario se asignó, en incrementos de 4K, en los 16K inferiores. El RT11 RTS ocupaba 4K, por lo que un programa de usuario, como el Programa de intercambio de periféricos (PIP) basado en RT11, podría expandirse hasta un máximo de 28K.
ODT podría usarse para "parchear" módulos binarios, como un RTS, sin requerir la recompilación de la fuente del binario.
La implementación de la consola de firmware accedió a la memoria física .
ODT es un depurador no simbólico e implementa una funcionalidad similar a Advanced Debugger (adb) en sistemas Unix .
Consola ODT
La consola ODT [1] reemplazó la consola de luces e interruptores de muchos de los procesadores anteriores.
El acceso a la consola ODT se obtiene desde el encendido (con el modo de encendido apropiado seleccionado), mediante la ejecución de una instrucción HALT en modo kernel o mediante el uso del interruptor o botón de parada del panel frontal.
Ejemplo
@ 1000 / xxxxxx 112737001002 xxxxxx 101 001004 xxxxxx 177566 001006 xxxxxx 137 001010 xxxxxx 1000 > R7 / xxxxxx 1000 > RS / 340
Esto deposita el programa
MOVB 'A' , @ # 177566 ; Mueva 'A' al registro de transmisión de la consola JMP @ # 1000 ; Salta hacia atrás para empezar
El depósito en la PC [Contador de programas], configura la PC al inicio del programa y el depósito en la PSW [Palabra de estado del programa] bloquea las interrupciones.
El efecto de esto será escribir una secuencia de "A" en la consola. Como no hay ninguna verificación de que el transmisor esté listo, es muy probable que se muestre una gran cantidad de caracteres basura.
RSX-11M-Plus ODT
El RSX-11M-Plus ODT [2] es esencialmente un superconjunto de todas las demás implementaciones de ODT.
ODT se implementa como código que está vinculado con una tarea mediante el modificador Task Builder / DA.
TKB HOLA / DA, HOLA / CR = HOLA
Una vez que se ejecuta cualquier tarea construida con ODT, se invoca a ODT en la entrada.
CORRE HOLAODT: TT0_
El guión bajo es el indicador ODT estándar.
Las direcciones en el depurador ODT son direcciones de 16 bits en el modo en que ODT está operando, no las direcciones físicas utilizadas con la consola ODT.
Técnica de depuración octal de OS / 8
El PDP-8 's OS / 8 comando ODT del sistema operativo [3] invocó su técnica de depuración Octal herramienta.
Al igual que con los siguientes programas PDP-11 ODT, no era simbólico y podía examinar o modificar la memoria y también establecer puntos de interrupción.
Ver también
- Técnica de depuración dinámica (DDT)
- Técnica de depuración ejecutiva (XDT)
Referencias
- ^ p192-202 Manual del procesador PDP-11: pdp11 / 04/24 / 34a / 44/70 , Digital, 1981
- ^ Manual de referencia de IAS / RSX-11 ODT , número de pedido AA-M507A-TC, Digital, 1982
- ^ Manual de referencia DEC-D8-COCO-D, ODT-8, diciembre de 1967 "DEC-D8-COCO-D ODT.pdf" (PDF) . BitSavers.org .