Jump to content

Ретаргетинг

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

Составители

[ редактировать ]

Переназначаемый компилятор это компилятор , который был разработан так, чтобы его можно было относительно легко модифицировать для генерации кода для различных ЦП архитектур набора команд . История этой идеи восходит к 1950-м годам, когда UNCOL был предложен в качестве универсального промежуточного языка. Pascal P-компилятор является примером одного из первых широко используемых ретаргетинговых компиляторов.

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

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

глобальный оптимизатор общего назначения, за которым следует оптимизация «глазка» для конкретной машины. Широко используемым методом реализации является [1] Оптимизация кода для некоторых высокопроизводительных процессоров требует детальных и конкретных знаний об архитектуре и о том, как выполняются инструкции. Если разработчики не потратят много времени, необходимого на написание генератора кода специально для конкретной архитектуры, оптимизации, выполняемые переназначаемым компилятором, будут только теми, которые применимы к общим характеристикам процессора.

Переназначаемый компилятор — это разновидность кросс-компилятора . Часто (но не всегда) переназначаемый компилятор является портативным (сам компилятор может работать на нескольких разных процессорах) и размещается самостоятельно .

Примеры переназначаемых компиляторов:

Декомпилятор

[ редактировать ]

retdec («Переназначаемый декомпилятор») — это с открытым исходным кодом, переназначаемый машинного кода декомпилятор основанный на LLVM . [ нужна ссылка ]

  • Декомпилятор не ограничен какой-либо конкретной целевой архитектурой, операционной системой или форматом исполняемого файла:
  • Поддерживаемые форматы файлов: ELF, PE, Mach-O, COFF, AR (архив), Intel HEX и необработанный машинный код.
  • Поддерживаемые архитектуры (в настоящее время только 32-битные): Intel x86, ARM, MIPS, PIC32 и PowerPC.

Сборщики

[ редактировать ]

И наоборот, переназначаемые ассемблеры способны генерировать объектные файлы разных форматов, что полезно при переносе на языке ассемблера программ в различные операционные системы , работающие на одной и той же архитектуре ЦП (например, Windows и Linux на платформе x86 ). NASM — один из таких ассемблеров.

Дальнейшее чтение

[ редактировать ]
  • Перенацеливаемый компилятор C: проектирование и реализация ( ISBN   0-8053-1670-1 )
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 764b3e83b7c4d6f5981dc8787f91275c__1619790240
URL1:https://arc.ask3.ru/arc/aa/76/5c/764b3e83b7c4d6f5981dc8787f91275c.html
Заголовок, (Title) документа по адресу, URL1:
Retargeting - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)