|
|
After SCODB is linked into a kernel, symbol table information is loaded into a SCODB memory space by the ldf program, which is executed by the ldsy script that the idbuild(ADM) command calls. The size of this memory area is defined by the SYMTSZ tunable parameter. The address of a symbol, and its segment type (data or text) can always be found using the C address-of operator (&):
debug0:4>If not in the varidef file, data symbols are assumed to be of type int, and text symbols are assumed to be of type int( ) (function returning an integer). This type can be modified using the declare command (see ``Displaying symbol and expression types''), or by the symbol being present in the varidef file.&u
E0000000 u data debug0:5>&read
D00A46D0 read text
If the symbol is a static text type, the equivalent address based on the previous global text symbol is also printed in parentheses, for example:
debug0:4> &no_eoi_slave
F00CA750 no_eoi_slave (cmnint+38) text
The value of a symbol with a value type
(in other words, not a structure or union)
can be given quite simply:
debug0:6> physmem
500
Be careful not to confuse the value of a symbol with its address:
debug0:6> &physmem
F015E3F8 physmem data