Форум: "Прочее";
Текущий архив: 2016.05.08;
Скачать: [xml.tar.bz2];
ВнизЛинкер и редактор объектников Найти похожие ветки
← →
Pavia © (2015-08-22 20:30) [0]Линкер программа которая связывает куски кода в единый код.
Кусками обычно называют объектный код, а единый код это исполняемый файл такой как exe, elf.
Собственно хотел узнать каким бы вы хотели видеть линкер?
На самом деле вопрос несколько шире.
Rouse_, делает защиты для файлов. И на верника у него есть инструмент для работы с секциями PE файла, получения изменения их. Получения списко процедур, формирование или удоления отладочной информации по файлу.
Хотелось понять какой инструмент нужен народу. Т.е это типа FASM с его стековой машиной на которой можно сформировать любой файл хоть BMP. Либо аналог make. Когда ручками прописывается какой файл в какую секцию вставить и куда расположить.Либо это cmake который делает многое полуавтоматически.
Либо напротив как в Delphi нажал F9 и знать не знаешь как и что там внутри. Разве что смещение точки входа и размер стека можно поменять.
В качестве выходной платформы планирую от микроконтроллеров до кластеров.
Просто хочется послушать мысли других и понять что нужно народу.
← →
Игорь Шевченко © (2015-08-22 20:38) [1]Грамотность
← →
Kerk © (2015-08-22 20:48) [2]
> И на верника
http://freshnovosti.com/wp-content/uploads/2015/06/279990.png
← →
Rouse_ © (2015-08-22 22:34) [3]У FASM нет стековой машины :)
Да и вообще советую бросить сие дело, бо ты все понятия перемешал :)
← →
Rouse_ © (2015-08-22 22:43) [4]Ну, или, раз ты про линкер начал, начни с изучения COFF и OMF форматоф, причем первый в нескольких редакциях идет
← →
Inovet © (2015-08-22 23:30) [5]> [4] Rouse_ © (22.08.15 22:43)
> начни с изучения COFF и OMF форматоф, причем первый в нескольких редакциях идет
Хорошо, что я не собираюсь писать линкер под все платформы.
← →
Rouse_ © (2015-08-22 23:39) [6]Да и не нужно оно, все уже давно написано, вон к примеру yagarto - шикарная вещь была под арму, все еще пользуюсь, пары лет не прошло как куча новых тулчайнов вылезла :)
← →
Pavia © (2015-08-23 00:13) [7]Что-то анекдот вспомнился.
> У FASM нет стековой машины :)Да и вообще советую бросить
> сие дело, бо ты все понятия перемешал :)
Спорят хирург, инженер, программист о том, чья профессия древнее:
Хирург: Когда Бог создал женщину из ребра Адама - это была первая хирургическая операция - значит моя профессия древнее.
Инженер: но до человека Бог создал мир из хаоса, а это сложная инженерная работа, значит моя профессия древнее.
Программист (задумчиво): А вы знаете кто создал хаос...
Так вот не я первый создал этот хаус, он был до меня. Возьмём к примеру gpp с его линкером, никогда не отгадаешь какие параметры можно с какими комбинировать. К примеру им можно создать база независимый код, но только если в объектном файле одна секция и именно с именем "text".
Да я собрал всё в кучу, но это только потому что мне так удобнее. Вернее нет я собрал. А я хочу что-бы участники форума, своими ответами, помогли собрать данные в кучу. Хочу осмотреть проблему целиком со всех сторон, а не по частям. Линковка это установка связей и работа с ними, а не просто копирование данных из многих файлов в один.
> Ну, или, раз ты про линкер начал,
Не начал, а дошёл. ;-) Я прекрасно знаю что COFF и OMF идут в разных редакциях и как они устроены. И то что в exe насчитывается 3 секции, которые отвечают за отладочную информацию. А в некоторых случаях и больше 3-х. То что существуют разные форматы именования функций в таблицах экспорта/импорта. И так далее.
Можно работу по линковки отдать пользователям, а можно всё сделать автоматически(как это делает Delphi). Поэтому мне и хочется понять насколько следует автоматизировать это дело.
Существует 3 подхода к работе.
1) Ручная;
2) Автоматизированная;
3) Автоматический.
Ручная это когда человек пишет скрипт для линковки. Автоматизированная это когда у человека есть инструмент который помогает сделать работу более эффективно. К примеру, make, cmake или objectedit. И автоматическая когда человек совсем не задумывается, а сразу получает готовое.
Но у людей бывают разные потребности. Кому-то надо объединить секции данных и кода. А кому-то напротив надо отделить инициированные/не инициированные данные от постоянных. А кого-то и вовсе это не волнует.
Ещё хотелось бы узнать кому чем удобнее пользоваться.
← →
Германн © (2015-08-23 01:11) [8]
> Pavia © (23.08.15 00:13) [7]
>
> Что-то анекдот вспомнился.
Мне тоже почему-то читая этот топик вспоминаются только анекдоты. :)
← →
Игорь Шевченко © (2015-08-23 10:09) [9]Pavia © (23.08.15 00:13) [7]
Извини, но твои потрясающие советы глобального мастшаба в сочетании с неграмотностью кроме сарказма ничего вызвать не могут. поэтому я сильно сомневаюсь, что участники форума, к которым ты обращаешься, будут принимать то участие, на которое ты возможно рассчитываешь.
По теме - редактор связей не такая программа, о которой надо так заботится, мелкая вспомогательная утилита, о которой больше половины программистов не имеет представления.
> А кого-то и вовсе это не волнует.
Вот на эту часть и надо ориентироваться.
← →
DayGaykin © (2015-08-23 17:44) [10]Если это не принесет прибыли тебе или работодателю - то однозначно не нужно. Эта та призма, через которую я пропускаю свои идеи.
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2016.05.08;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.002 c