Windows arm запуск x86 приложений

Время на прочтение1 мин

Количество просмотров12K

Microsoft разработала новый эмулятор Prism для запуска x86-приложений на ПК с Arm-чипами. Благодаря Prism приложения будут работать на 10–20% быстрее на том же оборудовании. Технология станет частью обновления Windows 11 24H2.

Как заявляет Microsoft, Prism представляет собой не просто ребрендинг эмулятора, входившего в предыдущие версии Windows, а новое решение, которое «предоставит значительные преимущества». По данным Techspot, его эффективность будет сравнима с эмулятором Rosetta 2 от Apple, который помогает пользователям при переходе на ПК с чипами Apple Silicon. Prism также улучшит общую совместимость x86 с процессорами Arm SoC, хотя подробностей по этому аспекту пока нет.

В целом обновление Windows 11 24H2 будет оптимизировано для новых ПК с Arm-чипами на базе процессоров Qualcomm, в первую очередь Snapdragon X Elite. Компания рассчитывает, что Prism поможет пользователям полностью раскрыть возможности Snapdragon X Elite и их нейронных чипов (NPU) для задач искусственного интеллекта.

Microsoft отмечает при этом, что Prism принесёт ощутимую пользу сравнительно небольшому проценту пользователей, так как большая часть популярных приложений уже получила версии под Arm64 или кроссплатформенные версии. Так, поддержка Arm включена в собственные приложения Microsoft (Office, Teams, PowerPoint, Outlook), а также в Adobe Photoshop, DaVinci Resolve, Blender и многие другие. У браузеров, таких как Mozilla Firefox, Opera и Chrome, теперь также есть версии для Arm.



Всем привет, хочу поделится с вами статьей о том как запустить на arm процессорах приложения под windows x86 с помощью Exagear и Wine. В частности на телефоне с установленным Nethunter, хотя аналогичные действия можно выполнить и на других девайсах (Raspberry PI, OnDroid и т.д.).
И так приступим к делу:

1. Нам понадобится скачать с официального сайта Exagear пакеты для установки под своё устройство:

Ссылка скрыта от гостей

Ссылка скрыта от гостей

Ссылка скрыта от гостей

Ссылка скрыта от гостей

2. Скачиваем два архива, из таблеткой от жадности Exagear, в атачах: pk-000000003618.zip ubt_x32a32_al.zip
3. Перемещаем скачанный архив с официального сайта Exagear на наше устройство, и распаковываем:

Код:

tar -xvzpf exagear-desktop-armv7.tar.gz

4. В директорию куда распаковали архив копируем ключ из атачей к статье, предварительно распаковав.
5. Запускаем скрипт установки Exagear:

Код:

sudo ./install-exagear.sh

6. Ждем успешного окончания установки, после копируем с заменой файл из второго архива атачей в директорию куда установился Exagear:

7. Теперь запускаем в консоле Exagear:

Код:

service exagear start
exagear

8. Что б убедится что мы находимся в среде x86, вводим команду в терминале:

и видим ответ:

9. Ставим Wine:

10. Ждем окончания установки.

Теперь у нас всё настроено для запуска x86 приложений, просто копируем наш exe файл на устройство и запускаем его командой в терминале:

Результат:


  • pk-000000003618.zip

    pk-000000003618.zip

    174 байт

    · Просмотры: 2 463


  • ubt_x32a32_al.zip

    ubt_x32a32_al.zip

    530,9 КБ

    · Просмотры: 2 543

  • Screenshot_20180904-143829.png

    140 КБ

    · Просмотры: 1 621

  • Screenshot_20180904-143829.png

    Screenshot_20180904-143829.png

    13,3 КБ

    · Просмотры: 1 034




  • #2

Exagear гораздо интересней тем, что позволяет запускать 86 приложения win на андройде и без нетхантер и wine. Но тема достаточно не простая, с костылями. Кому интересно на 4pda есть ветка по exagear.



  • #3

