Двоичный интерфейс приложений

Двоичный интерфейс приложений

Двоичный (бинарный) интерфейс приложений (англ. Application Binary Interface, англ. ABI) — набор соглашений между программами, библиотеками и операционной системой, обеспечивающих взаимодействие этих компонентов на низком уровне на данной платформе.

Двоичный интерфейс приложений регламентирует размер и выравнивание основных типов данных, формат передачи аргументов и возвращаемого значения при вызове функции, состав и формат системных вызовов, форматы исполняемых файлов, файлов библиотек, объектных файлов и т. п. Некоторые ABI описывают преобразование имён функций в C++, поддержку исключений.

Важно понимать разницу между ABI и API (программным интерфейсом приложений). API определяет интерфейс между исходным кодом создаваемой программы и библиотеками, обеспечивая возможность компиляции этого кода на любой платформе. В свою очередь, ABI позволяет скомпилированному объектному коду функционировать без изменений на любой платформе, где используется та же конфигурация ABI. API не обеспечивает совместимость времени исполнения программы — это задача ABI.


Бинарный интерфейс встроенных приложений (англ. Embedded Application Binary Interface, англ. EABI) — набор соглашений для форматов файлов, типов данных, использования регистров, организации стека, и передачи параметров функций для использования во встроенном программном обеспечении.

Компиляторы, которые поддерживают EABI, создают объектный код, совместимый с кодом, генерируемым другими компиляторами, что позволяет разработчикам связывать библиотеки, созданные одним компилятором, с объектным кодом, созданным другим компилятором. Разработчики, пишущие свой код на ассемблере также могут использовать EABI для взаимодействия с кодом ассемблера, сгенерированным совместимым компилятором.

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

См. также

Ссылки


Wikimedia Foundation. 2010.

Игры ⚽ Нужно сделать НИР?

Полезное


Смотреть что такое "Двоичный интерфейс приложений" в других словарях:

  • двоичный интерфейс приложений — [http://slovo.yaxy.ru/16.html] бинарный интерфейс приложений Спецификация, определяющая способ доступа приложения к ресурсам операционной системы. Обеспечивает переносимость откомпилированного приложения между системами с одинаковым ABI.… …   Справочник технического переводчика

  • Интерфейс программирования приложений — (иногда интерфейс прикладного программирования) (англ. application programming interface, API [эй пи ай])[1]  набор готовых классов, процедур, функций, структур и констант, предоставляемых приложением (библиотекой, сервисом) для… …   Википедия

  • Двоичный формат файлов Microsoft Excel 97—2007 — Microsoft Excel (Windows) Microsoft Excel 2007 Тип Табличный процессор Разработчик ОС Microsoft Windows …   Википедия

  • Двоичный формат файлов Microsoft Excel 97—2000 — Microsoft Excel (Windows) Microsoft Excel 2007 Тип Табличный процессор Разработчик ОС Microsoft Windows …   Википедия

  • Двоичный формат файлов Microsoft PowerPoint 97—2007 — Microsoft PowerPoint Скриншот Microsoft PowerPoint 2007 Тип программа для создания презентаций Разработчик Майкрософт …   Википедия

  • Двоичный формат файлов Microsoft PowerPoint 97—2000 — Microsoft PowerPoint Скриншот Microsoft PowerPoint 2007 Тип программа для создания презентаций Разработчик Майкрософт …   Википедия

  • RISC OS — У этого термина существуют и другие значения, см. RISC (значения). RISC OS Скриншот RISC OS 4 Разработчик …   Википедия

  • Двоичная совместимость — Двоичная совместимость, бинарная совместимость (англ. binary compatibility)  вид совместимости программ, позволяющий программе работать в различных средах без изменения её исполняемых файлов. Этот термин часто используется в значении… …   Википедия

  • Бинарная совместимость — Двоичная совместимость, также бинарная совместимость от англ. binary compatibility вид совместимости программ, позволяющий программе работать в различных средах без изменения её двоичных файлов. Этот термин часто используется в значении… …   Википедия

  • Модель OSI — Сетевая модель OSI (базовая эталонная модель взаимодействия открытых систем, англ. Open Systems Interconnection Basic Reference Model)  абстрактная сетевая модель для коммуникаций и разработки сетевых протоколов. Представляет уровневый подход к… …   Википедия


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»