La réponse simple est "MS n'a pas publié de port" (bien que Windows 8 soit censé être porté sur ARM), simplement parce que cela n'avait aucun sens commercial à l'époque. Si vous voulez entrer, si la SEP pouvait ...
Eh bien, historiquement, la famille NT a fonctionné sur une gamme de processeurs - NT fonctionnait sur Alpha, PPC et MIPS, et il y avait des ports prévus pour les architectures Clipper et SPARC. Cela est possible car Windows NT a résumé les parties du code dépendant du matériel (la couche HAL ) et la réécriture de cette section et la recompilation de tout le reste devraient faire l'affaire (bien qu'en théorie, les logiciels basés sur .NET soient censés être indépendants du matériel).
Contrairement à Linux, qui, si je me souviens bien, a des branches de noyau séparées pour chaque architecture, soi-disant SEULE la HAL est spécifique au matériel, et le reste est commun - je crois qu'une fois qu'une HAL pour la plate-forme ARM en question a été créée, elle devrait être relativement trivial, et pas différent du codage pour divers bits de matériel, surtout si le système était par ailleurs conventionnel, par exemple, en utilisant PCI-E et d'autres interfaces standard de l'industrie.
En supposant que Microsoft a publié un port ARM de Windows 7, tout logiciel non interprété ou fonctionnant sur une machine virtuelle comme JVM, LLVM ou CLR devrait être recompilé ou exécuté sur une couche de traduction, comme Rosetta ou l'ancienne compatibilité 68K couche sur les anciens macs , qui connaît le code spécifique x86 (et l'exécute en émulation de manière transparente), et il y a suffisamment de puissance de processeur pour la traduction.