Здравствуйте, читатели Хабра! В этой статье мы рассмотрим, как объединить архитектуры x64 и ARM64 (AArch64) в Linux-среде. Начнем с краткой истории развития компьютерных архитектур. В 70-х годах IBM представила архитектуру 8088, что ознаменовало начало эры модульных ПК, где сторонние компании могли разрабатывать и продавать свои модули. Это привело к созданию 32-битной архитектуры с Intel 80386 и последующей 64-битной архитектуры от AMD.

ARM, появившаяся в 1983 году, сделала акцент на энергоэффективности, что привело к широкому распространению в мобильных устройствах. Современные устройства на базе ARM используют архитектуру ARMv8-A.

Основные отличия между x64 и ARM заключаются в их ассемблерах и наборе инструкций. Программы, написанные для одной архитектуры, нельзя запустить на другой без использования бинарных трансляторов. В Linux это может представлять сложности из-за разрозненности системы и управления зависимостями.

В заключение, интеграция x64-приложений на ARM с помощью таких инструментов, как Box64 и FEX, требует значительных усилий и знаний о системных зависимостях, что делает процесс довольно сложным.