web-dev-qa-db-ja.com

「プロセス仮想マシン」と「システム仮想マシン」の違い

プロセス仮想マシンとシステム仮想マシンの違いは何ですか?

私の推測では、プロセスVMは、そのOSのアプリケーション全体に一種のオペレーティングシステムを提供するのではなく、特定のアプリケーションに環境を提供します。そしてシステムVMは、VirtualBoxと同じようにOSをインストールするための環境を提供しています。
私はそれを正しく理解していますか?


もう1つの質問は、システムVMの2つの異なる実装の違いです。ホスト型とスタンドアロン型です。

私はOSを勉強している初心者なので、簡単でわかりやすい答えをいただければ幸いです:)

12
user3415167

プロセス仮想マシンは、アプリケーション仮想マシンと呼ばれることもあり、ホストOS内で通常のアプリケーションとして実行され、単一のプロセスをサポートします。プロセスが開始されると作成され、終了すると破棄されます。その目的は、基盤となるハードウェアまたはオペレーティングシステムの詳細を抽象化し、プログラムをどのプラットフォームでも同じように実行できるようにする、プラットフォームに依存しないプログラミング環境を提供することです。 たとえば、LinuxのWineソフトウェアはWindowsアプリケーションの実行に役立ちます

システム仮想マシンは、完全なオペレーティングシステム(OS)の実行をサポートする完全なシステムプラットフォームを提供します。あなたが言ったようにVirtualBoxは一例です。

ホスト仮想マシンは仮想マシンのサーバーコンポーネントであり、ゲスト仮想マシン(ゲストVM)をサポートするために基盤となるハードウェアにコンピューティングリソースを提供します。

26
Sorcrer

以下は http://airccse.org/journal/jcsit/5113ijcsit11.pdf からのものです:システム仮想マシンシステム仮想マシンは、完全なオペレーティングシステムの実行をサポートする完全な仮想ハードウェアプラットフォームを提供します( OS)。 System VMを使用する利点は次のとおりです。

  • 複数のオペレーティングシステム環境は、互いに強力に分離された同じハードウェア上で並行して実行できます。
  • VMは、実際のマシンとは少し異なる命令セットアーキテクチャ(ISA)を提供できます

主な欠点は次のとおりです。

  • VMは同じハードウェアに間接的にアクセスするため、効率が低下します。
  • 同じ物理マシン上で並行して実行されている複数のVMは、システムに課せられたワークロードに応じてパフォーマンスが異なる可能性があります。適切な分離技術を実装すると、この欠点に対処できる場合があります。
2
forevercoding