Windows 7 64ビットで32ビットプログラムを実行できないのはなぜですか?


9

私が理解しているところによると、アーキテクチャは16ビットから32ビットほど変化していませんが、Windows 7 64ビットで32ビットアプリを実行するためにXPモードなどが必要なのはなぜですか?

または私はそれを間違って理解しましたか?


あまり気に入らないプログラムがありました。結局のところ、実際の問題は64ビットのOffice(私たちはOfficeプラグインを持っていました)にまで煮詰められました。
ジョシュア

回答:


16

32ビットプログラムを正常に実行できます。16ビットプログラムは実行できません。

XPモードはちょっとした保険です。特定のソフトウェアが7で動作しない場合(32または64ビット-XPモードは、プロフェッショナル版とその両方で利用できます)、XPモードで実行できます。これはまだ私には起こっていませんが、おそらく「死にゆく手からXPを奪うことができる」観客のためでしょう。

ほとんどの場合、互換モードはこれを行います


ダン!Visual Studio 6、Guitar Proなどの一部のアプリを実行するのに問題があり、検索を行った結果、理由がまったくわからずにXPモードに勝つことができました。トンありがとう!
オスカー

2
一部のアプリは文句を言うでしょうが、32ビットアプリを実行できないという理論上の理由はありません。
Shinrai、

@Oscar VS6にはMS Javaが必要です。
kinokijuf

5

私はこれが非互換性にいくつかの光を投げかけることを望みます:

マイクロソフトは、64ビットバージョンのカーネルを強化することを決定しました。デバイスドライバーは、カーネルと同じレベルのハードウェアへのアクセス権を持っているため、セキュリティの名前で64ビットバージョンで変更された特定の事項は次のとおりです。

  • ドライバーをロードするには、Microsoftによる署名が必要です。
  • 技術的に32ビットドライバーが64ビットカーネルで動作する可能性があるかどうかはわかりませんが、Microsoftは、64ビットカーネルが必要とするキーで新しい32ビットドライバーに署名していません。したがって、既存のすべてのXP 32ビットドライバーは、64ビットVista / 7では動作しません。
  • ドライバーはカーネルを上書きしたり、パッチを適用したりすることはできません。

マイクロソフトはまた、新しいビデオディスプレイドライバーモデル(LDDM)に切り替えましたが、古いモデル(XDDM)を維持しました。古いモデルのXDDMはAeroをサポートしていません。

一部のプログラムは、タスクを実行するためにカスタマイズされたデバイスドライバーをオンザフライでロードします。これらはVista / 7では完全に機能しません。

MicrosoftはVista / 7でかなりの数のコンポーネントを更新しました。これは、これらのコンポーネントの文書化されていない動作の変更を意味する可能性があります。これらのコンポーネント内のバグに依存するプログラム、またはドキュメントに記載されていないDLL関数にも問題があります。


+1は、32ビットおよび64ビットのWindowsドライバーに関する洞察を示します。Windows 7の32ビットインストールでのみ機能し、64ビットインストールでは機能しない古いオーディオハードウェア(SW1000XG、UR-80)があります。彼らは素晴らしい、古典的なキットなので、それは本当の恥です。
therobyouknow

「技術的に32ビットドライバーが64ビットカーネルで動作する可能性があるかどうかはわかりません」。一般にOSでは不可能ではありませんが、Windowsでそれを行うには、すべてのドライバーが、さまざまなOS内部の詳細からはるかに厳密に分離されたドライバーモデルに準拠する必要があります。Windows Driver Modelやpre-WDMドライバーなどでどのように実行できるかわかりません。WDFの方が簡単ですが、それでもスラムダンクではありません。
Jamie Hanrahan 2017年

2

32ビットのプログラムは、64ビットのWindowsでも問題なく実行できます。

XPモードは、いずれかのフレーバーのWindows VistaおよびWindows 7と互換性のないプログラム用です。

詳細については、このArs Technicaの記事参照してください。

この問題は、Windows Vistaのリリースで本当に頭に浮かびました。VistaとXPの互換性は非常に良好でしたが、完全ではありませんでした。Microsoftは、Vistaを攻撃に対して強化するために多くの作業を行いました(もちろん、UACだけでなく、サービスによるユーザー操作の禁止など)。これらの変更と改善に加えて、バージョン番号の更新などのより平凡なものも一緒に行いましたWindowsには、古いソフトウェアを壊すために共謀しています。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.