32ビットマシンで64ビットのVMwareイメージを実行できますか?


89

32ビットマシンで64ビットのVMwareイメージを実行できますか?

私はこれをグーグルで調べましたが、決定的な答えはないようです。

私はそれを完全にエミュレートする必要があり、犬のように動作することを知っていますが、64ビットプラットフォームでバックグラウンドサービスコードの一部をテストするだけなので、パフォーマンスの低下は必ずしも問題ではありません。


私はあなたにインストールする方法与えることができます64ビットベースの仮想マシンをしても、ハイパーバイザは、VMwareまたはハイパーVと同じようにインストールせずに。
user2050269

回答:


123

ワークステーションをチェックする最も簡単な方法は、VMware Webサイトから64ビット互換性のVMwareプロセッサチェックツールをダウンロードすることです。

32ビットプロセッサで64ビットVMセッションを実行することはできません。ただし、64ビットプロセッサを使用していて、32ビットのホストOSをインストールしていて、プロセッサが適切な拡張機能をサポートしている場合は、64ビットのVMセッションを実行できます。上にリンクされたツールは、あなたがそうするかどうかを教えてくれます。


3
驚くばかり!このツールが存在することを知らなかった!!
saschabeaumont 2009年

5
上記のリンクをクリックしても、プロセッサチェックツールを参照するページに移動しません。:ここに直接リンクだdownloads.vmware.com/d/details/...
フィル・ロス

3
@Phil Ross-ありがとう!回答のリンクをあなたが投稿したURLに更新しました。
デイブウェッブ

2
つまり、VMWare自体はそれを実行できないということです。しかし、dbrで説明されているように、イメージをqemuイメージに変換できます。または(十分なRAMが与えられている場合)、64ビットのホストVM内からVMWareを実行します。これは、qemuまたは64ビットプロセッサをエミュレートする別のVMユーティリティで実行されるVMでした。複雑ですが、不可能だと一言で言うのは間違いです。
2010年

1
WindowsとLinuxの両方のバージョンのリンクは次のとおり
web

30

32ビットのハードウェアを使用している場合は、64ビットのゲストOSを実行できません。「VMwareソフトウェアは、物理的に存在しないさまざまなハードウェアの命令セットをエミュレートしません」

ただし、QEMU 64ビットプロセッサをエミュレートできるため、VMWareマシンを変換してこれで実行できます

この2008時代のブログ記事(archive.orgでミラーリング)

$ cd /path/to/vmware/guestos
$ for i in \`ls *[0-9].vmdk\`; do qemu-img convert -f vmdk $i -O raw {i/vmdk/raw};done
$ cat *.raw >> guestos.img

実行するには

qemu -m 256 -hda guestos.img

欠点は?私たちのほとんどは、仮想ディスク用の事前割り当てスペースなしでVMwareを実行しています。したがって、VMwareからQEMUへの変換を行う場合、未加工ファイルは事前割り当てのある合計スペースになります。私はまだ-f qcowフォーマットでテストしていますが、問題が解決するかどうかはわかります。といった:

for i in `ls *[0-9].vmdk`; do qemu-img convert -f vmdk $i -O qcow ${i/vmdk/qcow}; done && cat *.qcow >> debian.img

10

はい、64ビットプロセッサを使用している場合は、32ビットOSからVMWareで64ビットOSを実行できます。

Windows XP Professional 2002を実行している古いIntel Core 2 Duoを使用していますが、正常に動作しました。

まず、CPUが64ビットOSを実行できるかどうかを確認します。VMwareサイトで「64ビット互換性のプロセッサチェック」を検索してください。プログラムを実行します。

プロセッサが機能していると表示されている場合は、コンピュータを再起動してBIOSにアクセスし、「仮想化」機能があり、それを有効にできるかどうかを確認します。この古いラップトップで、VMwareの下でWindows Server 2008 R2を実行することができました。

うまくいくことを願っています!


2
Core 2 Duoは64ビットプロセッサです。32ビットバージョンのWindows XPのVMWareで実行できるのは興味深いことです。
ジョンシブル、2011

1
まず、32ビットプロセッサで64ビットOSを実行できると言い、次に、プロセッサが64ビットかどうかを確認する必要があると言いますか。
キリア

私は32ビットを使用しています、2GBのRAM、窓7.Hey私のVMは、このエラー与えている drive.google.com/file/d/0B9LzXNh-gDLNVml5bHl0clZIdUk/...を
フィーリングが良いとプログラミング


4

要するに、マシンのCPUにVTビット(仮想化)があるかどうかであり、BIOSで有効にすることができます。たとえば、私のラップトップはこれを使用できるCore 2 Duoです。ただし、私のBIOSでは有効にできません。

この機能をオンにすると通常の操作が10〜12%遅くなる可能性があることを読んだことに注意してください。これが通常オフになっている理由です。


3

正直なところ、いくつかの理由で疑っていますが、最も重要なのは、32ビットモードでは許可されているが、64ビットモードでは許可されていない命令があるということです。特に、64ビットモードで一部の命令とレジスタをエンコードするために使用されるREXプレフィックスは、0x4f:0x40形式のバイトですが、32ビットモードでは、同じバイトは、固定オペランドを持つINCまたはDECのいずれかです。
このため、REXが前に付いている64ビット命令は、INCまたはDECとして解釈され、VMMに64ビット命令をエミュレートする機会を与えません(たとえば、未定義のオペコード例外を通知することによって)。

それが行われる唯一の方法は、特別な64ビット処理が必要かどうかを確認できるように、すべての命令の後にVMMに戻るためにトラップ例外を使用することです。私はそれが起こっているのを単に見ることができません。


1
VMWareはそのようなトラップシステムを必要としません。ハードウェア仮想化サポートを使用していない場合は、各基本ブロックで特権命令を確認し、ハンドラーの呼び出しに置き換えます。それらはx64命令に対して/ could /で同じことを行いますが、それはそれをエミュレーターにするでしょう-彼らのことではありません。
Cody Brocious

3

VMware?いいえ。ただし、QEMUには、使用できるx86_64システムターゲットがあります。おそらく、VMwareイメージを直接使用することはできません(IIRC、変換ツールはありません)が、OSなどを自分でインストールして、その中で作業することができます。QEMUは起動して実行するには少しPITAになる可能性がありますが、非常にうまく機能する傾向があります。


3

VMwareでは、32ビットのホストで64ビットのゲストを実行することはできません。これを見つけるには、ドキュメントを読む必要があります。

本当にこれをやりたいのであれば、QEMUを使用できます。Linuxホストをお勧めしますが、非常に遅くなります(本当に遅いという意味です)。


2

はい、できます。Windows XP 32ビットのVMwareで64ビットのDebianを実行しています。ゲストが2つのプロセッサを使用するように設定している限り、問題なく動作します。


1

プロセッサが64ビットで、仮想化テクノロジ(VT)拡張が有効になっている場合(BIOSでオフにすることができます)にできます。32ビットプロセッサでは実行できません。

Linuxでこれを確認するには、/ proc / cpuinfoファイルを調べるだけです。適切なフラグのためだけ見て(VMX IntelプロセッサまたはのためのSVM AMDプロセッサ用)

egrep '(vmx|svm)' /proc/cpuinfo

Windowsでこれを確認するには、CPU-Zなどのプログラムを使用して、プロセッサアーキテクチャとサポートされている拡張機能を表示する必要があります。


1
私の知る限り理解してジョンは32ビットプロセッサ上でVMを実行したい
ガーボルLipták
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.