• symbol table meaning


    SYMBOL TABLE:
    00000000 l    df *ABS*  00000000 m.c
    00000000 l    d  .text  00000000 .text
    00000000 l    d  .data  00000000 .data
    00000000 l    d  .bss   00000000 .bss
    00000000 l    d  .note.GNU-stack        00000000 .note.GNU-stack
    00000000 l    d  .comment       00000000 .comment
    00000000 g     O .data  00000004 i
    00000004 g     O .data  00000004 j
    00000000 g     F .text  00000039 main
    00000000         *UND*  00000000 sum
     



    The other common output format, usually seen with ELF based files, looks like this:


              00000000 l    d  .bss   00000000 .bss
              00000000 g       .text  00000000 fred
         
    Here the first number is the symbol's value (sometimes refered to as its address). The next field is actually a set of characters and spaces indicating the flag bits that are set on the symbol. These characters are described below. Next is the section with which the symbol is associated or *ABS* if the section is absolute (ie not connected with any section), or *UND* if the section is referenced in the file being dumped, but not defined there.

    After the section name comes another field, a number, which for common symbols is the alignment and for other symbol is the size. Finally the symbol's name is displayed.

    The flag characters are divided into 7 groups as follows:

    l
    g
    u
    !
    The symbol is a local (l), global (g), unique global (u), neither global nor local (a space) or both global and local (!). A symbol can be neither local or global for a variety of reasons, e.g., because it is used for debugging, but it is probably an indication of a bug if it is ever both local and global. Unique global symbols are a GNU extension to the standard set of ELF symbol bindings. For such a symbol the dynamic linker will make sure that in the entire process there is just one symbol with this name and type in use.

    w
    The symbol is weak (w) or strong (a space).

    C
    The symbol denotes a constructor (C) or an ordinary symbol (a space).

    W
    The symbol is a warning (W) or a normal symbol (a space). A warning symbol's name is a message to be displayed if the symbol following the warning symbol is ever referenced.

    I

    i
    The symbol is an indirect reference to another symbol (I), a function to be evaluated during reloc processing (i) or a normal symbol (a space).

    d
    D
    The symbol is a debugging symbol (d) or a dynamic symbol (D) or a normal symbol (a space).

    F

    f

    O
    The symbol is the name of a function (F) or a file (f) or an object (O) or just a normal symbol (a space).
  • 相关阅读:
    ajax_注册
    mysql 二
    mysql基础
    django数据库批量创建
    私有属性
    mysql操作
    @property @classmethod @staticmethod
    python中的__new__方法
    员工信息表-装逼版
    三级菜单
  • 原文地址:https://www.cnblogs.com/odin-luyu/p/5371768.html
Copyright © 2020-2023  润新知