web-dev-qa-db-ja.com

64ビットWindowsに32ビットアプリと64ビットアプリをインストールする場合の違いは何ですか?

したがって、明らかに、64ビットWindowsシステム(Vistaまたは7)に32ビットと64ビットの両方のコンパイル済みアプリケーションをインストールできます。

両方のバージョンが64ビットOSで実行できる理由は何ですか? 64ビットOSに64ビットアプリをインストールするのは良い習慣ですか? 32ビットアプリと64ビットOSを組み合わせることの長所/短所はありますか?

ありがとう!

16
Andrei

両方のバージョンが64ビットOSで実行できる理由は何ですか?

OSが古い(32ビット)アプリを実行できなかった場合、誰もそれを使いたくないでしょう。それで彼らは道を見つけなければなりませんでした。

64ビットOSに64ビットアプリをインストールするのは良い習慣ですか?

一般的にはそうです、彼らはより多くのメモリを使用することができ、いくらか速く実行されるかもしれません。ただし、64ビットアプリが32ビットDLLを呼び出すことはできないため、問題が発生する可能性があります。

32ビットアプリと64ビットOSを組み合わせることの長所/短所はありますか?

もちろん、4GBを超えるRAMを使用できず、同じハードウェア上の32ビットOSよりも実行速度が少し遅くなる可能性があることを除いて、実際にはそうではありません。

21

64ビットバージョンのWindowsには、32ビットアプリケーションの実行を可能にするWindows on Windows 64(WOW64)サブシステムが付属しています。全体のプロセスは実際には非常に複雑であり、次の場所で読むことができます。

Windows 7/Vista 64が32ビットアプリケーションをサポートする方法

64ビットOSを使用していて、アプリケーションベンダーが64ビットバージョンを提供している場合は、それをインストールします。そうでない場合は、32ビットバージョンをインストールしても問題はありません。

すべてのベンダーが64ビットバージョンのアプリケーションを提供しているわけではないという事実から、同じマシン上で32ビットアプリケーションと64ビットアプリケーションを組み合わせることができるという明確な利点があります。両方を実行できるOSを使用すると、消費者が利用できる幅広いソフトウェアセットにアクセスできます。

9
Justin Niessner

すべてのプログラムが64ビットバージョンで利用できるわけではありません。

はい、可能であれば、通常は64ビットアプリを使用する必要があります。

32ビットアプリと64ビットアプリを組み合わせるのは面倒であり、決して良い考えではありません。それは通常、必然的にのみ行われます(私の最初のポイントに戻ります)。

4
Marcelo Cantos

実際の実装に応じて、32ビットアプリケーションは64ビットオペレーティングシステムで実行するために特別な処理が必要になりますが、64ビットアプリケーションは64ビットオペレーティングシステムで「ネイティブに」実行されるため、「より適切に」実行する必要があります( 「より良い」-たとえば、より多くのメモリへのアクセス)。この「特別な処理」は、命令セットのサブセットを実行しているだけかもしれませんが、マーシャリングなどが必要になります。

したがって、64ビットバージョンのプログラムを利用可能な場所にインストールすることは理にかなっています。

ただし、64ビットアプリケーションよりも32ビットアプリケーションの方がはるかに多いため、32ビットプログラムの実行を許可することは商業的に意味があります。時間の経過とともに、まだ販売されているアプリケーションがアップグレードされ、Windowsの将来のバージョンが32ビットプログラムをサポートしない場合があります(16ビットプログラムがボードで使用されたのと同じように)。

3
ChrisF

X64などのアーキテクチャを使用する最新のプロセッサは、32ビットと64ビットの両方のアプリケーションを実行できます。

32ビットオペレーティングシステムは4GBのメモリしか割り当てることができませんが(2 ^ 32 = 4294967296)、64ビットオペレーティングシステムはもっと多くのメモリを割り当てることができます(2 ^ 64 = 18446744073709551616)。

4GBを超える場合、64ビットアプリはコンピューターのすべてのメモリを使用できるため、64ビットOSに64ビットアプリをインストールすることをお勧めします。

3
darioo