Pourquoi Windows 7 64 bits ne peut-il pas exécuter des programmes 32 bits?

9

D'après ce que je comprends, l'architecture n'a pas changé autant qu'elle l'a fait de 16 bits à 32 bits, alors pourquoi avons-nous besoin du mode XP et autres pour exécuter des applications 32 bits dans Windows 7 64 bits?

Ou ai-je mal compris?

oscar
la source
Nous avions un programme qui ne l'aimait pas beaucoup. Le problème réel à la fin se résumait à 64 bits Office (nous avions un plugin Office).
Joshua

Réponses:

16

il peut très bien exécuter des programmes 32 bits. Il ne peut pas exécuter de programmes 16 bits.

Le mode XP est un peu d'assurance - si un logiciel particulier ne fonctionne pas sur 7 (32 OU 64 bits - le mode xp est disponible pour l'édition professionnelle et les deux), vous pouvez l'exécuter en mode XP. Cela ne m'est pas encore arrivé, mais c'est probablement pour le "vous pouvez prendre XP de la foule de mes mains mourantes".

Dans la plupart des cas, le mode de compatibilité fera

Compagnon Geek
la source
Dang! J'ai eu du mal à exécuter certaines applications comme Visual Studio 6, Guitar Pro, etc. et toutes les recherches m'ont amené à gagner en mode XP sans vraiment dire pourquoi. Merci beaucoup!
Oscar
2
Certaines applications se plaindront, mais il n'y a aucune raison en théorie de ne pas pouvoir exécuter des applications 32 bits.
Shinrai
@Oscar VS6 nécessite MS Java.
kinokijuf
5

J'espère que cela jette un peu de lumière sur les incompatibilités:

Microsoft a décidé de resserrer le noyau avec les versions 64 bits. Les pilotes de périphériques ont le même niveau d'accès au matériel que le noyau, donc certaines choses spécifiques qui ont été modifiées dans les versions 64 bits au nom de la sécurité sont:

  • Les pilotes doivent être signés par Microsoft pour être chargés.
  • Je ne sais pas si techniquement les pilotes 32 bits peuvent fonctionner avec un noyau 64 bits (peu probable) mais Microsoft ne signe pas de nouveaux pilotes 32 bits avec la clé souhaitée par le noyau 64 bits. Ainsi, tous les pilotes XP 32 bits existants ne fonctionneront pas sur Vista / 7 64 bits.
  • Les pilotes ne peuvent pas écraser ou corriger le noyau.

Microsoft est également passé à un nouveau modèle de pilote d'affichage vidéo (LDDM), mais a conservé l'ancien (XDDM). XDDM, l'ancien modèle, ne prend pas en charge Aero.

Certains programmes chargent des pilotes de périphériques personnalisés à la volée pour accomplir leurs tâches. Ceux-ci ne fonctionneront certainement pas sur Vista / 7.

Microsoft a mis à jour un certain nombre de composants dans Vista / 7. Cela pourrait signifier un changement dans le comportement non documenté de ces composants. Les programmes qui s'appuient sur des bogues dans ces composants ou des fonctions DLL non documentées auraient également un problème.

LawrenceC
la source
+1 pour un aperçu des pilotes Windows 32 bits et 64 bits. J'ai un vieux matériel audio (SW1000XG, UR-80) qui ne fonctionnera que sur mon installation 32 bits de Windows 7 mais pas sur mon installation 64 bits. C'est vraiment dommage car ce sont de jolis kits classiques.
therobyouknow
"Je ne sais pas si techniquement les pilotes 32 bits peuvent fonctionner avec un noyau 64 bits (peu probable)" . Ce n'est pas impossible dans les systèmes d'exploitation en général, mais pour le faire dans Windows, tous les pilotes devraient se conformer aux modèles de pilotes avec une isolation beaucoup plus stricte des divers détails internes du système d'exploitation. Je ne vois pas comment cela pourrait être fait avec par exemple le modèle de pilote Windows ou les pilotes pré-WDM. WDF serait plus facile mais toujours pas un slam-dunk.
Jamie Hanrahan
2

Les programmes 32 bits devraient fonctionner correctement sous Windows 64 bits.

Le mode XP est destiné aux programmes incompatibles avec Windows Vista et Windows 7, quelle que soit leur version.

Consultez cet article Ars Technica pour plus d'informations.

Le problème a vraiment atteint son paroxysme avec la sortie de Windows Vista. La compatibilité de Vista avec XP était très bonne, mais elle n'était pas parfaite. Microsoft a beaucoup travaillé sur Vista pour le durcir contre les attaques (UAC, bien sûr, mais aussi d'autres choses, comme interdire aux services d'interagir avec l'utilisateur), et ensemble ces modifications et améliorations, ainsi que des choses plus banales comme la mise à jour du numéro de version que Windows a comploté pour casser un vieux logiciel.

ChrisF
la source