Какие разделы необходимы для использования исполняемого пользователя ELF?

StackOverflow https://stackoverflow.com/questions/3832801

  •  26-09-2019
  •  | 
  •  

Вопрос

Я создаю файл исполняемого эльфа, и мне нужно знать, какие разделы требуются операционной системой, чтобы загрузить и выполнить ее.

Подробности:

OS:               Ubuntu 10.04 (64-bit)
Kernel version:   2.6.32-24
Architecture:     i386

Я понимаю, что следующее, вероятно, будет необходимо:

  • .текст
  • .symtab.
  • .rel.text.text.

Есть ли другие?

Это было полезно?

Решение

«Учебное пособие для вихря по созданию действительно Teensy Elf Emputables для Linux» Имеет информацию о том, как (ab) использовать различные разделы эльфов, чтобы сделать исполняемый файл как можно меньше. Он также содержит ссылку на спецификацию ELF, если вам нужна дополнительная информация. (Это также довольно развлекательное чтение.) Может быть, это скажет вам, что вам нужно знать?

Другие советы

Я решил попробовать систематически раздельные секции из эльфионного файла, создаваемого GCC.

Я смог удалить многие из разделов, но они не могут быть удалены и иметь исполняемый файл, еще выполняемый без ошибки сегментации:

.Dynsym .dynstrstr.gnu.version_r .rel.plt .init .plt .text .fini .pistors .dtors .Dynamic .got.plt .data .strtab.
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top