Grâce au code source de ChakraCore et à une offre d’emploi, nous avons appris que Microsoft travaillait à la prise en charge d’ARM64 par Windows dès la prochaine mise à jour majeure. Quels seront les effets de cette prise en charge sur les produits de Microsoft, à savoir Windows 10, Windows 10 Mobile et Windows Server ?

arm-cortex-A72

Windows 10 Mobile

Les Lumia 950 et 950 XL sortis il y a quelques mois sont équipés des processeurs Qualcomm Snapdragon 808 et 810 qui ont la particularité d’utiliser l’architecture ARMv8, c’est-à-dire une architecture 64 bits. Pourtant, ces deux téléphones exécutent Windows 10 Mobile dans sa version 32 bits. De la même façon qu’il a fallu attendre Vista avant de voir une version grand public de Windows compatible 64 bits sur ordinateur, le système mobile de Microsoft n’est pas encore compatible avec le 64 bits.

Il semblerait que Microsoft travaille à la correction de ce problème pour l’année 2016. On l’a appris d’abord grâce au code source de ChakraCore publié la semaine dernière, qui comporte du code compatible avec ARM64 (c’est à dire compatible avec des processeurs ARM 64 bits). WalkingCat, que l’on connait sur Twitter sous le pseudo @h0x0d, a également trouvé une offre d’embauche sur le site de Microsoft concernant le développement d’une version ARM64 de Windows.

Cette offre nous permet d’apprendre que Microsoft prévoit la sortie de cette version en même que Redstone, le nom de code des deux mises à jour de Windows 10 prévues en 2016.

Quel est l’intérêt d’une compatibilité avec ARM64 ?

Le premier avantage d’une compatibilité ARM64 est la possibilité pour Microsoft de proposer une version de Windows pour chaque appareil et chaque architecture. En effet, Windows 10 sera maintenant compatible avec x86 32 bits, x86 64 bits, ARM 32 bits et ARM 64 bits, ce qui représente l’écrasante majorité des architectures actuellement utilisées.

Lumia-950-gallery-2-jpg (1)

Le Lumia 950 équipé d’un processeur 64 bits

Le second avantage, plus concret, vient de la compatibilité avec l’architecture ARMv8 qui englobe ARM64. Cette architecture est déjà utilisée par Android et sur l’iPhone et permet de meilleures performances et une plus grande autonomie.

Enfin, le passage au 64 bits permet l’utilisation de plus de RAM sur les téléphones, mais cet avantage semble moins intéressant dans l’immédiat, puisque Windows 10 Mobile fonctionne très bien dans les limites du 32 bits.

On peut penser que le premier téléphone de Microsoft qui bénéficiera de cette compatibilité, et qui sortira avec Windows 10 Redstone, sera le Surface Phone.

Windows 10

Plusieurs sites ont émis l’hypothèse d’une compatibilité de Windows 10 dans sa version pour ordinateur avec l’architecture ARM. Cette version correspondrait en fait au descendant de Windows RT.

05498337-photo-microsoft-surface-avec-windows-rt-32

Nous pensons que Microsoft continue de développer une version de bureau compatible ARM de Windows, mais qu’il n’a pas prévu de commercialiser cette version. Il serait dommage pour l’entreprise de perdre le travail effectué sur l’adaptation de Windows sur ARM avec Windows RT, même si ce fut un échec commercial.

En continuant à développer cette version, qui ne demande pas beaucoup de moyens humains, l’entreprise s’assure qu’elle pourra répondre à la demande des fabricants si d’aventure, Intel ne pouvait pas suivre une marque de puce ARM sur le plan de la consommation ou des performances.

Windows Server

La dernière branche de produit Microsoft concernée par ce changement est Windows Server. Nous ne parlons pas souvent de ce produit dans nos colonnes. Destiné comme son nom l’indique à équiper des serveurs, ce système aurait tout intérêt à être compatible ARM64. En effet, beaucoup de serveurs sont en train d’être renouvelés vers cette nouvelle architecture prisée, comme pour Windows Mobile, pour sa faible consommation et ses performances.

Un serveur demande habituellement des processeurs très performants, mais les processeurs ARM consomment si peu que l’on peut en installer plus par machine. En parallèle, leur puissance devient supérieure.

Source : Github (ChakraCore), WalkingCat