Pourquoi les systèmes d'exploitation 64 bits ne peuvent-ils pas exécuter des applications 16 bits ?

Pourquoi les systèmes d'exploitation 64 bits ne peuvent-ils pas exécuter des applications 16 bits ?

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 la personne à qui vous posez la question. 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 tu veux 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 nativement des applications 16 bits.

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 croyait à l'époque être une technologie de pointe.



A l'époque, ça l'était. Ces vieilles machines fonctionnaient Intel 8086 processeur en 1978. Le processeur a pu accéder à un espace d'adressage de 1 Mo en utilisant un adressage 16 bits. Avec les machines antérieures fonctionnant avec 64 Ko de mémoire, il s'agissait d'une avancée considérable et du 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 CPU avec le processeur 80286, capable d'adresser 16 Mo en utilisant un 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. Exécuter d'anciennes applications 16 bits en « mode réel » n'était pas toujours facile, mais c'était possible.

La fin du 16 bits, en quelque sorte...

En 1985, Intel a présenté son processeur de nouvelle génération : l'Intel 386. Il s'agissait du premier processeur Intel capable d'adresser la mémoire en utilisant 32 bits à la fois et d'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 à son apogée.





Avec l'avènement de l'architecture 32 bits est venu une version étendue de Mode protégé cela permettait non seulement d'accéder à plus de mémoire, mais incluait un ensemble de fonctionnalités permettant au logiciel de signaler au système s'il s'agissait de code 16 bits ou 32 bits. Cela a été rendu possible par ce qu'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 à l'autre, le matériel (programmation CPU) et le logiciel (systèmes d'exploitation et applications) ont maintenu une rétrocompatibilité pour tous les utilisateurs qui avaient encore de très vieux logiciels qu'ils voulaient Cours. Pour les utilisateurs d'ordinateurs individuels, c'était utile, mais pour de nombreuses entreprises et petites entreprises, c'é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, une autre percée s'est produite. 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, avec cette énorme avancée est venu un compromis important. Lorsque les utilisateurs ont tenté d'exécuter des applications 16 bits qui nécessitaient le « mode réel » ou le « mode virtuel 8086 » pris en charge depuis longtemps, ils ont découvert un message d'erreur indiquant « Program.exe n'est pas une application Win32 valide ».

C'était frustrant, mais ce n'était pas la fin du monde. Utilisateurs pourrait utiliser des émulateurs ou installer des machines virtuelles 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, alors qu'il est « 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, beaucoup d'efforts ont été consacrés au système d'exploitation pour que le système gère les anciennes applications DOS 16 bits. Cela a été accompli en utilisant ce que l'on appelle la NTVDM, ou NT Virtual DOS Machine.

Cette application 32 bits s'exécutait 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 » ne pouvait pas s'adapter à cela en toute sécurité. Au lieu de cela, il aurait fallu émuler un processeur 8086 complet simplement pour prendre en charge l'exécution d'applications DOS.

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 indique 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 d'accomplir cela de toute façon, Microsoft n'a clairement pas estimé qu'il était dans son meilleur intérêt de réinventer la roue.

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

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

Si vous appréciez jeux DOS classiques ou utilisez d'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'un des moyens les plus simples d'exécuter d'anciennes applications DOS sur votre PC consiste à utiliser un émulateur. L'un des plus populaires d'entre eux est DOSBox .

comment transférer de la musique d'ipod vers itunes windows 10

Christian a expliqué comment installer et configurer DOSBox pour exécuter de vieux jeux rétro sur votre ordinateur Windows.

Ce qui est bien, c'est que la plupart de ces jeux sont si vieux que ils sont considérés comme un abandonware , vous pouvez donc les télécharger légalement et les jouer gratuitement.

2. Exécutez des 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 de manière native, vous pouvez exécuter les mêmes applications sur votre système 64 bits en créant une machine virtuelle avec l'un de ces systèmes d'exploitation.

L'une des applications les plus connues et les plus faciles à configurer pour cela est VirtualBox . Nous avons un guide complet sur comment configurer et utiliser VirtualBox , vous pouvez donc commencer à utiliser cette approche dès maintenant.

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. Les distributions avec le noyau PAE, 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.

Deux options pour cela : une solution à double amorçage ou une machine virtuelle. Ou vous pouvez simplement vider Windows entièrement, et aller avec Linux . Tout ce qui fonctionne pour vous.

4. Utilisez des émulateurs

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

Christian a expliqué comment imiter un Ami Commodore , à Tarte aux framboises , un Android , et même SNES classique sur n'importe quel PC.

Ce n'est que la pointe de l'iceburg. Si vous effectuez une recherche en ligne, vous trouverez toute une bibliothèque de différents émulateurs 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 de l'époque, 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. C'est peut-être impossible nativement, mais comme vous pouvez le voir, il existe de nombreuses solutions pour accomplir la tâche.

Partager Partager Tweeter E-mail 12 sites vidéo qui sont meilleurs que YouTube

Voici quelques sites de vidéos alternatifs à YouTube. Ils occupent chacun un créneau différent, mais valent la peine d'être ajoutés à vos signets.

Lire la suite
Rubriques connexes
  • Jeux
  • La technologie expliquée
  • Émulation
  • Windows 10
  • 64 bits
A propos de l'auteur Ryan Dubé(942 articles publiés)

Ryan est titulaire d'un baccalauréat 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.

Plus de Ryan Dube

Abonnez-vous à notre newsletter

Rejoignez notre newsletter pour des conseils techniques, des critiques, des ebooks gratuits et des offres exclusives !

Cliquez ici pour vous abonner