67 votes

Windows a-t-il jamais supporté des architectures matérielles autres que x86 ?

Microsoft Windows Internals, 4ème édition dit :

L'architecture du processeur Intel x86 définit quatre privilèges de privilèges, ou anneaux, pour protéger le code et les données du système contre d'être écrasés, par inadvertance ou par malveillance, par du code de moindre privilège. privilège inférieur. Windows utilise le niveau de privilège 0 (ou anneau 0) pour le mode noyau et le niveau de privilège 3 (ou anneau 3) pour le mode utilisateur. La raison pour laquelle Windows n'utilise que deux niveaux est que certaines architectures matérielles qui étaient supportées dans le passé (telles que Compaq Alpha et Silicon Graphics MIPS) n'implémentaient que deux niveaux de privilèges .

Cela signifie-t-il que Windows a déjà supporté Alpha et MIPS ?

3voto

John Ambers Points 11

Windows 10 IoT Core fonctionne sur une architecture ARM 32 bits (IA-32, ARMv7), comme le Raspberry Pi 3. Il présente cependant certaines limitations.

Sources :

1voto

toong Points 539

Windows NT (en tant que noyau dans Windows RT, WP8, WP8.1 et Windows 10 pour téléphones) prend en charge les architectures ARM v7-A (32 bits) et ARM v8-A (64 bits) (Windows 10 pour téléphones actuellement sur les Lumia 950/950XL avec chipset Qualcomm Snapdragon 810) en plus de x86 (y compris x86-64 (Windows AMD64), i386/i586/i686 (Windows x86)). Cela s'ajoute aux architectures historiquement prises en charge mentionnées dans d'autres réponses, comme Alpha, MIPS, Itanium et PowerPC.

Comme indiqué dans une autre réponse, les applications de bureau Win32 ne peuvent pas fonctionner en mode natif sous Windows NT sur ARM (c'est-à-dire sans émulation x86 sur ARM) si elles sont compilées pour l'architecture x86 (comme c'est le cas la plupart du temps). Cependant, comme l'a mentionné l'utilisateur 2284570, les exécutables natifs ARM ou les bibliothèques dynamiques ne peuvent fonctionner dans Windows NT pour ARM que s'ils (les binaires de distribution) ont été signés numériquement par Microsoft, ce qui empêche les développeurs tiers de distribuer les applications natives ARM (contrairement à la politique avec x86 ou d'autres architectures précédemment supportées par exemple). Microsoft a choisi de ne pas prendre en charge les applications Win32 ciblées x86 (logiciels Desktop Windows) au niveau binaire via l'émulation sur Windows for ARM, car la pénalité de performance pour l'émulation serait énorme et totalement contraire à l'idéal ARM de performance dans un budget énergétique serré (faible TDP).

Note : L'API Windows à laquelle je fais référence ici est la Win32 indigène et non l'interface WINAPI de .NET ( géré ) version. La compatibilité des applications fait référence ici à la compatibilité au niveau binaire, et non à la compatibilité au niveau source, si cela n'était pas évident.

Toutefois, avec l'avènement de la plateforme Windows RT et maintenant de la plateforme Windows universelle (UWP), il est désormais possible de créer des logiciels compatibles avec l'architecture de Windows (auparavant, les logiciels devaient être émulés ou recompilés pour fonctionner sous Windows sur différentes architectures).

-1voto

cagey Points 15

Windows NT fonctionnait sur des puces MIPS et Alpha. J'ai fait tourner NT4 sur un Alpha. Vous deviez flasher un firmware différent pour démarrer NT au lieu de VMS.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X