Vous n'avez pas encore de notification

Page d'accueil

Options d'affichage

Abonné

Actualités

Abonné

Des thèmes sont disponibles :

Thème de baseThème de baseThème sombreThème sombreThème yinyang clairThème yinyang clairThème yinyang sombreThème yinyang sombreThème orange mécanique clairThème orange mécanique clairThème orange mécanique sombreThème orange mécanique sombreThème rose clairThème rose clairThème rose sombreThème rose sombre

Vous n'êtes pas encore INpactien ?

Inscrivez-vous !

Windows 10 pour ARM : comment viendra s'insérer le système dans l'offre actuelle ?

Panique dans les étalages
Logiciel 10 min
Windows 10 pour ARM : comment viendra s'insérer le système dans l'offre actuelle ?

Durant sa conférence BUILD, Microsoft a donné quelques informations supplémentaires sur l’édition ARM de Windows 10. L’occasion de faire le point sur ce nouveau venu dans la famille, qui pourrait bien poser les bases d’une évolution intéressante pour la vision mobile de l’entreprise.

L’idée d’un Windows fonctionnant sur des puces ARM n’est en soi pas nouvelle. On se souvient évidemment de l’aventure Windows RT, qui s’est mal terminée. Mais Microsoft fournit également depuis de nombreuses années des éditions spécifiques de Windows dédiées à toutes sortes de produits. Une déclinaison Embedded de Windows 7 permet par exemple au système d’être installé sur des supports ARM. On pourrait évoquer également les Windows spécifiques aux smartphones.

Pourtant, si on parle aujourd’hui davantage de Windows 10, c’est que la solution adoptée par l’éditeur pourrait changer la donne, en tout cas de son côté. Microsoft prévoit en effet un système dans lequel toutes les applications classiques fonctionneront, de manière transparente pour l’utilisateur. Nous avons donc décidé de faire le point sur les avantages, inconvénients et perspectives d’une telle décision.

Il faut d’abord cependant redonner le contexte d’une telle annonce.

Windows RT, l’un des grands échecs de Microsoft

Pour bien comprendre la volonté initiale de Microsoft sur ce produit, il faut revenir un peu en arrière, avec la sortie de Windows 8. Pour la première fois, le système embarque une boutique d’applications, le Windows Store. Pour l'accompagner, les développeurs sont alors invités à se pencher sur une nouvelle base permettant de créer des applications d’un nouveau type, UWP, pour Universal Windows Platform.

Le principal avantage d’UWP, c’est qu’il est agnostique. Techniquement, il peut fonctionner partout où Windows se trouve. Le code ne tient pas compte des spécificités matérielles, même si le développeur garde la main et peut optimiser son application pour certains types d’appareils. Cette abstraction a été renforcée avec le temps par Microsoft. Le compilateur Roslyn a permis notamment à l’éditeur de proposer une compilation à la volée dans le Store, les serveurs s’occupant de fournir les bons binaires aux utilisateurs selon l’appareil utilisé.

vlc winrt windows8

De là découle Windows RT : un Windows 8 pour puces ARM, dépourvu de la capacité d’exécuter du code Win32, à l’exception des applications internes que Microsoft avait converties. Seuls les développements en UWP, disponibles à travers le Store, étaient acceptées. Et ce fut l’échec.

Principal problème, le fait que Windows RT se retrouvait dans des offres qui, pour la grande majorité de la clientèle, s’apparentaient à des produits Windows tout ce qu’il y a de plus classiques. Or, Windows est connu pour son imposante logithèque : on peut installer tout ce que l’on veut, ou presque. Le manque d’applications dans le Store et l’incompatibilité avec les logiciels Win32 ont provoqué la chute de ce système, dont les ventes n’ont jamais décollé.

Dans l’intervalle, la situation a quand même évolué

Windows RT est clairement resté comme l’un des plus gros échecs de Microsoft. L’écosystème n’était tout simplement pas prêt et il était difficile de convaincre les acheteurs que la solution était pertinente si presque rien (sorti d’Office) ne pouvait répondre à leurs attentes.

Microsoft a donc remballé ses plans, du moins pour un temps. L’écosystème a cependant continué à évoluer, même si à un rythme d’escargot. Alors que l’on s’approche du deuxième anniversaire de Windows 10 (en juillet), le Store ne brille pas spécialement par son nombre d’applications, même si la situation s’est quand même améliorée. Des éditeurs comme Facebook, Slack, Viber, SAP, Adobe et autres ont désormais des logiciels disponibles, qu’ils soient en UWP ou en Win32.