Exagear гораздо интересней тем, что позволяет запускать 86 приложения win на андройде и без нетхантер и wine. Но тема достаточно не простая, с костылями. Кому интересно на 4pda есть ветка по exagear.

В любом случае если даже использовать

Ссылка скрыта от гостей

, Exagear использует wine, просто он там уже предустановлен. Впринципи согласен с тобой, если пользователю именно нужно запускать EXE приложения на андроид, то ему будет прощё пользуваться APK версией. У меня просто была другая цель — завести полноценный експлоит doublepulsar которий требует wine, под nethunter.




  • #4

В любом случае если даже использовать

Ссылка скрыта от гостей

, Exagear использует wine, просто он там уже предустановлен. Впринципи согласен с тобой, если пользователю именно нужно запускать EXE приложения на андроид, то ему будет прощё пользуваться APK версией. У меня просто была другая цель — завести полноценный експлоит doublepulsar которий требует wine, под nethunter.

Мммм, а не проще тогда задействовать термакс?
Под него есть хорошие репы, да и по отдельности инструменты присутствуют. Думаю скоро выделю время и черкану здесь статью по ним. А то termux инструмент хороший, а информации здесь по нему не густо.



  • #5

Мммм, а не проще тогда задействовать термакс?
Под него есть хорошие репы, да и по отдельности инструменты присутствуют. Думаю скоро выделю время и черкану здесь статью по ним. А то termux инструмент хороший, а информации здесь по нему не густо.

В термуксе не получиться завести полноценный експлоит doublepulsar который требует wine, для успешной отработки.




  • #6

В термуксе не получиться завести полноценный експлоит doublepulsar который требует wine, для успешной отработки.

тоже верно..
кстати, у меня на termux стоит debian, надо будет позже попробовать wine на него установить.



  • #7

Bash:

Package realpath is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
However the following packages replace it:
  manpages-pl

E: Package 'realpath' has no installation candidate
┌─[✗]─[root@kali]─[~]
└──╼ #apt install manpages-pl   
Reading package lists... Done
Building dependency tree       
Reading state information... Done
manpages-pl is already the newest version (1:0.7-1).
0 upgraded, 0 newly installed, 0 to remove and 16 not upgraded.

Хелпаните, что не так? Как исправить?



  • #8

Bash:

Package realpath is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
However the following packages replace it:
  manpages-pl

E: Package 'realpath' has no installation candidate
┌─[✗]─[root@kali]─[~]
└──╼ #apt install manpages-pl  
Reading package lists... Done
Building dependency tree      
Reading state information... Done
manpages-pl is already the newest version (1:0.7-1).
0 upgraded, 0 newly installed, 0 to remove and 16 not upgraded.

Хелпаните, что не так? Как исправить?

проверь репозитории, на гите посмотривот это SITL installation on Ubuntu 18.04 Error: Package ‘realpath’ has no installation candidate · Issue #8377 · ArduPilot/ardupilot



  • #9

Это?

Screenshot_20180928-232910.png

На гите я смотрел эту тему, coreutils у меня уже был установлен.

Layl2018




  • #11

Bash:

Package realpath is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
However the following packages replace it:
  manpages-pl

E: Package 'realpath' has no installation candidate
┌─[✗]─[root@kali]─[~]
└──╼ #apt install manpages-pl  
Reading package lists... Done
Building dependency tree      
Reading state information... Done
manpages-pl is already the newest version (1:0.7-1).
0 upgraded, 0 newly installed, 0 to remove and 16 not upgraded.

Хелпаните, что не так? Как исправить?

Я сделал так:
1. Исправил в конфиге realpath на manpages.pl
2. wget

Ссылка скрыта от гостей

&& sudo dpkg -i realpath_*.deb
3. :# bash install-exagear.sh
Завелось



  • #12

