HPlogo HP/DDE Debugger User's Guide: HP 9000 Series 700/800 Computers

Glossary

» 

Technical documentation

Complete book in PDF

 » Table of Contents

 » Glossary

 » Index

Symbols

`declared block 

Outer debugger block used to contain definitions of user-declared symbol names. You may explicitly refer to symbol names created using the declare command by using a block qualified name.


A

accelerator 

An OSF/Motif shortcut for choosing a selection from the menu bar or from a pull-down menu. An accelerator for a menu item is indicated by name after the menu item name. Unlike a mnemonic, an accelerator can invoke a command when the name of the command is not visible.


action list 

A series of debugger commands that is associated with a specific breakpoint, intercept, watchpoint, or trace request. The debugger executes an action list after executing up to the breakpoint, encountering a program event, detecting a change in the watched value, or encountering a trace request.


activation 

An instance of a block or variable created by the recursive invocation of a procedure or by multiple instances of a procedure in a multi-threaded application.


alias macro 

See macro.


Alt 

A key that, when used in combination with a mnemonic, opens a menu corresponding to a name on the menu bar. On a keyboard, the key may be ALT, Meta, or Extend char.


ancestor 

C and C++ only. Any function up the call chain from the current function. Ancestors include functions that either directly or indirectly call the current function.


annotation margin 

An area next to the Source File Area that contains line numbers, breakpoint symbols, and an arrow that indicates the current program counter location.


archive library 

A library that contains one or more object files and is created with the ar command. When linking an object file with an archive library, ld searches the library for global definitions that match up with external references in the object file. If a match is found, ld copies the object file containing the global definition from the library into the executable file. See shared library.


B

basic block 

A sequence of statements (or their corresponding instructions) that contains no branches. A branch is a change in the flow of control, such as an if, for, or do statement. A branch begins a new basic block.


block 

A program unit, such as a module, a main program, a subroutine, or a function. What constitutes a block depends on the language in which the program is written. A block defines and encloses a scope. The debugger also defines blocks called `declared (for user-declared symbols), `predefined (for data types for supported languages) and `image (for the program images).


block expression 

A block name, a file name, a class name, a template name, or a class object reference. For C++, a block expression can be any valid C++ expression that can be evaluated to one or more executable addresses or to a class type.


block qualified name 

A format used by the debugger to refer to variables that are not visible from the current environment. A block qualified name explicitly identifies the block enclosing the object and the object's name; the format is block\object_name.


breakpoint 

A monitor that, when encountered during program execution, stops execution and transfers control back to the debugger. A breakpoint is always associated with a particular address, which is either specified explicitly or implied by its association with a location.


buffer 

An area in memory used as a temporary storage area.


button 

In OSF/Motif, an icon, usually accessible by a mouse pointer, that starts an action. Radio buttons come in sets of two or more, each button representing a mutually exclusive selection.


C

check box 

In OSF/Motif, a square box on a dialog box. You may choose any number of items with check boxes.


command 

Commands tell the debugger which functions to perform. They can be spelled out or abbreviated. The abbreviation for most commands is the first three letters of each word in its name. Commands are terminated by a newline.


command list 

One or more debugger commands separated by semicolons (;) and enclosed in square brackets, braces, or parentheses. A command list lets you combine commands that require an EOL as a terminator with commands that are terminated with a semicolon on the command line.


continuation character 

A backslash character (\), which, when placed at the end of a command line, allows you to continue the command on the next line.


core file 

A memory image of an abnormally terminated process (see core(4)). This file contains sufficient information to determine what the process was doing at the time of its termination. It can be examined using the debugger to determine why the program failed.


critical point 

The instruction in the object code at which the most important action accomplished by a given source statement takes place. The critical point instruction is usually the instruction where a data value may change. Not every source code statement has a critical point; some statements have more than one critical point. Statements likely to have a critical point include assignment statements and function calls.


