Guardian Procedure Calls Reference Manual (G06.25+)
Guardian Procedure Calls (P)
Guardian Procedure Calls Reference Manual—522629-013
12-56
PROCESS_DEBUG_ Procedure
Considerations
•
The caller of PROCESS_DEBUG_ must be the super ID, the group manager of the
process access ID, or a process with the same process access ID as the specified
process or process pair. For information about the process access ID, refer to the
description under “Considerations” for the PROCESS_GETINFO_ procedure and
the
Guardian User’s Guide.
The caller must be local to the same system as the specified process. A process
is considered to be local to the system on which its creator is local. A process is
considered to be remote, even if it is running on the local system, if its creator is
remote. (In the same manner, a process running on the local system whose
creator is also running on the local system might still be considered remote
because it’s creator’s creator is remote.)
A remote process running on the local system can become a local process by
successfully logging on to the local system with a call to the
USER_AUTHENTICATE_ procedure (or VERIFYUSER). After a process logs on
to the local system, any processes that it creates are considered local.
•
While a process is in the debug state, you can interactively display and modify the
contents of its registers and data area, and set breakpoints. To debug a program,
you must have execute access to run the program and read access to the program
file.
•
In addition to placing an explicit call to the PROCESS_DEBUG_ (or DEBUG)
procedure in the source program, you can force a process into the debug state by:
•
Starting the process using the TACL RUND (RUN DEBUG) command. The
process enters the debug state before the first instruction of the MAIN
procedure executes.
•
Starting the process with a call to PROCESS_CREATE_,
PROCESS_SPAWN_, NEWPROCESS, NEWPROCESSNOWAIT, OSS
tdm_fork(), OSS tdm_spawn(), or one of the OSS tdm_exec set of
functions, and setting the appropriate option. The process enters the debug
state before the first instruction of the MAIN procedure executes.
•
Starting the process from the command interpreter. While the process is
executing, press the BREAK key. The command interpreter returns to the
command input mode. Find the
cpu,pin of the process and type in DEBUG
cpu,pin, or find the name of the process (if it is named) and type in DEBUG
process-name.
•
Issuing a DEBUG command to a command interpreter on another local
terminal while the process is executing. Find the
cpu,pin of the process and
type in DEBUG
cpu,pin, or find the name of the process (if it is named) and
type in DEBUG
process-name.
•
Specifying a breakpoint when a process is in the debug state. When the
breakpoint is reached, the process enters the debug state.