Publicité

Une fois que les ordinateurs ont commencé à utiliser l'architecture 64 bits moderne, les utilisateurs se sont vite rendu compte que l'exécution de ces anciennes applications 16 bits n'allait pas fonctionner. Pourquoi les machines 64 bits ne peuvent-elles pas exécuter des applications 16 bits?

La réponse à cette question peut être déroutante, selon qui vous demandez. D'une part, il n'est pas impossible d'exécuter des applications 16 bits. C'est juste difficile. Deuxièmement, la raison de cette difficulté réside à la fois dans l'architecture du processeur et le système d'exploitation.

Vous êtes encore confus? Ne vous inquiétez pas, vous n’êtes pas seul. Mais au moment où vous arriverez à la fin de cet article, vous ne serez plus confus.

L'histoire de l'architecture CPU

Je sais, la dernière chose que vous voulez lire est une leçon d'histoire, non? Ne vous inquiétez pas, c'est court. Il est également essentiel de comprendre pourquoi les systèmes 64 bits ne peuvent pas exécuter des applications 16 bits en mode natif.

instagram viewer

Si vous avez vécu les années 80 et 90, vous vous souvenez probablement de ces vieux dinosaures 16 bits que tout le monde à l'époque croyait être une technologie de pointe.

pourquoi 64 bits ne peut pas exécuter des applications 16 bits

À l'époque, c'était le cas. Ces vieilles machines Intel 8086 processeur en 1978. Le processeur a pu accéder à un espace d'adressage de 1 Mo en utilisant l'adressage 16 bits. Avec des machines antérieures fonctionnant avec 64 Ko de mémoire, ce fut une avancée considérable et a marqué le début d'une nouvelle ère dans l'informatique personnelle.

Dans ce mode (appelé Mode réel), une partie était réservée à la RAM et le reste était utilisé par le BIOS et le matériel informatique comme la carte graphique.

Un peu plus tard, une nouvelle avancée dans l'architecture du processeur est venue avec le processeur 80286, capable d'adresser 16 Mo en utilisant l'adressage 16 bits. Avec l'architecture 286 est venu le «mode protégé», avec des fonctionnalités qui permettaient non seulement l'adressage de plus de mémoire, mais aussi le multitâche. L'exécution d'anciennes applications 16 bits en «mode réel» n'a pas toujours été facile, mais c'était possible.

La fin de 16 bits, sorte de…

En 1985, Intel a présenté son processeur de nouvelle génération: l’Intel 386. Il s'agissait du premier processeur Intel qui pouvait adresser la mémoire en utilisant 32 bits à la fois, et pouvait accéder à un énorme 4 Go de mémoire adressable. À l'époque, cela semblait aux utilisateurs d'ordinateurs comme une percée majeure. Le jeu sur PC était sur le point d'entrer dans son apogée.

pourquoi 64 bits ne peut pas exécuter des applications 16 bits

Parallèlement à l'avènement de l'architecture 32 bits, une version étendue de Mode protégé cela permettait non seulement d'accéder à plus de mémoire, mais il comprenait un ensemble de fonctionnalités permettant au logiciel de signaler au système qu'il s'agissait de code 16 bits ou 32 bits. Cela a été rendu possible par ce que l'on appelle Mode 86 virtuel, qui était essentiellement un système 8086 virtualisé intégré.

Comme vous pouvez le voir, d'une évolution de l'architecture CPU à la fois, le matériel (programmation CPU) et le logiciel (fonctionnement systèmes et applications), a maintenu la compatibilité descendante pour tous les utilisateurs qui avaient encore de très vieux logiciels qu'ils voulaient courir. Pour les utilisateurs d'ordinateurs individuels, cela était utile, mais pour de nombreuses sociétés et petites entreprises, il était essentiel pour les systèmes hérités.

L'architecture 64 bits a tout gâché

La limite de 4 Go de mémoire adressable est restée une béquille pour les systèmes 32 bits pendant de nombreuses années. Cependant, avec l'invention des processeurs 64 bits est venue une autre percée. Ces systèmes comprenaient un nouveau mode (appelé Mode long) capable d'adresser jusqu'à 16 millions de téraoctets de mémoire. Il faudra probablement beaucoup de temps avant que cela ne devienne un facteur limitant pour les applications informatiques.