Я сделал так:
1. Исправил в конфиге realpath на manpages.pl
2. wget

Ссылка скрыта от гостей

&& sudo dpkg -i realpath_*.deb
3. :# bash install-exagear.sh
Завелось

С realpath все решилось, но возникла проблема с alsa-base:

Код:

Package alsa-base is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'alsa-base' has no installation candidate

UPD:
Погуглил, добавил в /etc/apt/sources.list deb http://ftp.de.debian.org/debian jessie main, пошла установка, но произошла ошибка активации

Код:

Activating the copy of ExaGear...
actool: Activation failed.

Последнее редактирование:



  • #13

С realpath все решилось, но возникла проблема с alsa-base:

Код:

Package alsa-base is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'alsa-base' has no installation candidate

UPD:
Погуглил, добавил в /etc/apt/sources.list deb http://ftp.de.debian.org/debian jessie main, пошла установка, но произошла ошибка активации

Код:

Activating the copy of ExaGear...
actool: Activation failed.

Дальше все по инструкции, распаковать второй архив из аттачей ubt_x32a32_al.zip с заменой файла в папку /opt/exagear/bin
дать ему права :# chmod 777 ubt_x32a32_al
Запустить командой
service exagear start
exagear
И собственно попадаем в среду архитектуры i686



  • #14

Дальше все по инструкции, распаковать второй архив из аттачей ubt_x32a32_al.zip с заменой файла в папку /opt/exagear/bin
дать ему права :# chmod 777 ubt_x32a32_al
Запустить командой
service exagear start
exagear
И собственно попадаем в среду архитектуры i686

Bash:

┌─[root@kali]─[/opt/exagear/bin]
└──╼ #unzip /root/Downloads/ubt_x32a32_al.zip
Archive:  /root/Downloads/ubt_x32a32_al.zip
replace ubt_x32a32_al? [y]es, [n]o, [A]ll, [N]one, [r]ename: y
  inflating: ubt_x32a32_al           
┌─[root@kali]─[/opt/exagear/bin]
└──╼ #chmod 777 ubt_x32a32_al
┌─[root@kali]─[/opt/exagear/bin]
└──╼ #service exagear start
┌─[root@kali]─[/opt/exagear/bin]
└──╼ #exagear
/usr/bin/exagear: line 135:  1924 Segmentation fault      $ubt --path-prefix $image_dir --vpaths-list $vpaths_list -- /bin/echo "Starting $command $args in the guest image $image_dir"
Failed to start Exagear. Please check that file /opt/exagear/bin/ubt_x32a32_al exists and has executable permission
/usr/bin/exagear: line 137:  1925 Segmentation fault      /opt/exagear/bin/ubt_x32a32_al --path-prefix /opt/exagear/images/ubuntu-1404lts --vpaths-list /opt/exagear/images/ubuntu-1404lts/.exagear/vpaths-list --opaths-list /opt/exagear/images/ubuntu-1404lts/.exagear/opaths-list --use-binfmt_misc -- /bin/bash



  • #15

Bash:

┌─[root@kali]─[/opt/exagear/bin]
└──╼ #unzip /root/Downloads/ubt_x32a32_al.zip
Archive:  /root/Downloads/ubt_x32a32_al.zip
replace ubt_x32a32_al? [y]es, [n]o, [A]ll, [N]one, [r]ename: y
  inflating: ubt_x32a32_al          
┌─[root@kali]─[/opt/exagear/bin]
└──╼ #chmod 777 ubt_x32a32_al
┌─[root@kali]─[/opt/exagear/bin]
└──╼ #service exagear start
┌─[root@kali]─[/opt/exagear/bin]
└──╼ #exagear
/usr/bin/exagear: line 135:  1924 Segmentation fault      $ubt --path-prefix $image_dir --vpaths-list $vpaths_list -- /bin/echo "Starting $command $args in the guest image $image_dir"
Failed to start Exagear. Please check that file /opt/exagear/bin/ubt_x32a32_al exists and has executable permission
/usr/bin/exagear: line 137:  1925 Segmentation fault      /opt/exagear/bin/ubt_x32a32_al --path-prefix /opt/exagear/images/ubuntu-1404lts --vpaths-list /opt/exagear/images/ubuntu-1404lts/.exagear/vpaths-list --opaths-list /opt/exagear/images/ubuntu-1404lts/.exagear/opaths-list --use-binfmt_misc -- /bin/bash