critical points location mapping 

In optimized code, a location mapping that maps a source statement to the critical point for that statement.


current environment 

See environment.


Current Location 

The location at which the debugger's attention is currently focused. The debugger uses the Current Location in the source code to determine, among other things, what source code to display and what block to use as the debugger's scope. The Current Location is also called the current environment.


current point of execution 

Program location where execution stopped. The statement at this location will, by default, be the next statement to be executed when execution resumes. Same as PC Location.


cursor 

The insertion point for text. The default cursor is a blinking vertical bar (on color displays) or a double wedge (on monochrome displays).

Also called the text cursor.


D

dead code 

One or more lines of source code that the optimizer has eliminated from the executable program because it is never actually executed.


Debugger Output Area 

An area of the main debugger window that displays debugger commands and debugger messages.


debugging information 

Name, type, source file, and source-line-to-address mapping information generated by the compiler for use by the debugger. This information can significantly increase the size of an executable file. All debugger information is preprocessed (and reduced in size) when the program is linked.


define macro 

See macro.


delay slot 

The instruction following a branch instruction. In PA-RISC assembly language, a branch instruction is paired with the instruction that follows it, and both are executed simultaneously. When you step through assembly code, this means that when you reach the branch instruction (the BL instruction in the following example), you do not immediately step into the routine read_sequence. Instead, you step to the next instruction (LDO), and the next time you step, both the branch and the load occur.

BL              read_sequence,%r2
LDO -272(%r30),%r24

dialog box 

In the OSF/Motif user interface, an interactive pop-up containing command options. Generated when a command is selected from a menu, a dialog box provides check boxes, input fields, and buttons that you use to select options, enter arguments, and execute or cancel the command.


double-click 

Click the mouse button twice in rapid succession.


drag 

To press and hold down a mouse button while moving the mouse.


E

environment 

A concept used by the debugger to determine what source code to display, what language to use when parsing expressions, and what blocks to search for objects. The run environment is the block containing the current point of execution. The current environment (also called the Current Location) is the run environment by default, but you can use the environment command to change the current environment to any block within the program.


environment variable 

A named variable that is passed to all processes created by the current shell. See your shell reference page sh(1), ksh(1) or csh(1) for information on setting and reading environment variables.


explicitly loaded shared library 

A shared library that is loaded by a call within your program to shl_load(3X) (on HP-UX systems) or dlopen(3X) (on Solaris systems).


expression 

A valid combination of data object names, language operators, and constant numeric values. Every expression is evaluated and reduced to a single value.


F

fragment 

In optimized code, a set of contiguous instructions in the object code that all derive from the same statement in the source code. See location mapping.


fragments location mapping 

In optimized code, a location mapping that maps a source statement to the fragment or fragments in the object code that correspond to that statement.


frame block qualified name 

A format used by the debugger to identify dynamically activated symbols within recursive procedures, by using both a block and a frame to specify the current environment.


fully qualified name 

A format used by the debugger to identify all blocks that enclose the object. A fully qualified name explicitly identifies the module and block enclosing the object and the object's name; the format is \\module\block\object_name.


H

HP Help System 

The online help system provided on HP-UX systems. You can obtain online help for the debugger by selecting the "Help" menu item. If you are not using the debugger, you can obtain help by clicking on the bookshelf icon on the front panel, then clicking on the Top Level icon to bring up the Help Manager window, and then selecting the debugger help.


I

identifier 

A sequence of characters that represents an entity such as a function or data object.


image 

A loaded executable file or shared library.


image qualified name 

A format used by the debugger to eliminate ambiguity among module names when an application consists of more than one executable image. An image qualified name explicitly identifies the image, module, and block enclosing the object and the object's name; the format is `image(image_name)\module\block\object_name.


implicitly loaded shared library 

A shared library that is linked against your program.


indirect pointers 

Pointers that address other pointers. Linked lists often use chains of pointers in their list structure.