Cependant, cette formidable avancée a entraîné un compromis important. Lorsque les utilisateurs ont tenté d'exécuter des applications 16 bits qui nécessitaient le «mode réel» longtemps pris en charge ou «Mode 8086 virtuel», ils ont découvert un message d'erreur qui disait: «Program.exe n'est pas un Win32 valide application."

pourquoi 64 bits ne peut pas exécuter des applications 16 bits

C'était frustrant, mais ce n'était pas la fin du monde. Utilisateurs pourrait utiliser des émulateurs Comment exécuter d'anciens jeux et logiciels sur Windows 10Les anciens jeux et logiciels PC peuvent avoir des difficultés sur Windows 10. Essayez ces conseils pour faire fonctionner vos anciens jeux et programmes Windows sur Windows 10. Lire la suite ou installer des machines virtuelles VirtualBox vs. VMware Player: la meilleure machine virtuelle pour WindowsAvez-vous du mal à décider quel logiciel de machine virtuelle utiliser? VirtualBox et VMware Workstation Player sont tous deux gratuits. Mais lequel vous convient le mieux? Laissez-nous vous aider à le découvrir! Lire la suite exécutant une architecture 32 bits et des systèmes d'exploitation capables de prendre en charge les applications 16 bits héritées.

Ainsi, bien qu'il soit «impossible» pour les systèmes 64 bits d'exécuter des applications MS-DOS 16 bits, il n'est pas impossible pour les utilisateurs de le faire en utilisant une solution de contournement. Mais pourquoi est-ce arrivé?

L'architecture 64 bits supprime le NTVDM

Dans chaque génération de processeur 32 bits au fil des ans, le système d'exploitation a déployé beaucoup d'efforts pour que le système gère les anciennes applications DOS 16 bits. Cela a été accompli en utilisant ce qu'on appelle la machine NTVDM ou NT Virtual DOS.

Cette application 32 bits fonctionnait dans le système d'exploitation Windows et simulait une architecture 486 capable de gérer l'adressage 16 bits à l'aide du 8086 virtuel. Malheureusement, l'adressage en "mode long" n'a pas pu accepter cela en toute sécurité. Au lieu de cela, il aurait fallu émuler un processeur 8086 complet simplement pour prendre en charge les applications DOS.

pourquoi 64 bits ne peut pas exécuter des applications 16 bits

Microsoft a clairement pris la décision d'abandonner cet effort afin de prendre en charge la sortie rapide de son premier système d'exploitation 64 bits. Sur sa page d'assistance, Microsoft déclare clairement que "les utilitaires MS-DOS 16 bits et Microsoft Windows 3.x ne démarreront pas."

Pas d'excuses. Ce n'est tout simplement pas pris en charge.

Avec la pléthore de produits de virtualisation sur le marché capables de le faire de toute façon, Microsoft n'a clairement pas estimé qu'il était dans son intérêt de réinventer la roue.

Comment exécuter des applications 16 bits sur des systèmes 64 bits

Tout simplement parce que l'exécution d'applications DOS 16 bits n'est pas prise en charge nativement sur les systèmes Windows 64 bits, cela ne signifie pas que c'est impossible. Vous avez juste besoin d'installer des outils supplémentaires pour configurer les choses.

Si vous aimez jeux DOS classiques 7 sites pour trouver les meilleurs jeux DOS classiques Lire la suite ou utiliser toutes les autres applications rétro du bon vieux temps de l'informatique, il existe des options. Voici quatre façons de les exécuter sur votre nouvelle machine Windows.

1. Jouez à des jeux rétro avec DOSBox

L'une des façons les plus simples d'exécuter d'anciennes applications DOS sur votre PC est d'utiliser un émulateur. L'un des plus populaires d'entre eux est DOSBox.

Christian a détaillé comment installer et configurer DOSBox pour exécuter de vieux jeux rétro Comment jouer à des jeux rétro sur n'importe quelle plate-forme avec DOSBoxVous voulez jouer à des jeux PC rétro sur votre ordinateur, votre téléphone ou votre console de jeu? Voici tout ce que vous devez savoir pour commencer avec DOSBox, y compris les meilleurs jeux à émuler! Lire la suite sur votre machine Windows.

