The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Выпуск эмулятора FEX 2503, позволяющего запускать x86-программы на системах ARM64

06.03.2025 12:22

Опубликован релиз проекта FEX 2503, развивающего эмулятор для выполнения игр и приложений, собранных для архитектур x86 и x86-64, в Linux-окружении на системах с процессорами ARM64 (AArch64). Эмулятор FEX применяется проектом Asahi для запуска на системах с ARM-чипами Apple Silicon игр из каталога Steam, собранных для архитектуры x86_64. Код проекта написан на языке С++ с ассемблерными вставками и распространяется под лицензией MIT.

Библиотеки, необходимые для запуска x86-приложений в ARM64-окружении, подключаются в форме overlay-прослойки с образом корневой ФС (rootfs), поставляемой в формате SquashFS. Подобная прослойка даёт возможность обойтись без создания отдельного chroot-окружения. Загрузка уже сформированных проектом образов rootfs производится утилитой FEXRootFSFetcher.

Для доступа к возможностям хост-окружения, таким как средства для работы со звуком и 3D-графикой, в rootfs помещаются thunk-библиотеки, транслирующие обращения к библиотекам и коду на стороне хост-системы (например, могут перенаправляться обращения к OpenGL и Vulkan). Подобные библиотеки также могут использоваться и на стороне хоста для обращения к коду в гостевом окружении. Среди доступных для проброса библиотек: libEGL, libGL, libSDL2, libX11, libVDSO, libasound, libdrm, libfex_malloc, libvulkan, libwayland-client и libxshmfence.