Ce dernier point est crucial car il représente le principal changement dans l’intervalle. Microsoft avait travaillé pendant un moment sur son projet Centennial, devenu le Windows Bridge. Objectif, permettre aux applications Win32 d’intégrer le Store, une fois passées à la moulinette du DAC (Desktop App Converter).

Conséquence, Microsoft tente la séduction auprès des éditeurs pour les attirer dans sa boutique. Le DAC permet de modifier l’installeur de leurs applications pour les rendre compatibles avec le Store. C’est ce dernier qui gère ensuite l’installation et la distribution des binaires, y compris – et c’est un point important – des mises à jour. Les éditeurs peuvent ensuite incorporer à leur rythme des fonctionnalités spécifiques comme les vignettes dynamiques. Ou pas d’ailleurs.

Ce point a largement été mis en avant récemment avec l’annonce de Windows 10 S.

Windows 10 S, un Windows RT nouvelle formule

Le DAC et le Windows Bridge joueront un rôle central dans la stratégie dévoilée par Microsoft autour de Windows 10 S, l’édition pensée pour le monde de l’éducation.

Du coup, c’est en quelque sorte l’aventure RT qui recommence, mais avec deux différences de taille. D’une part, une offre en logiciels Win32, Microsoft préparant d’ailleurs pour très bientôt une offre Office 365 classique dans cette optique. Telegram, Slack, Adobe et autres proposent déjà leurs applications Win32 de cette manière.

Cette solution intermédiaire fait que Windows 10 S a techniquement plus de chances de réussir que Windows RT, surtout que la deuxième grosse différence est sa capacité à migrer vers une édition Pro. Moyennant finances (49 dollars, le tarif français reste à confirmer), l’utilisateur obtient alors un Windows complet, avec possibilité d’installer ce qu’il veut, y compris après récupération d’un exécutable depuis le web.

Microsoft laisse bien sûr entrevoir un avenir où tout serait géré via le Store, avec comme principal argument la sécurité. Puisque la firme serait en charge du contrôle et de la distribution, elle pourrait centraliser la détection des comportements malveillants et assurerait que des serveurs quelconques n’ont pas été attaqués, comme on a pu le voir avec Transmission et HandBrake. Le simple fait qu’Apple ait accepté de proposer iTunes dans le Store envoie un signal assez clair aux éditeurs tiers.

Mais avec un tel contexte, voilà que Windows 10 pour ARM pointe le bout de son nez. Avec à la clé des perspectives intéressantes, mais également une offre trouble.

Windows 10 pour ARM : la conversion des binaires

Dans une vidéo d’un petit quart d’heure, Microsoft est revenu sur le fonctionnement de cette édition très particulière. Comme on l’a vu, le support de l’architecture ARM n’a rien de nouveau à Redmond, mais ce que compte faire Microsoft est cette fois différent, l’utilisateur pouvant installer ce qu’il veut.

Comment fonctionne ce système ? D’une part, l’intégralité de Windows se retrouve converti pour exploiter l’architecture ARM64. Le noyau, les pilotes et tous les programmes internes sont ainsi concernés. Pour l’instant, et comme on s’en souvient, la seule puce compatible est le Snapdragon 835 de Qualcomm. Une situation qui évoluera sans doute, mais la situation peut être complexe avec ARM puisque chaque constructeur peut en créer des variantes.

Puisque l’utilisateur peut installer ce que bon lui semble, où s’opère le gros changement ? Pour que les applications puissent fonctionner, elles doivent pouvoir exploiter une couche d’abstraction nommée WOW, pour Windows on Windows. Mais avant même de pouvoir y accéder, elles doivent être faites d’un code reconnu par le système. À l’origine, ce n’est pas le cas, les applications visant Win32 étant prévues pour x86. Il faut une conversion, et donc une émulation.

Lors de son premier démarrage, le code binaire d’une application est converti en instructions ARM64 natives. Ce code traduit est stocké en cache sur l’unité de stockage et en mémoire vive. Windows produit alors des DLL qu’il nomme CHPE (à prononcer « chipie » selon les deux ingénieurs de la vidéo), pour Compiled Hybrid Portable Execution. Dans ces fichiers, on trouve ainsi le code ARM64 et tout ce qui est nécessaire à la couche WOW.

Conséquence, le code qui s’exécute réellement est du ARM64. Ce qui permet à l’éditeur de mettre en avant un argument qui doit faire mouche : les performances sont natives, ou quasi-natives. En l’état actuel des choses, on ne sait pas réellement si une telle affirmation doit être prise pour argent comptant, et on la prendra donc avec des pincettes.

windows 10 armwindows 10 arm

Ce que permettrait Windows 10 pour ARM