Input Box 

A text area that can accept typed keystrokes.

The "( ):" Input Box is a text area in the main debugger window that provides input to some command buttons (such as Print ()) and many pull-down menu commands (such as "Break: Set at ( )" and "Visit: Line ( )"). You enter information in this Input Box either by typing or by selecting text in the source or I/O areas for use with these commands. Text can be selected either by dragging the mouse or by double-clicking.

The "Debugger Input:" Input Box is a text area in the main debugger window in which you enter commands to the debugger from the keyboard.


intercept 

A monitor that stops program execution when a specified program event occurs. Events that can be intercepted include operating-system signals, the loading or removing of images from a program's address space, and the termination of the program. By default, all operating-system signals are intercepted.


L

location 

A unique position in the user program. It can be specified as a file name, procedure name, source line number, or combination of these. An address can also be used to specify a location for certain commands.


location mapping 

A method of defining the relationship between the source code and the object code. When you debug optimized code, you can choose any of three location mappings. The source statement order location mapping (the default) maps a statement to an instruction so as to follow the order of statements in the source. The critical points location mapping maps a statement to the instruction at which some data value may change. The fragments location mapping maps each source statement to the first set of contiguous instructions that corresponds to it.


M

macro 

An identifier (optionally with arguments) that is defined as a substitute for commands or for text strings. The debugger supports both alias macros, which substitute for commands, and define macros, which substitute for any string of text, including commands.


main debugger window 

The window that contains the main menu bar, the "( ):" Input Box, the Source File Area, the Debugger Output Area, the "Debugger Input:" Input Box, and the User Program I/O Area.


menu bar 

In OSF/Motif, an area at the top of a window that contains the titles of the pull-down menus for that application.


mnemonic 

In OSF/Motif, an underscored letter in a menu name. You can bring up the associated menu by pressing Alt and the mnemonic.


monitor 

A software "trigger," such as a breakpoint, that interrupts target program execution and optionally describes the state of the target program after the interrupt. See breakpoint, trace, watchpoint, and intercept.


mouse button 

A key on the mouse that has some action associated with it when clicked. On a two-button mouse, middle button commands can be accessed by pressing both buttons at once.


mouse cursor 

See pointer.


P

path map 

A specification of the replacement of a previous path argument to the property sdir command by a new path argument. The new path argument replaces the old one as a directory prefix in the source file directory search path.


PC Location 

Program location where execution stopped. The statement at this location will, by default, be the next statement to be executed when execution resumes. Same as current point of execution.


pointer 

The screen object that tracks mouse movement. This is usually an arrow, but it can take other forms (such as ?) to indicate specific applicable areas. It may appear as a small hourglass to indicate that an application is busy or as something resembling a sonar wave to indicate that a request message is being processed.

Also called the mouse cursor.


process ID (pid) 

A unique identification number assigned to all processes by the operating system.


Q

qualified name 

The name of a variable, specified in a format that allows you to refer to variables in any scope. See block qualified name, frame block qualified name, fully qualified name, and image qualified name.


R

radio buttons 

An X construct consisting of several buttons representing several choices. Only one button may be selected at a time. When a button is selected, all other buttons are automatically deselected.


registers 

Hardware registers. Most of these are directly accessible by the debugger through symbolic names (for example, fr0). Many registers have special meaning; some cannot be modified by the debugger user. Actual modification of hardware registers should not normally be necessary while debugging. Correct program execution depends highly on registers and their contents.


resource 

A component of the X Window System resource data base. Resources control the appearance and behavior of parts of the system.


run environment 

See environment.


S

scope 

The region of source code over which a name's declaration is active.


scroll bar 

In OSF/Motif or the X Window System, a graphical device used to scroll data displayed in a window. A scroll bar consists of a slider, scroll area, and scroll arrows.


shared library 

