web-dev-qa-db-ja.com

仮想マシン:64ビットのホストOSで32ビットのゲストOSを実行することは可能ですか?

私はソフトウェア開発者であり、1つのソフトウェアに古いバージョンのBorland/Embarcadero Delphi7を使用する必要があります。他のものはPHPソフトウェアです。Linuxを実行する64ビットPCがまもなく登場しますが、Delphi用のWindows 32ビット仮想マシンが必要です(Delphi 7は少し古いため、クライアントは引き続きWindows XP 32ビットシステム)を使用しています。Delphi環境のvirtualboxの下にすでにVMがあります。

正常に動作しますか、それとも問題がありますか?

2
Cédric Girard

短い答え、はい。ほとんどの場合、32ビットソフトウェアは64ビットハードウェアで実行できますが、その逆はできません。

ハイパーバイザーによっては、ハードウェアが64ビットである限り、32ビットホストで64ビットソフトウェアを実行できる場合があります。

現在、いくつかの異なるOSを実行しているServer 2008Hyper-Vロールマシンを使用しています。私は約6台のWinXP32ビットマシンといくつかのWin764ビットを実行しています。

8
DanBig

32ビットコードを実行するために、32ビットVMは必要ありません。マルチライブラリ環境であるWindows64ビットを安全に使用できます。これは、32ビットと64ビットの両方のライブラリ(DLL)があることを意味します。参照: http://support.Microsoft.com/kb/28242

2

はい、それは完全に別個の環境とカーネルであるため、完全に可能です。

openVZベースのサーバー(カーネルが実際に共有されている場所)でこれを行うことも可能です

私の知る限りでは、virtualboxでも32ビットホストで64ビットゲストを実行できるかどうかはわかりません

1
anthonysomerset

新しいハードウェアがそれをサポートしていれば、確かに可能です。ハードウェアの詳細がなければ、確実にすることは困難ですが、仮想化をサポートしていない64ビットシステムはほとんど見たことがありません。

そうは言っても、 full-para-virtualization のどちらを選択する必要があります。どちらもあなたが説明したように機能することができますが、2つの間に違いがあります。多くの場合、両方を有効にして、(仮想)システムごとに決定を下すことができます。

また、カーネルが仮想化サポートをサポートし、そのために構築されていることを確認する必要があります。 DebianやRedHatなどの一部のシステムは、この目的のために事前に構築されたカーネルと、Xenなどのハードウェア仮想マシンまたはQemuなどのプロセッサエミュレーターに追加するオプションを提供します。

1
Tok

正常に動作します。私は(VMWareで)多数のVMを実行しており、32ビットバージョンと64ビットバージョンの両方のWindowsがあり、Delphi7は問題なく実行されています。

1
Stephane