Ok.
:# chmod 777 ~/Downloads/ubt_x32a32_al
:# mv ~/Downloads/ubt_x32a32_al /opt/exagear/bin
:# service exagear start
:# exagear



  • #16

Ok.
:# chmod 777 ~/Downloads/ubt_x32a32_al
:# mv ~/Downloads/ubt_x32a32_al /opt/exagear/bin
:# service exagear start
:# exagear

Неа, то же самое



  • #17

Как вариант, снести. Докачать realpath и base-alsa deb-ы.. под своё ядро!!! И выполнять все от sudo не от рута. Скипт установки должен отработать без ошибок. Смотрите внимательней.

DOMI_NIK




  • #18

Привествую
спасибо огромное за информацию, но у меня аналогичное сообщение :

/usr/bin/exagear: line 135: 1924 Segmentation fault $ubt —path-prefix $image_dir —vpaths-list $vpaths_list — /bin/echo «Starting $command $args in the guest image $image_dir»
Failed to start Exagear. Please check that file /opt/exagear/bin/ubt_x32a32_al exists and has executable permission
/usr/bin/exagear: line 137: 1925 Segmentation fault /opt/exagear/bin/ubt_x32a32_al —path-prefix /opt/exagear/images/ubuntu-1404lts —vpaths-list /opt/exagear/images/ubuntu-1404lts/.exagear/vpaths-list —opaths-list /opt/exagear/images/ubuntu-1404lts/.exagear/opaths-list —use-binfmt_misc — /bin/bash

удалось победить ?



  • #19

Привествую
спасибо огромное за информацию, но у меня аналогичное сообщение :

/usr/bin/exagear: line 135: 1924 Segmentation fault $ubt —path-prefix $image_dir —vpaths-list $vpaths_list — /bin/echo «Starting $command $args in the guest image $image_dir»
Failed to start Exagear. Please check that file /opt/exagear/bin/ubt_x32a32_al exists and has executable permission
/usr/bin/exagear: line 137: 1925 Segmentation fault /opt/exagear/bin/ubt_x32a32_al —path-prefix /opt/exagear/images/ubuntu-1404lts —vpaths-list /opt/exagear/images/ubuntu-1404lts/.exagear/vpaths-list —opaths-list /opt/exagear/images/ubuntu-1404lts/.exagear/opaths-list —use-binfmt_misc — /bin/bash

удалось победить ?

К сожалению нет

Shaman666




  • #20

Привествую
спасибо огромное за информацию, но у меня аналогичное сообщение :

/usr/bin/exagear: line 135: 1924 Segmentation fault $ubt —path-prefix $image_dir —vpaths-list $vpaths_list — /bin/echo «Starting $command $args in the guest image $image_dir»
Failed to start Exagear. Please check that file /opt/exagear/bin/ubt_x32a32_al exists and has executable permission
/usr/bin/exagear: line 137: 1925 Segmentation fault /opt/exagear/bin/ubt_x32a32_al —path-prefix /opt/exagear/images/ubuntu-1404lts —vpaths-list /opt/exagear/images/ubuntu-1404lts/.exagear/vpaths-list —opaths-list /opt/exagear/images/ubuntu-1404lts/.exagear/opaths-list —use-binfmt_misc — /bin/bash

удалось победить ?