On se retrouverait donc avec un Windows capable dès son lancement d’en faire plus que Windows 10 S. On rappellera cependant que rien n’empêche Microsoft de préparer une version ARM de cette édition, puisque les caractéristiques peuvent tout à fait être mélangées : des applications UWP et Win32 qui s’installent uniquement depuis le Store, et fonctionnent sur ARM (ce qu'UWP gère déjà).

Beaucoup se demandent sans doute pourquoi travailler sur une telle édition de Windows. Si l’on se penche sur la stratégie OneCore de Microsoft, on se rappelle que l’objectif est de fournir une même base fonctionnant partout. « Partout » incluant d’autres architectures. En outre, l’autre grand échec de Microsoft concerne justement la partie mobile : les ventes de smartphones se sont complètement effondrées.

On s’avance donc vers une plateforme pouvant fonctionner partout, le message central devenant alors que l’utilisateur n’aurait plus à se soucier du matériel, puisque ses applications y fonctionneraient dans tous les cas. Le séparateur serait alors purement d’ordre matériel. On imagine assez mal en effet les professionnels cherchant avant tout de la puissance de calcul basculer sur des tablettes ou portables équipés en ARM. Sans parler des joueurs.

Quelles offres avec un tel système ?

De fait, on peut facilement imaginer que la gamme Surface pourrait s’étoffer de nouvelles tablettes, plus légères et mobiles, davantage conçues pour la consommation des contenus que pour leur production (la stratégie centrale des Surface Pro). Et pourquoi pas « Surface Phone » ? Après tout, Windows 10 pour ARM laisserait tourner toutes les applications, offrant des perspectives intéressantes sur l’évolution de Continuum.

Par contre, la stratégie et la communication de Microsoft vont devoir s’adapter. Jusqu’à, le choix de Windows 10 se résumait à l’édition Familiale ou Professionnelle, avec des noms suffisamment explicites. Au cours des prochains mois, on va voir arriver non seulement Windows 10 S, mais aussi la version ARM. Le premier ne fonctionne que sur des processeurs x86 mais bloque les installations provenant du web, tandis que le second laisse tout installer mais réclame des puces ARM. Sans parler des éditions classiques qui ne se posent pas tant de questions.

Pour éviter notamment de reproduire la débâcle de Windows RT, les offres vont devoir être parfaitement calibrées et la communication claire, au risque d’entrainer une grande confusion chez les clients. La plupart des acheteurs n’a en effet que faire des détails techniques, ils souhaitent simplement acheter un ordinateur qui fonctionne et ne les limitera pas. Ce qui nécessitera d'ailleurs de répondre à certaines questions laissées pour l'instant en suspens, notamment sur les réalités virtuelle et augmentée : le système sera-t-il compatible avec Hololens et autres solutions Holographic ?

Ne reste finalement qu’à voir ce que fera réellement de son Windows 10 pour ARM à l’automne prochain, et quels types de produits seront proposés. Les tablettes et ordinateurs portables sont les types d’appareils les plus évidents, mais rien n’empêcherait les constructeurs de proposer des tout-en-un ou de venir chasser sur les terres des mini unités centrales de type NUC d’Intel.

17 commentaires
Avatar de 127.0.0.1 INpactien
Avatar de 127.0.0.1127.0.0.1- 17/05/17 à 14:05:29

Pour ceux qui comme moi ont tiqué sur "émulation" + "le code binaire d’une application est converti en instructions ARM64 natives", et ont pensé "dynamic recompilation" et bien non.

La réponse est donnée dans la vidéo: "Dynamic Binary translation"

Édité par 127.0.0.1 le 17/05/2017 à 14:05
Avatar de bahamut100 Abonné
Avatar de bahamut100bahamut100- 17/05/17 à 14:15:25

Petite faute : "On se souvient évidemment de l’aventure Windows RT, qui s’est mal terminéE"

Avatar de Vincent_H Équipe
Avatar de Vincent_HVincent_H- 17/05/17 à 14:31:32

Corrigé, merci :chinois:

Avatar de RuMaRoCO Abonné
Avatar de RuMaRoCORuMaRoCO- 17/05/17 à 15:03:54

Je reste dubitatif ce le cas.
L’expérience des mise à jour windows phone (que je posséde toujours)  sur certain matériel à chaque fois lumia 800 impossible à migré en windowsphone 8 (resté à7.8) ; Lumia 1020 que ne peut migrer en windows 10 m'ayant pas mal refroidi. 

De plus la force de windows, jusqu'à présent c'est ça grand retro compatibilité. Un gand nombre de jeu sortie à l'époque de windows XP, peuvent encore fonctionner avec windows 10. Et que cela sera encore possible dans l'avenir ...

  

Avatar de bismarckiz Abonné
Avatar de bismarckizbismarckiz- 17/05/17 à 16:11:22

La stratégie de microsoft à clairement été révélé lors de la build. Quelque soit la plateforme de développement et la plateforme pour laquelle on développe, il sont capable de prendre le code et de l'exécuter. J'avoue qu'à y réfléchir c'est tentant, c'est une sorte d'abstraction au hardware (ARM, x86,..) et si on rajoute à ça l'abstraction aux os (windows,linux, android,ios,...) via .NET, ça peut être impressionnant.

Après entre les graphiques, et belles images, il va falloir qu'ils nous le prouvent au jour le jour. Est-ce que ce sera aussi complet qu'un développement directement sur la plateforme dédié et pas limité ?

Je vais regarder la google I/O ce soir pour voir ce qu'il y a de neuf. J'avoue que de leur coté google me parait de plus en plus nombriliste avec leur plateforme et leurs applications. Je me trompe peut être, mais ils se reposent beaucoup sur le succès d'Android je trouve, (je vois peut être pas tout hein ? ;) )

Bon les deux géants sont pas au même stade de maturité, c'est un peu le combat du jeune face au vieux. Mais pour une fois, le vieux a une bonne idée après des succès passé et plusieurs échecs récents.

Avatar de charon.G INpactien
Avatar de charon.Gcharon.G- 17/05/17 à 16:44:43

En fait il reste un point noir mais pas trop de solutions possibles...
Ils émulent uniquement le code en espace utilisateur donc les applications. Les drivers doivent être obligatoirement compilées en ARM au départ.
Donc même si avec les drivers Windows 10 universels ils gèrent l'arm. Beaucoup de constructeurs n'ont pas porté leurs drivers de périphériques pour ARM.
Ensuite toute une classe d'applications systèmes utilisent des drivers kernel mode. Ces applications nécessiteront une mise à jour.
Par contre je pense que les drivers user mode ne devraient pas poser problème avec cette architecture.

Avatar de leith Abonné
Avatar de leithleith- 17/05/17 à 21:11:29

Sympa l'article, cela permet de mieux comprendre et de mettre la stratégie de Microsoft en perspective.

Avatar de TiTan91 INpactien
Avatar de TiTan91TiTan91- 18/05/17 à 00:32:32

Je ne pense pas que l'offre sera moins claire, la dénomination "Windows on ARM" n'a rien d une dénomination commerciale, c'est juste le nom du projet.
Au final vu qu un W10 sur x86 donnera la meme expérience utilisation qu'un W10ARM sur ARM, à mon avis ce sera simplement vendu comme "W10", ensuite c'est juste l'archi du cpu qui est différente.
C'est même pas certain que cette capacité ne soit pas simplement intégrée dans W10, s'activant (ou s'installant) à la détection d'un cpu ARM. Bref on aurait juste un W10, mais qui pourrait tourner sur plusieurs archis cpu.

Avec c-shell il serait meme possible que la déclinaison mobile disparaisse (remplacée par un W10 normal s'adaptant complètement à l'appareil).

En fait le seul truc étrange dans leur découpage c'est family/pro et leurs tarifs... avec W10S qui permet l'upgrade à pro pour 50$, la différence de prix family/pro (et le prix de l'upgrade) n'a plus vraiment de sens... ça ne m'étonnerait pas qu'il y ait des changements de ce coté peu après la sortie des machines sous W10S

Avatar de Patch INpactien
Avatar de PatchPatch- 18/05/17 à 07:03:17

bahamut100 a écrit :

Petite faute : "On se souvient évidemment de l’aventure Windows RT, qui s’est mal terminéE"

En bas d'article tu as un bouton "/!\ Signaler une erreur" pour éviter de l'écrire en commentaire ;)

TiTan91 a écrit :

C'est même pas certain que cette capacité ne soit pas simplement intégrée dans W10, s'activant (ou s'installant) à la détection d'un cpu ARM. Bref on aurait juste un W10, mais qui pourrait tourner sur plusieurs archis cpu.

Ca je ne pense pas, il y a trop de différences entre les archis pour avoir en même temps plusieurs codes bas-niveau...

Édité par Patch le 18/05/2017 à 07:07
Avatar de RuMaRoCO Abonné
Avatar de RuMaRoCORuMaRoCO- 18/05/17 à 08:46:31

Petit hors sujet : Il y a même plus facile Il suffit juste de surligner avec sa souris et un petit popup interrogeant sur l'éventualité d'un défaut ( "une erreur ?) s'affiche et simplement en cliquant dessus cela ouvre le menu de report d'erreur. 

Moi je trouve ça génial. 

Il n'est plus possible de commenter cette actualité.
Page 1 / 2