Using the Process Window
The Process Window contains various panes that display the code for the process or thread that you’re debugging, as well as other related information. The large scrolling list in the middle is the Source Pane. (The contents of these panes are discussed later in this section.)
As you examine the Process Window, notice the following:
The thread ID shown in the Root Window and in the process’s Threads Tab with the Tabs Pane is the logical thread ID (TID) assigned by TotalView and the system-assigned thread ID (SYSTID). On systems where the TID and SYSTID values are the same, TotalView displays only the TID value.
In other windows, TotalView uses the pid.tid value to identify a process’s threads.
The Threads Tab shows the threads that currently exist in a process. When you select a different thread in this list, TotalView updates the Stack Trace, Stack Frame, and Source Panes to show the information for that thread. When you dive on a different thread in the thread list, TotalView finds or opens a new window that displays information for that thread.
The Stack Trace Pane shows the
call stack of routines that the selected thread is executing. You can move up and down the
call stack by clicking on the routine’s name (stack
frame). When you select a different stack frame, TotalView updates the Stack Frame and Source Panes with the information about the routine you just selected.
The Stack Frame Pane displays all a routine’s parameters, its local variables, and the registers for the selected stack frame.
The information displayed in the Stack Trace and Stack Frame Panes reflects the state of a process when it was last stopped. Consequently, the information is not up-to-date while a thread is running.
The left margin of the
Source Pane displays line numbers and
action point icons. You can place a
breakpoint at any line whose line number is contained within a box indicating that this is executable code.
When you place a breakpoint on a line, TotalView places a
icon over the line number. An arrow over the line number shows the current location of the program counter (PC) in the selected stack frame.
Each thread has its own unique program counter (PC). When you stop a multi-process or multi-threaded program, the routine displayed in the Stack Trace Pane for a thread depends on the thread’s PC. Because threads execute asynchronously, threads are stopped at different places. (When your thread hits a breakpoint, the default is to stop all the other threads in the process as well.)
The tabbed area at the bottom contains a set of tabs whose information you can hide or display as needed. In addition, the
P+,
P-,
T+, and
T- buttons within this area allow you to change the Process Window’s context by moving to another process or thread.
The Action Points Tab with the Tabs Pane shows the list of breakpoints, eval points, and watchpoints for the process. The Processes/Ranks tab displays a grid of all of your program’s processes. The grid’s elements show process status and indicate the selected group. Selecting a process switches the context to the first thread in that process.
The Threads Tab shows each thread and information about the thread. Selecting a process switches the context to that thread.