
a
adb(1) | adb(1) |
On entry, the following named variables are set from the coreheaders in the cor®l. If cor®l does not appear to be a core ®le, these values are set from obj®l.
bThe base address of the data segment.
dThe data segment size.
sThe stack segment size.
tThe text segment size.
The following variables are set from obj®l.
eThe entry point.
mThe "magic" number as de®ned in <magic.h>.
Addresses
The ®le address associated with a written address is determined by a mapping described below; see $m. Both the obj®l mapping and the default cor®l mapping are represented by two triples (b1, e1, f1) and (b2, e2, f2). The initial mapping for a valid cor®l contains a triple for each segment (coreheader).
The ®le address corresponding to a written address is calculated as follows:
If
b1 <= address < e1, then ®le address = address + f1 − b1.
Otherwise, if
b2 <= address < e2, then ®le address = address + f2 − b2.
Otherwise, the requested address is not valid. For a valid cor®l, this pattern repeats as many times as there are segments (coreheaders) in the cor®l, rather than twice. If ? or / is followed by *, only the second triple is used, or (when using the initial mapping of a valid cor®l) only segments with a CORE_STACK coreheader.
The initial setting of both mappings is suitable for normal a.out and core ®les. If either ®le is not of the kind expected, adb sets b1 to 0, e1 to the maximum ®le size, and f1 to 0; in this way the entire ®le can be examined with no address translation.
adb keeps all appropriate values as signed
EXTERNAL INFLUENCES
International Code Set Support
Single- and
RETURN VALUE
adb comments about inaccessible ®les, syntax errors, abnormal termination of commands, etc. It echoes adb when there is no current command or format. Exit status is 0, unless the last command failed or
Section 1−8 | − 6 − |