Debug Manual
Table Of Contents
- What’s New in This Manual
- About This Manual
- 1 Introduction
- Execution Modes on TNS/R Systems
- What User Access Is Required for Debugging
- How to Make a Process Enter Debug
- How to Select Debug as the Debugger
- Why a Process Enters Debug
- How to Determine Process State on a Trap or Signal
- Ending a Debug Session
- What Appears in the Debug Header Message
- How to Use Debug
- How Debug Breakpoints Work
- 2 Using Debug on TNS/R Processors
- 3 Debug Command Overview
- 4 Debug Commands
- Command Summary
- A Command
- AMAP Command
- B Command
- BASE Command
- BM Command
- C Command
- CM Command
- D Command
- DJ Command
- DN Command
- EX[IT] Command
- F[ILES] Command
- FC Command
- FN Command
- FNL Command
- FREEZE Command
- HALT Command
- H[ELP] Command
- I Command
- IH Command (TNS/R Native and OSS Processes)
- INSPECT Command
- LMAP Command
- M Command
- MH Command (TNS/R Native and OSS Processes)
- P[AUSE] Command
- PMAP Command (Accelerated Programs)
- PRV Command
- R Command
- S[TOP] Command
- T Command
- V Command
- VQ Command
- VQA Command
- = Command
- ? Command
- A Error Messages
- B ASCII Character Set
- C Command Syntax Summary
- Register Syntax
- Expression Syntax
- Address Syntax
- A Command
- AMAP Command
- B Command
- BASE Command
- BM Command
- C Command
- CM Command
- D Command
- DJ Command
- DN Command
- EX[IT] Command
- F[ILES] Command
- FC Command
- FN Command
- FNL Command
- FREEZE Command
- HALT Command
- H[ELP] Command
- I Command
- IH Command
- INSPECT Command
- LMAP Command
- M Command
- MH Command
- Output-Device Syntax
- P[AUSE] Command
- PMAP Command
- PRV Command
- R Command
- S[TOP] Command
- T Command
- V Command
- VQ Command
- VQA Command
- = Command
- ? Command
- D Session Boundaries
- E Correspondence Between Debug and Inspect Commands
- F Sample Debug Sessions
- Glossary
- Index

Introduction
Debug Manual—421921-003
1-14
Necessary Compiler Listing
Example:
RUND \sysb.$vol3.subv4.oprog / NAME $pro1 /
To debug remotely, you use the same commands discussed under How to Make a
Process Enter Debug on page 1-2. Specifically, the commands and procedures are:
Necessary Compiler Listing
To debug a program, you need a compiler listing of the program. As your
source-language compiler permits, you should specify these compiler directives:
Programmers familiar with the machine instructions might find a listing of the
instruction codes helpful. These source-language compiler directives enable the listing
of instruction codes:
How Debug Breakpoints Work
A breakpoint is a location (or “point”) in your program where you want to suspend
execution so that you can then examine and perhaps modify the program’s state.
Example of a Code Breakpoint
For a code breakpoint, you specify a location in the code area where you want the
process to enter the debug state just before execution of that code. The operating
Figure 1-2. Debugging a Remote Process
Commands RUND and DEBUG entered from the command interpreter
Procedures PROCESS_LAUNCH_, PROCESS_DEBUG_, and
DEBUGPROCESS
?LIST Lists the source program and enables other listings
?MAP Specifies maps of the identifiers used in the source program
?LMAP* Specifies a map of procedure entry points
?CODE Lists instruction codes in octal for entire procedures
?ICODE Lists instruction code mnemonics for entire procedures
?INNERLIST Lists instruction code after each statement
VST0102.vsd
$PRO1
Home
Terminal
$HT
\SYSA \SYSB