pourquoi 64 bits ne peut pas exécuter des applications 16 bits

La grande chose à ce sujet est que la plupart de ces jeux sont si anciens que ils sont considérés comme abandonware 7 sites pour trouver les meilleurs jeux DOS classiques Lire la suite , afin que vous puissiez les télécharger légalement et les jouer gratuitement.

2. Exécutez les applications dans VirtualBox

Étant donné que les systèmes d'exploitation tels que Windows XP et Windows 7 peuvent exécuter des applications 16 bits en mode natif, vous pouvez exécuter le mêmes applications sur votre système 64 bits en créant une machine virtuelle avec l'un de ces systèmes d'exploitation sur il.

L'une des applications les plus connues et les plus faciles à configurer est VirtualBox. Nous avons un guide complet sur comment configurer et utiliser VirtualBox Comment utiliser VirtualBox: Guide de l'utilisateurAvec VirtualBox, vous pouvez facilement installer et tester plusieurs systèmes d'exploitation. Nous vous montrerons comment configurer Windows 10 et Ubuntu Linux en tant que machine virtuelle. Lire la suite , vous pouvez donc commencer à utiliser cette approche dès maintenant.

pourquoi 64 bits ne peut pas exécuter des applications 16 bits

Assurez-vous simplement de choisir le bon système d'exploitation à installer. Restez avec Windows 7 ou une version antérieure, et vous pouvez télécharger et installer d'anciennes applications DOS sur votre système virtuel en un rien de temps.

3. Utilisez Linux

Dites ce que vous voulez à propos de Linux, une chose que la plupart des distributions Linux ont raison est la prise en charge des applications 16 bits. Distros avec le PAE kernal, vous n'êtes pas limité aux 4 Go de systèmes 32 bits, donc exécuter une distribution Linux appropriée en tant que double démarrage sur votre système est une autre option.

pourquoi 64 bits ne peut pas exécuter des applications 16 bits

Pour ce faire, deux options: a solution à double démarrage ou une machine virtuelle Quelle est la meilleure façon d'exécuter plusieurs systèmes d'exploitation sur votre PC?Indécis entre Windows et Linux? Il est possible d'exécuter plusieurs systèmes d'exploitation sur une seule machine soit par double démarrage ou en utilisant une machine virtuelle. Découvrons laquelle vous convient le mieux. Lire la suite . Ou vous pouvez simplement vider Windows entièrement, et aller avec Linux 6 choses qu'Ubuntu fait mieux que WindowsCertains pensent qu'Ubuntu est pour les nerds - mais la vérité est qu'Ubuntu est tout aussi facile à utiliser que Windows. En fait, il y a plusieurs choses que Ubuntu fait mieux que Windows 10. Lire la suite . Tout ce qui fonctionne pour vous.

4. Utiliser des émulateurs

DOSBox n'est pas le seul émulateur disponible pour exécuter d'anciennes applications DOS. Il y a beaucoup de grands émulateurs qui fonctionnent aussi bien. Cela est particulièrement vrai si vous êtes un joueur.

Christian a couvert comment émuler un Commodore Amiga, une Tarte aux framboises, une Android, et même SNES classique sur n'importe quel PC.

pourquoi 64 bits ne peut pas exécuter des applications 16 bits

Ce n'est que la pointe de l'iceburg. Si vous effectuez une recherche en ligne, vous trouverez toute une bibliothèque d'émulateurs différents qui vous permettront d'exécuter à peu près n'importe quelle application rétro que vous pouvez imaginer. Microsoft a peut-être abandonné les anciennes applications 16 bits depuis le début, mais vous avez toujours des options.

N'abandonnez pas le 16 bits

Il n'y a aucune raison que vous pensiez que c'est impossible pour exécuter des applications 16 bits sur une machine 64 bits. Cela peut être impossible nativement, mais comme vous pouvez le voir, il existe de nombreuses solutions pour accomplir la tâche.

Ryan est titulaire d'un BSc en génie électrique. Il a travaillé 13 ans dans l'ingénierie d'automatisation, 5 ans dans l'informatique et est maintenant ingénieur d'applications. Ancien rédacteur en chef de MakeUseOf, il a pris la parole lors de conférences nationales sur la visualisation des données et a été présenté à la télévision et à la radio nationales.