DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 
Using SCODB

Symbols

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> &u
   E0000000        u      data
   debug0:5> &read
   D00A46D0        read    text
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.

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


© 2003 Caldera International, Inc. All rights reserved.
SCO OpenServer Release 5.0.7 -- 11 February 2003