Interested Article - Двоичная совместимость

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

Этот термин часто используется в значении «совместимость операционных систем », и в таком случае означает способность уже скомпилированной версии программы для одной операционной системы работать в другой операционной системе без перекомпиляции . К примеру, практически все программы, написанные для Windows 2000 , можно запустить в Windows XP — это означает, что Windows 2000 и Windows XP бинарно (двоично) совместимы.

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

Слом двоичной совместимости означает прекращение поддержки программ и обязательное требование перекомпиляции и возможных исправлений в программе, чтобы она заработала. К примеру, после того, как компания Apple начала использовать в своих компьютерах процессоры Intel , была сломана двоичная совместимость со всеми приложениями, написанными для процессоров PowerPC . Чтобы не лишиться всех разработанных в прошлом программных продуктов для операционной системы Mac OS , компания Apple использует лёгкий транслятор Rosetta, переводящий вызовы операционной системы Mac OS для PowerPC в вызовы Mac OS для Intel. Этот пример демонстрирует также возможный метод борьбы со сломом двоичной совместимости.

В операционной системе Solaris 10 для x86 существует возможность запускать приложения для Linux без перекомпиляции с помощью BrandZ . На платформе SPARC такая возможность отсутствует.

См. также

Источник —

Same as Двоичная совместимость