Solaris Modular Debugger Guide


A variable is a variable name, a corresponding integer value, and a set of attributes. A variable name is a sequence of letters, digits, underscores, or periods. A variable can be assigned a value using the > dcmd or ::typeset dcmd, and its attributes can be manipulated using the ::typeset dcmd. Each variable's value is represented as a 64-bit unsigned integer. A variable can have one or more of the following attributes: read-only (cannot be modified by the user), persistent (cannot be unset by the user), and tagged (user-defined indicator).

The following variables are defined as persistent:


Most recent value printed using the /, \, ?, or = dcmd


Most recent count used with the $< dcmd


Virtual address of the base of the data section


Size of the data section in bytes


Virtual address of the entry point


The count of the number of times the matched software event specifier has been matched. See Event Callbacks.


Initial bytes (magic number) of the target's primary object file, or zero if no object file has been read yet


Size of the text section in bytes


The thread identifier of the current representative thread. The value of the identifier depends on the threading model used by the current target. See Thread Support.

In addition, the MDB kernel and process targets export the current values of the representative thread's register set as named variables. The names of these variables depend on the target's platform and instruction set architecture.