0
ответов

Какое состояние регистров по умолчанию при запуске программы (asm, linux)?

Когда программа запускается (linux, elf) - есть ли нули в eax, ebx и т.д. или там может быть что угодно (я не делаю никаких вызовов и не использую внешние библиотеки)? На моей машине это действительно так, могу ли я передать ...
вопрос задан: 5 February 2012 07:06
0
ответов

Перечислить все разделы ELF всех общих загруженных в настоящее время объектов

Я ищу удобный способ перечислить все разделы ELF и их адреса текущего двоичного файла и всех общих объекты, которые мог загрузить текущий процесс. Я знаю о существовании ...
вопрос задан: 2 February 2012 05:42
0
ответов

readelf vs. objdump: зачем нужны оба

Мне нужно узнать о структуре файла ELF для проекта, над которым я работаю, и я заметил существование этих инструментов. Почему все дистрибутивы Linux включают как readelf, так и objdump? Используйте эти инструменты ...
вопрос задан: 23 January 2012 22:39
0
ответов

Генерация ELF с использованием подсказок libelf

Я пытаюсь создать простой статический ELF с использованием libelf, но, похоже, у меня проблемы. Я не хочу создавать объектный файл, а затем связывать его с LD, вместо этого я хочу сгенерировать его самостоятельно. ...
вопрос задан: 16 January 2012 20:36
0
ответов

Получение заголовка ELF основного исполняемого файла

Для различных целей я пытаюсь получить адрес заголовка ELF основного исполняемого файла без синтаксического анализа / proc / self / maps. Я пробовал разобрать цепочку link_list, заданную dlopen / dlinfo ...
вопрос задан: 16 January 2012 04:48
0
ответов

Как я могу заставить GCC скомпилировать раздел .text как доступный для записи в двоичном формате ELF?

Я хотел бы иметь возможность динамически изменять исполняемый код в библиотеке, которую я использую. По сути, я хотел бы динамически отключать некоторые функции, если они не нужны. Однако ...
вопрос задан: 9 January 2012 20:12
0
ответов

Что означают файлы dylib?

Мой компилятор C ++ создает файлы «dylib», которые содержат динамические библиотеки. В чем разница между файлами .dylib и .so? И в чем разница между файлами в формате Mach-O и файлами в ...
вопрос задан: 16 November 2011 21:13
0
ответов

Как добавление частной переменной-члена нарушает совместимость C ++ ABI?

Идиома pimpl обычно используется для того, чтобы разрешить изменение кода в динамически подключаемых библиотеках без нарушения совместимости с ABI и необходимости перекомпилировать весь код, который зависит от библиотеки . ...
вопрос задан: 10 October 2011 18:55
0
ответов

Есть ли способ найти утечку памяти с помощью файла ядра?

У меня есть дамп памяти из приложения с утечкой памяти. Я использовал команду strings и xdd для проверки файла, и у меня есть несколько идей о том, какая часть программы может отвечать за ...
вопрос задан: 16 September 2011 01:14
0
ответов

С RIP-адресами, почему X86-64 по-прежнему нуждаются в перемещении?

Итак, X86-64 имеет RIP-относительные адреса, которые облегчают пишу коды, которые легко писать, и перемещение требуется гораздо меньше. Почему перемещения все еще нужны тогда на X86-64? Для каких особенностей? Я могу попытаться исследовать ...
вопрос задан: 6 September 2011 07:15
0
ответов

Как получить количество записей в таблице символов эльфа?

Рассмотрим стандартную программу Hello World в C скомпилированной с использованием GCC без каких-либо коммутаторов. По словам более позднего качества, он содержит 64 символа. Также он также говорит, что раздел .symtab длиной 1024 байта. Однако каждый
вопрос задан: 3 September 2011 11:40
0
ответов

Есть ли обратная сторона использования -Bsymbolic-functions?

Недавно я обнаружил параметр компоновщика «-Bsymbolic-functions» в GNU ld: -Bsymbolic при создании разделяемой библиотеки , привяжите ссылки на глобальные символы к определению в разделяемой библиотеке, ...
вопрос задан: 27 August 2011 19:52
0
ответов

Двухуровневое разрешение символов пространства имен Mach-O в ELF / linux.

Кто-нибудь знает эквивалент двухуровневого разрешения символов пространства имен Mach-O в ELF / linux? Мне нужен код, который ссылается на lib + sym, а не на sym. Я пытаюсь сделать то, что лучше всего можно описать как ...
вопрос задан: 7 August 2011 04:20
0
ответов

Нужно ли специально компилировать 32-битный код x86 для файлов разделяемых библиотек?

Компиляцию кода в объектный файл необходимо выполнять позиционно-независимой, если объектный файл предназначен для загрузки как разделяемая библиотека (. итак), потому что базовый виртуальный адрес общего объекта ...
вопрос задан: 5 August 2011 19:50
0
ответов

Почему addr2line работает только для функций

У меня addr2line работает для адресов функций: $ nm -S исполняемый файл | grep main 08048742 000000a0 Т основной $ addr2line -e исполняемый файл 08048742 /home/blablabla/src/main.c:80 К сожалению, это только ...
вопрос задан: 3 August 2011 13:15
0
ответов

В чем разница заголовка ELF между объектным файлом ELF и общим объектом?

