Also known as ABI
binary interface between compiled program units
Двоичный (бинарный) интерфейс приложений (англ. application binary interface, ABI) — набор соглашений для доступа приложения к операционной системе и другим низкоуровневым сервисам, спроектированный для переносимости исполняемого кода между машинами, имеющими совместимые ABI. В отличие от API, который регламентирует совместимость на уровне исходного кода, ABI можно рассматривать как набор правил, позволяющих компоновщику объединять откомпилированные модули компонента без перекомпиляции всего кода, в то же время определяя двоичный интерфейс. Двоичный интерфейс приложений регламентирует: * использование регистров процессора, * состав и формат системных вызовов и вызовов одного модуля другим; * формат передачи аргументов и возвращаемого значения при вызове функции. Двоичный интерфейс приложений описывает функциональность, предоставляемую ядром ОС и архитектурой набора команд (без привилегированных команд). Если интерфейс программирования приложений разных платформ совпадает, код для этих платформ можно компилировать без изменений. Если для разных платформ совпадают и API, и ABI, исполняемые файлы можно переносить на эти платформы без изменений. Если API или ABI платформ различаются, код требует изменений и повторной компиляции. API не обеспечивает совместимости среды выполнения программы — это задача двоичного интерфейса. Бинарный интерфейс встраиваемых приложений (англ. embedded application binary interface, EABI) — набор соглашений для использования во встраиваемом программном обеспечении, описывающий: * форматы файлов; * типы данных; * способы использования регистров; * организацию стека; * соглашение о вызове функций. Если объектный файл был создан компилятором, поддерживающим EABI, становится возможной компоновка этого объектного файла любым компоновщиком, поддерживающим тот же EABI. Основное отличие EABI от ABI в ОС общего назначения заключается в том, что в коде приложения допускаются привилегированные команды, а динамическое связывание (компоновка) не требуется (а иногда и полностью запрещена), а также, в целях экономии памяти, используется более компактная организация стека.
Abstract from DBpedia / Wikipedia · CC BY-SA
Discovered by embedding cosine similarity (sentence-transformers MiniLM, 384-dim).
via Wikidata sitelinks · CC0