точно такая же проблема(

Обучение наступательной кибербезопасности в игровой форме. Начать игру!

(Image credit: Ben Wilson | Windows Central)

Running traditional apps with Windows on Arm devices might seem unusual to some, and it’s not unreasonable to assume that compatibility isn’t guaranteed when so few devices with ARM64 processors from Qualcomm and Microsoft enjoy mainstream popularity. Chromebook laptops powered by Snapdragon processors rely on Google’s ChromeOS, and hundreds of tablets support Microsoft’s Android apps but never native x86-64 versions. In fact, for the past few years, you’ve regularly been able to count the number of supported Arm Windows laptops on one hand.

So, for those considering a device like the Surface Pro 9 running Microsoft’s customized SQ3 ARM processor or a Robo & Kala 2-in-1 with Qualcomm’s stock Snapdragon 8cx Gen3, how many apps from your daily workload could you carry over from an Intel or AMD-based Windows PC? The good news is that practically everything works. The better news is that the next generation of Qualcomm’s processors, like the Snapdragon X platform, will dramatically boost performance on these traditional x86-64 apps. I tested my most common apps, and here’s what I learned: there’s no reason to be wary of Windows on Arm.

How do ARM-native apps differ from x86-64?

Surface Pro X SQ2 Flat

Since its release, the Surface Pro X has featured two Arm processor variants and brought support for Windows 11. (Image credit: Daniel Rubino | Windows Central)

Although various software can appear completely identical on your screen, most modern laptops and desktop PCs contain x64 (64-bit) processors made by Intel or AMD, and they cannot natively interpret the underlying code of an ARM64 app and vice versa. However, emulating or virtualizing the opposing codebase can enable either system to run apps designed for that operating system, albeit with varying degrees of performance degradation. Microsoft offers instructions for adding Arm support to software in development with Visual Studio, and more high-profile app developers like Adobe have been adding Arm-native apps to their portfolios for the past few years.

Using an app designed to run natively on your operating system leads to better performance and increased efficiency, as your PC doesn’t need to do any in-between code translation before processing its given tasks. Some of the best Windows on Arm laptops generally boast longer battery life thanks to an overall lower power consumption, so using a native ARM64 app with an Arm device helps prolong portable use and speed up general app behavior within Windows 11. While it requires more power to run x86-64 applications on Qualcomm’s older Snapdragon and Microsoft-modified SQ processors, the apps are still compatible despite their base-level code differences.

Testing x86-64 Windows apps on an Arm device

Skype running on Arm as an x64 application with webcam enabled

Windows task manager shows Skype running on Arm as an emulated x64 application with webcam and microphone support intact. (Image credit: Ben Wilson | Windows Central)

Firing up a four-year-old Surface Pro X and updating to Windows 11 shows that a massive amount of stock Microsoft apps are running natively on ARM64, and those that aren’t should still behave as expected. From the ultra-basic mainstays like 40-year-old Notepad and Microsoft Paint to modern additions in Phone Link and the divisive new Outlook app running Arm-native builds, some notable standouts still run on traditional x64 (64-bit) and even x86 (32-bit) architecture, including, curiously, the official Surface Diagnostic Tools app for troubleshooting potential bugs.

Skype runs as an emulated x64 app on a Windows 11 for Arm, but performance isn’t noticeably affected.

Looking into Microsoft’s other long-serving apps shows that Skype runs as an emulated x64 app on Windows 11 for Arm, but performance isn’t noticeably affected. In fact, testing the front-facing webcam with a live post-processing background blur effect didn’t cause any issues, so I could happily join video calls (if I knew anyone who still used Skype.) Of course, there are far more demanding apps in the Windows ecosystem than Skype, but since Adobe created Arm-native versions of Photoshop and Lightroom, my arsenal of daily-driver apps runs at maximum efficiency.

Third-party drivers can be a minor exception

Surface Pro X printer selection on SQ1 Arm processor

Adding a wireless printer with default drivers on Windows 11 works without issue on an Arm-based Surface device. (Image credit: Ben Wilson | Windows Central)

Running x86-64 software with Windows on Arm can cause genuine compatibility issues if manufacturers have never compiled compatible drivers for Arm64. These drivers are necessary for the app to communicate with third-party hardware, and Microsoft explains as much in its Windows Arm-based PCs FAQ: «Peripherals and devices only work if the drivers they depend on are built into Windows 11, or if the hardware developer has released Arm64 drivers for the device.» The same can apply to some video game technology, like anti-cheat protection blocking the use of x86-64 emulation.

All the latest news, reviews, and guides for Windows and Xbox diehards.

However, that shouldn’t discourage most users from using a Windows on Arm device. During my testing, I had no issues connecting to my wireless printer with Microsoft’s built-in drivers, as the Surface Pro X correctly identified and printed pages from Microsoft Edge. I even enjoyed compatibility with older, more obscure hardware like a SpyderX Pro colorimeter, which I use to benchmark display performance in laptops and monitors. So far, I’m struggling to find an accessory in my office that causes Windows to display an Arm incompatibility error, but that’s not to say it never happens.

Windows on Arm is as close to perfect as it has ever been. With recent hints at an Arm-powered Surface Pro 10 with a 10-core Snapdragon X Plus processor, it could be the ultimate Windows device thanks to these leaps in Arm’s compatibility and performance. There are still issues to patch, but there’s no reason to fear whether or not Windows on Arm runs x86-64 apps.

Ben is a Senior Editor at Windows Central, covering everything related to technology hardware and software. He regularly goes hands-on with the latest Windows laptops, components inside custom gaming desktops, and any accessory compatible with PC and Xbox. His lifelong obsession with dismantling gadgets to see how they work led him to pursue a career in tech-centric journalism after a decade of experience in electronics retail and tech support.

Provide feedback

Saved searches

Use saved searches to filter your results more quickly

Sign up

Appearance settings

Microsoft анонсировала масштабное обновление Windows 11 под кодовым названием 24H2, которое должно значительно улучшить производительность и совместимость приложений между архитектурами x86 и Arm. Главное нововведение — это технология Prism, мощный эмулятор x86-совместимых приложений, позволяющий запускать традиционные программы для Windows на Arm-чипах с производительностью на 10–20 % выше по сравнению с текущим эмулятором.

 Источник изображения: Techspot.com

Источник изображения: Techspot.com

Это не первая попытка Microsoft адаптировать Windows под Arm, но на этот раз компания заявляет о серьёзных улучшениях. Prism не просто ребрендинг старого эмулятора, а полностью новое решение, способное значительно расширить совместимость приложений x86 с Arm-системами. По эффективности Prism сравним с Rosetta 2 от Apple, помогающим плавно перейти с Intel на собственные Arm-чипы, пишет Techspot.

Обновление Windows 11 24H2 будет оптимизировано для новых Arm-ПК на базе процессоров Qualcomm, в частности модели Snapdragon X Elite. Новый эмулятор призван максимально раскрыть потенциал нейронных сетей этих чипов (NPU) для задач искусственного интеллекта.

При этом Microsoft отмечает, что большинство популярных пользовательских приложений и так уже переведены под Arm64 или имеют кроссплатформенные версии. Среди последних обновлений — полноценная поддержка Arm в таких популярных продуктах как Adobe Photoshop, DaVinci Resolve, Blender и многих других. Кроме того, все основные браузеры теперь также доступны на Arm. Так что перспективы Windows на архитектуре Arm выглядят весьма многообещающе.

Если вы заметили ошибку — выделите ее мышью и нажмите CTRL+ENTER.

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Что лучше по производительности windows 10 или windows 11
  • Windows 10 только 64 бит
  • Папка local temp в windows 10 можно ли удалить
  • Gembird uas111 драйвер windows 10
  • Пропал bluetooth адаптер на ноутбуке windows 10