В новой версии:

  • Улучшена точность вычислений обратных значений и обратного квадратного корня. Проблема в том, что точность инструкций для подобных вычислений в ARM64 - 8 бит, в x86 - 12 бит, а в 3DNow - 14 и 15 бит, что затрудняет эмуляцию подобных инструкций на системах ARM. Для увеличения точности эмуляции x86 задействовано ARM-расширение FEAT_RPRES, поддерживаемое в SoC Qualcomm Snapdragon Elite и Apple M4. Для эмуляции расширения 3DNow необходимая точность получена при помощи уточнения методом Ньютона.
  • По умолчанию включён режим "multiblock", при котором JIT может компилировать больше кода за один раз, что привело к повышению производительности.
  • Для ускорения эмуляции x86-инструкций SHA1RNDS4, SHA1MSG2 и SHA256MSG2 задействованы соответствующие SHA-расширения процессоров ARM.
  • Для отображения через интерфейс MangoHud добавлена статистика о событиях SIGBUS, SMC и oftfloat, а также данные о том, какое время тратится на работу JIT-компиляции, а какое на выполнение сгенерированного кода.
  • Добавлен бэкенд профилирования производительности, позволяющий формировать статистику для визуализации времени выполнения различных частей кода в профилировщике Tracy.
  • Добавлен фреймворк для мультиплексирования ввода/вывода через сетевые сокеты и файловые дескрипторы.


  1. Главная ссылка к новости (https://fex-emu.com/FEX-2503/...)
  2. OpenNews: Выпуск Hangover 10.0, пакета для запуска Windows-приложений на системах ARM64
  3. OpenNews: В Fedora 42 намерены включить инсталлятор на основе web-интерфейса и добавить эмулятор FEX
  4. OpenNews: Опубликован эмулятор QEMU 9.2.0 с поддержкой Rust и Vulkan
  5. OpenNews: Первый выпуск эмулятора терминала Ghostty
  6. OpenNews: Опубликован исходный код Mikage, эмулятора Nintendo 3DS
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/62839-fex-emu
Ключевые слова: fex-emu, emulator
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (62) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.4, 12yoexpert (ok), 12:49, 06/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    сейчас есть юзабельные арм ноуты под линукс?
     
     
  • 2.6, НяшМяш (ok), 12:52, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • –5 +/
    Mac M1 и M2. С более свежими есть проблемы.
     
     
  • 3.8, Аноним (8), 12:58, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А Хромые буки?
     
  • 3.9, Аноним (9), 12:59, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Mac M1 и M2

    Это не ARM. Это собственная проприетарная и полностью закрытая архитектура, построенная поверх ARM со своими специфичными инструкциями.

     
     
  • 4.17, Аноним (17), 13:08, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +12 +/
    Внезапно, как и любой ARM-процессор.
     
  • 3.52, Аноним (52), 17:42, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Единственный вопрос - науя там глинус если там есть нормальная, человеческая ось из коробки?
     
     
  • 4.60, Аноним (60), 18:39, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Есть же аббревиатура из 4 букв! Зачем устанавливать и запускать программу 2 кликами, если это можно сделать гораздо сложнее? Привет программам в .tar.xz и магазины приложений, где переложения собирают Васи.
     
  • 2.10, Аноним (9), 13:00, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    А разве вообще бывает линyпс юзабелен на ноутбуке? Не говоря про ARM.
     
     
  • 3.20, Аноним (20), 14:09, 06/03/2025 Скрыто ботом-модератором     [к модератору]
  • +2 +/
     
  • 3.24, Stanislavvv (?), 14:38, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    (смотря удалённо на домашнее хоронилище, что построено на Orange Pi и до сих пор не перенесено на что-то более адекватное): смотря какой arm... Некоторые не очень пригодны практически везде...

    А вообще на thinkpad линукс отлично работает. Не работает только сканер отпечатков — было лень возиться с тем, что не буду использовать. Остальное — из коробки/дистрибутива. Ну там, всякое видео/аудио/блюпуп/вайфай/докстанция/hdmi/displayport и другие страшные слова.

     
  • 3.30, Аноним (8), 15:13, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Яблочники, такие яблочники...
     
  • 3.31, Аноним (31), 15:27, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Сменил 3 ноута на всех 3 линукс.
     
     
  • 4.45, Аноним (17), 16:03, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ставил линукс на где-то четыре ноута — и везде, ВЕЗДЕ были проблемы. Решаемые, да. Но для себя этот вопрос закрыл.
     
  • 3.62, Аноним (60), 18:41, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >"А разве вообще бывает линyпс юзабелен на ноутбуке"

    KDEneon, даже поддерживает подсветку на клавиатуре. Единственное только что grub на английском языке, но полностью переведённый на русский язык вы linux не встретите.

     
  • 2.22, Аноним (-), 14:20, 06/03/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     

  • 1.11, Аноним (11), 13:00, 06/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Конечно, перейти с x86-64 на ARM можно... Только вопрос: на какие жертвы готовы пойти? Прямо сейчас ARM не справляется с задачами физики и симуляций так-же хорошо как x86 (про x64 и realtime стоит упоминать?). По-сути, на что сейчас годится ARM-работа - это: резать данные с БД, гонять JSON'ки и попиксельно накладывать PNG'шки с прозрачностью... И то вопрос - а не уступает ли ещё в этих задачах по производительности на ядро?
     
     
  • 2.13, Аноним (9), 13:02, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > не справляется с задачами

    Да со всем оно справляется.

    Главная проблема ARM - отсутствие единого стандарта. Что собственно и обеспечило победу IBM PC в 80е годы (открытая спецификация BIOS).

     
  • 2.21, Аноним (20), 14:13, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Прямо сейчас ARM не справляется с задачами физики и симуляций так-же хорошо как x86

    С чего такое заявление? Он в задачах "физики и симуляций" от x86 отличается ничем абсолютно.

    > (про x64 и realtime стоит упоминать?)

    Уж будь любезен, потому пока это просто набор несвязанных слов.

     
  • 2.40, Аноним (40), 15:56, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    CPU Benchmarks
    Intel Core i7-11390H 3.40GHz 9,908
    ARM Firestorm-M1-Pro 8 Core 2064 MHz 9,872
    https://www.cpubenchmark.net/cpu_lookup.php?cpu=ARM+-+4+Core+2016+MHz&id=6417
     
     
  • 3.46, 12yoexpert (ok), 16:03, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    по ссылке какой-то бред: в начале списка ryzen 3, в конце атомы. что значат эти цифры?
     
     
  • 4.55, Аноним (55), 18:29, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А ты посмотри что за процессоры предположу что в списке процессоры не выше произ... большой текст свёрнут, показать
     
     
  • 5.59, Аноним (55), 18:38, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Или так. Последняя модель AMD - это Ryzen 9 7950X. Не отслеживаю не хочу искать какая последние модели кому надо сами ищите.
     
  • 5.63, Аноним (55), 18:43, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Intel Core i7-9700TE - это процессор 9-го поколения.
     
  • 4.66, Аноним (55), 18:53, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Это у вас частично у меня по тому что Linux в визуализации не чем тестировать производительность кроме запускать в много поточном режиме архиваторы. Не упрёк констатация факта. Программа Sisoft Sandra по такому принципу работает этой я пользовался.  
     
     
  • 5.69, Аноним (55), 19:03, 06/03/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 4.68, Аноним (40), 18:56, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Читайте написанное: High Mid Range CPUs
    Рядом на сайте ссылка на High End CPUs
     
  • 2.43, Аноним (40), 16:00, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >по производительности на ядро?

    Чем больше ядер, тем меньше производительность на ядро.

     
     
  • 3.71, _ (??), 19:06, 06/03/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 2.75, Ivan_83 (ok), 19:20, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Нельзя.
    Если то что описал ты единственная проблема - то ты не понимаешь ценность х86 платформы.

    Её ценность в совместимости и модульности.
    Ты можешь с утра сидеть в линухе на интеле, после обеда переткнуть диск в амд и продолжить как ни в чём не бывало. У вендуст юзеров это как минимум раньше было проблемой, но на линухе/бсд при примых руках смена железа проиходит если не полность на автомате то с весьма скромными правками конфигов.

    Примерно тоже самое по переферии: надоела/сломалась одна видяха-воткнул другую, получше/похуже.
    Не хватает портов - воткнул плату расширения. Сломалась - заменил.

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


    Из всей альтернативы только эльбрус был по железу похож на нечто х86, но в плане софта/поддержки конечно полное дно.
    Платки с арм - почти всегда без слотов расширения, воткнуть туда видяху - на уровне курсовой в профильном универе, а то и дипломной. (всмысле чтобы оно работало а не просто lspci её показал)

    Если риск5 или арм осилят хотя бы в материнские платы пусть даже с распаянным процом - будет повод посмотреть.

     

  • 1.15, Аноним (15), 13:05, 06/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Т.е. с такой низкой точностью ARM64 ваще непригодны для вычислений.
     
     
  • 2.19, аНОНИМ (?), 14:03, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    РТФМ, такие приблизительные вычисления 1/sqrt(x) используются как заготовки для получения точного результата несколькими итерациями метода Ньютона-Рафсона.
     

  • 1.23, Аноним (23), 14:32, 06/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Сейчас Китай перейдёт на RISC-V и не нужны будут никакие ни AMD64 ни ARM64.
     
     
  • 2.25, Аноним (25), 14:50, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    И вернутся в 90е по уровню производительности CPU.
     
     
  • 3.27, Ivan_83 (ok), 15:03, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ну это как посмотреть.
    Технически частоты можно сразу сходные получить, простые операции будут так же за такт выполнятся.
    Просадка будет на предсказателе и может каких то SIMD.
    Те это далеко не уровень 90х, это близко к х86/м1 всяким.
     
     
  • 4.29, Аноним (8), 15:11, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Простые операции за 1 такт выполняются и микроконтроллерах, давно уж.
     
     
  • 5.41, Ivan_83 (ok), 15:57, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ну да, просто контроллеры никто не делает работающими на высоких частотах.
    Поэтому коммент что придётся вернутся в 90-е по производительности не соотвествует действительности: оно как минимум частотами даст производительность 2005-2010 прямо на старте.
     
  • 4.53, Аноним (25), 17:42, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Этот RISC-V даже малинка уделывает с позором, поэтому до m1 ему ещё далеко как до Луны:
    https://www.phoronix.com/review/sifive-hifive-premier-p550/3
     
     
  • 5.54, Аноним (23), 18:17, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Этих Risc-V ядер множество. С каким именно сравнение?
     
  • 5.67, Ivan_83 (ok), 18:54, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Только вот малинки работают на частотах по выше, одна из них аж почти х2 по частоте.

    В остальном надо смотреть внутрь, может оказатся что малнка во всю юзает SIMD/NEON а для риск5 оно generic инструкции заюзало, без всяких оптимизаций.

    Так же вопросы к компелятору и тому насколько он оптимизировал код.

     
  • 2.26, Ivan_83 (ok), 15:00, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Не только китай, Кармарк и интел вроде тоже пилят.
     
     
  • 3.38, Аноним (23), 15:55, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Про Китай и переход на RISC-V читал. Про остальных не знаю, но не зря же организация развивающая RISC-V переехали из Штатов в Швейцарию, славящуюся своим нейтралитетом.
    Я что-то пропустил, когда Кармак от космических кораблей и очков виртуальной реальности перешел на риски.
     
     
  • 4.42, Ivan_83 (ok), 15:59, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Швейцария потеряла давно свой суверинитет: амеры их прогнули уже давно так что там никакой банковской тайны больше нет. А больше ничего примечательного у них и не было.
    Про Кармарка на неделе новость на хубре была.
     
     
  • 5.61, Аноним (61), 18:41, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Один коллега давным давно сказал золотые слова. Кодеры считают что разбираются во всём... На всё у них есть своё мнение..
    Ну то есть я не то что против, просто потрясающее владение источниками
     
     
  • 6.72, Ivan_83 (ok), 19:10, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Хз кто такие кодеры :)

    В остальном - у ИТ часто работа такая что каждый день нужно разбиратся в новой фигне с нуля, постепенно появляется привычка и уже не важно это фигня из ИТ или совсем другой области.
    Да, знания конечно не дотягивают до профильного эксперта, но получить уровень как минимум продвинутого джуна в какой то области за пару дней-неделю это легко.

    И собственно проблема то других областей что там полно людей с джунскими знаниями которые ещё и деградировали вместо развития, и они со своими 40 летним стажем будут советовать подорожник и ромашку, потому что "всегда помогало", тогда как ИТшник может легко найти что сейчас для этого уже 25-е поколение пиллюль выпустили у которых эффективность 525% после первого приёма.

    Ну или вот забавная тема о которой даже юзризды со стажем 30+ лет почему то не знали.
    До 2023 (или 2024, забыл уже) года в армию РФ не брали если у тебя есть больше одного гражданства.
    Сделать себе ещё одно гражданство много кто из бывшего СССР мог (и может) достаточно легко, легально и дёшего. Вместо этого вливали кеш в коррупцию.
    Это лично то что я накопал и провернул, без юриздов и прочих помогаек, только со своим скромным мозгом и интернетом.

    Но и эта тема уже устарела, можно просто нужное спросить сразу у AI. :)

     
     
  • 7.74, _ (??), 19:15, 06/03/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 6.73, _ (??), 19:12, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Твой коллега ошибся только в одном - он решил что это _только_ кодеры такие :)))

    А насчёт швейцарии - дык Ivan прав. Прогнулись альпийцы полностью US audit ...
    Австрияки потом пытались, но то такое :)

    Сейчас вместо них всех - крипта, но это ещё чудесатее :)

     
  • 2.28, Аноним (8), 15:09, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    На отечественный для них LoongArch.
     
     
  • 3.32, Аноним (17), 15:29, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Да у них и x86 свой. Китайцы в этом плане молодцы, не кладут все яйца в  одну корзину.
     
     
  • 4.39, Аноним (23), 15:55, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Они кладут на совесть и копируют всё что можно и нельзя. Почему нам так нельзя?
     
     
  • 5.44, aanon (?), 16:02, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Потому что аноним не работал за миску риса
     
  • 5.47, Аноним (17), 16:07, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Можно, делайте. Как там «эльбрус» поживает? Или это он от избытка совести не колосится?
    x86 китайцы делают по лицензии, есличо.
     
  • 5.49, Аноним (15), 16:09, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Потому что у нас всё держится на вывозе всего, что можно вывезти и продать. Смысл вкладываться в долгую, если можно собрать под ногами, быстро продать и даже не заморачиваться возвратом в страну выручки от продажи.
     
  • 5.51, Аноним (8), 17:39, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Оказывается, можно. Jailbreack мозга кожаных мешков.
     

  • 1.33, aanon (?), 15:39, 06/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Анонимы и др., мне нужна самая энергоэффективная хрень с 64 гб озу. Есть ли смысл с точки зрения цены заглядываться на arm против x86?
     
     
  • 2.35, Аноним (35), 15:44, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    64 Гб с арм стоит так дорого что бу х86 сервак с 64 Гб будет дешевле даже с учётом цены на электричество на 10 лет.
     
     
  • 3.37, aanon (?), 15:51, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Да, но электричества можен не оказаться - внезапно. Поэтому надо выжить на сто двадцатом аккумуляторе.
     
     
  • 4.48, Аноним (17), 16:08, 06/03/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 2.50, Аноним (15), 16:11, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    жена тебе нужна, а не энергоэффективная хрень
     
     
  • 3.56, Аноним (8), 18:32, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Энергоэффективная жена. Ну чтоб не жрала, как не в себя з/п мужа.
     
     
  • 4.65, Аноним (61), 18:49, 06/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Да хоть бы и жрала, зачем ещё эти цифры. Другое дело когда уже дети скомпилены, тогда да, начинается буферизация
     

  • 1.34, Аноним (35), 15:42, 06/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    X86 капец наконец настал.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2025 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру