Привет, Хабр! В этой статье я расскажу о том, как «объединить» архитектуры x64 и ARM64. Начну с небольшого исторического экскурса, который поможет понять, как развивались компьютеры.
IBM в конце 70-х годов представила архитектуру 8088, что стало поворотным моментом благодаря открытости платформы. Это дало возможность сторонним разработчикам создавать модули для ПК. Эволюция привела к появлению 32-битной архитектуры, а затем AMD и Intel разработали 64-битные версии, из которых AMD64 стала стандартом.
С другой стороны, ARM была создана в 1983 году с акцентом на энергоэффективность и SoC. За годы ARM прошла путь от первых моделей до современных решений, используемых в смартфонах и ноутбуках.
Сегодня различия между x64 и ARM заключаются в архитектуре и ассемблере. Запустить x64 приложение на ARM невозможно без бинарных трансляторов, таких как Box64 и FEX, которые требуют дополнительных усилий для настройки и интеграции библиотек. Обе технологии имеют свои плюсы и минусы, и их использование на Linux связано с определенными трудностями, связанными с управлением зависимостями и архитектурной совместимостью.