Like an archive library, a shared library contains relocatable object code. However, ld treats shared libraries quite differently from archive libraries. When linking an object file with a shared library, ld does not copy object code from the library into the executable file; instead, the linker simply notes in the executable file that the code calls a routine in the shared library. The actual linkage does not occur until the program is run. Shared libraries can be implicitly or explicitly loaded.


shell 

An HP-UX command interpreter (Bourne, Korn, Key, Posix or C), providing a working environment interface for the user. The shell takes command input from the keyboard and interprets it for the operating system.


signal 

A software interrupt sent from the operating system to a program. This can inform the program of any asynchronous event. Signals are used for segment violation, divide by zero, or other hardware problems; they can also be sent as a job control mechanism (stop, continue, kill).


source 

Source text (files) used to compile the user program. Source files can be in any of the programming languages supported by the debugger.


Source File Area 

A text area in the main debugger window where a program source file is displayed.


source line 

A single line of text in a source file, denoted by a line number. A source line may or may not contain actual executable statements. Conversely, more than one statement can occur on a single line.


source statement order location mapping 

In optimized code, a location mapping that maps statements to instructions in a way that follows the order of the statements in the source code as closely as possible, even though the actual order of instruction execution does not follow that order. By default, the debugger uses this location mapping.


stack 

A linear data structure maintained by the user program for management of local data and flow of control during procedure calls. Each sequential region on the stack embodies information about a particular procedure. The preceding region (frame) describes its caller. At any point during execution, a stack trace (generated by the tb command) displays information contained in each stack frame.


standard input 

The source of input data for a program. The standard input file is often called stdin, and is automatically opened by the shell for reading on file descriptor 0 for every command invoked.


standard output 

The destination of output data from a program. The standard output file is often called stdout, and is automatically opened by the shell for writing on file descriptor 1 for every command invoked. Standard output appears on the display unless it is redirected otherwise.


startup files 

Files containing commands that specify the user interface, the target manager, and the debugging environment. At invocation, the debugger reads three startup files: a user interface startup file, a personal startup file, and a target manager startup file.


stub 

Stubs are short code segments that may be inserted into procedure calling sequences by the PA-RISC linker. Stubs are used for very specific purposes, such as inter-space (for example, shared library) calls, long branches, and preserving calling interfaces across modules (for example, parameter relocation). For more information on stubs, see the Procedure Calling Conventions Reference Manual.


T

target program 

The program that is currently being debugged.


text cursor 

See cursor.


thread 

A single flow of control in a process. A process may have multiple threads capable of executing at any time.

The HP/DDE debugger distinguishes between the current thread and the selected thread. The current thread is the thread that the debugger refers to when evaluating expressions. The selected thread is the thread that was running when execution stopped. the selected thread differs from the current thread when you change environments with the thread specifier `thread(n).


trace 

A monitor that stops execution momentarily, reports the current program location, then continues target program execution. You can specify whether a trace is in effect at every source statement, at every instruction, or only at routine entry and/or exit points.


typed pointers 

Pointers that have been declared with a specific type; for example, a pointer in C may be declared as a pointer to char and used for characters and strings.


U

unnamed block 

A block generated by the compiler, usually to enclose a new lexical scope that has no associated name. In a C++ program, it usually holds variables with declaration statement scope rather than function or class scope. In a C program, it usually holds variables defined in a block below that of the function.


user interface 

The medium through which users communicate with their workstations or with an application.


User Program I/O Area 

A text area in the main debugger window. Programs being debugged send their output to this area and take their input from this area. Move the mouse pointer into this area to enter text into the standard input of your program.


W

watchpoint 

A monitor that monitors a selected variable or address range and reports the value of the variable or address range only when that value changes. As with traces, you can specify whether a watchpoint is in effect at every source statement, at every instruction, or only at routine entry and/or exit points.


window 

A frame-defined, rectangular area of the screen used by the X Window System to contain a particular application or a command line. Windows can be moved, resized, iconized, and manipulated.