Подтвердить что ты не робот

Что означает каждый столбец символов objdump Symbol?

SYMBOL TABLE:
0000000000000000  w      *UND*  0000000000000000              __gmon_start__

У меня man objdump, но такой информации нет.

Кто-нибудь знает, что означают столбцы 5?

4b9b3361

Ответ 1

COLUMN ONE: значение символа

COLUMN TWO: набор символов и пробелов, указывающих биты флага, которые установлены на символе. Существует семь групп, которые перечислены ниже:

group one: (l, g,!) локальный, глобальный, ни один, оба.

группа вторая: (w,) слабый или сильный символ.

группа три: (C,) символ обозначает конструктор или обычный символ.

группа четыре: (W,) символ является предупреждением или нормальным символом.

группа пять: (I,) косвенная ссылка на другой символ или обычный символ.

группа шесть: (d, D,) отладочный символ, динамический символ или обычный символ.

group seven: (F, f, O,) - имя функции, файла, объекта или обычного символа.

COLUMN THREE: раздел, в котором живет символ, ABS означает, что он не связан с определенной секцией

COLUMN FOUR: размер или выравнивание символа.

COLUMN FIVE: имя символа.

Если вы хотите получить дополнительную информацию, попробуйте man-страницу;-) или следующие ссылки: http://manpages.ubuntu.com/manpages/intrepid/man1/objdump.1.html и http://sourceware.org/binutils/docs/binutils/objdump.html

Ответ 2

Поскольку ни один из предыдущих ответов не кажется правильным, вот что вы на самом деле ищете:

Вот фрагмент этой который может помочь:

"Другой общий формат вывода, обычно используемый с файлами на основе ELF, выглядит следующим образом:

      00000000 l    d  .bss   00000000 .bss
      00000000 g       .text  00000000 fred

Здесь первое число - это значение символа (иногда называемое его адресом). Следующее поле представляет собой набор символов и пробелов, обозначающих биты флага, которые установлены на символе. Эти символы описаны ниже. Далее следует раздел, с которым ассоциирован символ, или ABS, если секция является абсолютной (т.е. не связана с какой-либо секцией), или UND, если раздел ссылается на файл, который сбрасывается, но не определен там.

После названия раздела появляется другое поле, число, которое для общих символов является выравниванием, а для другого символа - размером. Наконец, отображается имя символа.

Ответ 3

objdump -t печатает записи таблицы символов файла.
Результат аналогичен информации, предоставленной программой nm.

В выводе 7 столбцов:

  • значение
  • класса
  • типа
  • размер
  • строка
  • раздел
  • имя-символа

(некоторые столбцы могут быть пустыми для некоторых записей)

objdump печатает имя-символа в столбце слева..
nm печатает имя-символа в столбце справа.

Ответ 5

Из описания опции -t в справочных страницах objdump из man7.org формат объясняется следующим образом:

Другой распространенный формат вывода, обычно встречающийся в файлах на основе ELF, выглядит следующим образом:

              00000000 l    d  .bss   00000000 .bss
              00000000 g       .text  00000000 fred
  • Здесь первое число - это значение символа (иногда его называют адресом).
  • Следующее поле на самом деле представляет собой набор символов и пробелов, указывающих биты флага, которые установлены на символе. Эти символы описаны ниже.
  • Далее следует раздел, с которым связан символ, или * ABS *, если раздел является абсолютным (т.е. Не связан с каким-либо разделом), или * UND *, если раздел указан в файле, который был выгружен, но не определен там.
  • После имени раздела следует другое поле, число, которое для общих символов является выравниванием, а для другого символа - размером. Наконец отображается имя символа.

Вы можете посетить вышеуказанный сайт для более подробного описания.