Прежде всего, Я спрашиваю об этом с технической точки зрения, а не с точки зрения пользователя библиотечного кода. Одним из примеров различия является то, что общие объекты содержат заголовки программ и обычные ...
вопрос задан: 8 July 2011 13:26
0
ответов

Как загрузить и запустить ELF двоичный исполняемый файл вручную?

Предположим, двоичный файл - это PIC, как я могу загрузить его в память и выполнить точку входа? Я делаю это, чтобы познакомиться с ELF, поэтому execve не разрешено.
вопрос задан: 2 July 2011 03:24
0
ответов

Почему Go использует собственный генератор кода? [закрыто]

Текущий официальный компилятор для Go (http://code.google.com/p/go/) в настоящее время использует созданный вручную, возможно, непонятный генератор кода, который включает добавление пользовательских разделов в двоичный файл ELF. Это ...
вопрос задан: 30 June 2011 19:16
0
ответов

Какого рода информация содержится в первых 832 байтах файла .so?

Я видел много подобных вещей вроде этого: open ("/ lib64 / libpthread.so.0", O_RDONLY) = 3 прочтите (3, "\ 177ELF \ 2 \ 1 \ 1 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 0 \ 3 \ 0> \ 0 \ 1 \ 0 \ 0 \ 0 \ 260W \ 0242 \ 0 \ 0 \ 0 "..., 832) = 832 Что там в ...
вопрос задан: 23 June 2011 06:58
0
ответов

Принуждение определенных переменных, сгенерированных компилятором, в определенные разделы ELF (с помощью gcc)

Я начну с главного вопроса: в C с помощью gcc можно ли получить значение (значения) __func__ (или, что эквивалентно, __FUNCTION__), хранящееся в разделе, отличном от .rodata (или где-либо еще -mrodata = ...
вопрос задан: 22 June 2011 22:55
0
ответов

Почему версия компилятора появляется в моем исполняемом файле ELF?

Я недавно Ly скомпилировал простую программу C hello world под Debian Linux с помощью gcc: gcc -mtune = native -march = native -m32 -s -Wunused -O2 -o hello hello.c Размер файла составлял 2980 байт. Я открыл его в ...
вопрос задан: 7 June 2011 09:47
0
ответов

виртуальные и физические адреса секций в файлах elf

Как objdump вычисляет физический адрес (LMA) секций elf? Насколько я могу судить, заголовки разделов elf содержат только виртуальный адрес (VMA) разделов [1]. Обычно VMA и LMA являются ...
вопрос задан: 2 June 2011 18:02
0
ответов

Почему исполняемый файл заголовка программы?

Я использовал readelf в нескольких двоичных файлах на моем Linux-компьютере и увидел кое-что, что меня удивило в заголовках программ. Этот пример взят из утилиты ld, но он также встречается со всем, что я компилирую с помощью gcc ....
вопрос задан: 31 May 2011 10:49
0
ответов

arm gcc toolchain как arm-elf или arm-none -eabi, в чем разница?

Когда вы создаете набор инструментов gcc, есть возможность построить его как arm-elf или как arm-none-eabi, но в чем разница? Я использую eabi сегодня, но это просто потому, что все остальные, похоже, делают ...
вопрос задан: 12 May 2011 06:10
0
ответов

дамп размеров структур C из объектного файла ELF

Как можно извлечь размеры всех структур C из объектного файла ELF с отладочными символами? Индивидуальные размеры структур могут быть получены из GDB с помощью print sizeof (some_struct), но что мне нужно ...
вопрос задан: 10 May 2011 17:46
0
ответов

C / C ++ с GCC: статическое добавление файлов ресурсов в исполняемый файл / библиотеку

Кто-нибудь знает, как статически скомпилировать любой файл ресурсов прямо в исполняемый файл или файл общей библиотеки с помощью GCC ? Например, я хотел бы добавить файлы изображений, которые никогда не меняются (и если ...
вопрос задан: 1 February 2011 16:02
0
ответов

Как определяется адрес для _start в файле ELF?

I ' Я читал спецификацию ELF и не могу понять, откуда берутся точка входа в программу и адрес _start. Кажется, что они должны быть в довольно согласованном месте, но я сделал ...
вопрос задан: 24 November 2010 22:53
0
ответов

Могу ли я добавить ссылку на библиотеку к существующему общему объекту?

У меня есть система "fsimage.so", для которой требуется mkdirp, который просто находится в libgen.so. Но fsimage.so этого не знает. Например: # ldd /usr/lib/python2.4/vendor-packages/fsimage.so ...
вопрос задан: 19 November 2010 03:37
0
ответов

Как уменьшить потребление памяти C ++ по умолчанию?

У меня есть серверное приложение, написанное на C ++. После запуска он использует около 480 КБ памяти в x86 Linux (Ubuntu 8. 04, GCC 4.2.4). Я считаю, что 480 КБ - это чрезмерный объем памяти: сервер даже не ...
вопрос задан: 14 November 2010 23:02
0
ответов

Что означает «COM ”Означает в столбце Ndx раздела .symtab?

add2.c: int counter = 0; int a = 0; int b; int c; int add (int a, int b) {return a + b; } компиляция: gcc -c add2.c -o add2.o чтение таблицы символов: readelf --symbols add2.o Таблица символов '....
вопрос задан: 9 November 2010 19:18