À la fin de l’année dernière, Neowin a indiqué que Microsoft travaillait à l’introduction de l’émulation 64 bits pour les PC dotés d’une puce ARM fonctionnant sous Windows 10. Un récent commit sur GitHub datant de mars de cette année, repéré par Longhorn sur Twitter, qui fait partie de l’équipe de checkra1n chargée des jailbreaks, laisse entendre que Microsoft a progressé vers la réalisation de cet objectif.
Dès à présent, les PC ARM sous Windows 10 peuvent émuler des applications Windows 32 bits, grâce à la couche d’abstraction Windows on Windows. Grâce à cet ajout, les utilisateurs pourraient enfin être en mesure d’exécuter des versions 64 bits complètes d’applications Windows, par exemple Adobe Premiere Pro, en émulation.
Le commit a été rédigé par Kenny Kerr, un ingénieur logiciel de l’équipe Windows, et on peut y lire « Add linker support for x64 code emulation on ARM64 ». C’est une bonne nouvelle pour les personnes impatientes d’utiliser des applications Windows 64 bits sur des PC ARM.
Naturellement, vous pouvez exécuter des applications ARM 64 bits (ARM64) en natif, et si un développeur recompilait son application en tant qu’application ARM64 cela fonctionnerait. Bien sûr, cela nécessite un effort supplémentaire de recompilation pour Windows 10 on ARM. Et, cela pourrait être un véritable casse-tête pour une application tentaculaire comme celle d’Adobe.
Avec l’émulation x64, toute application Windows 64 bits sera simplement capable de fonctionner telle quelle depuis l’émulateur.
En parlant de l’émulation x64, Erin Chapple, directrice générale de Windows, a déclaré à ZDNet : « Émuler x64 en plus de x86 double le travail d’ingénierie. Contrairement à la prise en charge 32 bits, ce serait également un nouveau travail. En outre, Windows prend uniquement en charge la couche d’abstraction Windows on Windows (WOW) pour les applications 32 bits, pas les applications 64 bits. Il faudrait ajouter la prise en charge d’une couche Windows on Windows 64 bits », en 2018.
Windows architectures:
_M_ARM64EC :
x86_64 on Arm64 machine type.
—Longhorn (@never_released) May 17, 2020
La performance est la clé
Alors pourquoi cela n’a-t-il pas été fait avant maintenant ? Eh bien, c’est lié à des problèmes de performances, car l’utilisation de l’émulation est plus délicate pour faire fonctionner les applications x64 sans problème que l’émulation 32 bits. Et bien sûr, la bonne nouvelle, c’est que comme Windows 10 on ARM est devenu de plus en plus puissant, utilisant maintenant des puces Snapdragon 8cx de Qualcomm, tout problème de performance risque d’être beaucoup moins ressenti en termes d’émulation 64 bits.
Il sera intéressant de voir si le géant basé à Redmond parvient à combler le fossé des performances pour offrir à l’utilisateur une expérience comparable à celle des appareils Intel. Cependant, le support ne sera probablement pas ajouté avant la seconde moitié de l’année 2021.