仮想化ハードウェアサポートの理解

仮想化ハードウェアサポートの理解

チップメーカーのインテル、アドバンスト・マイクロ・デバイセズ(AMD)、ARMは、ハードウェアが仮想化をサポートできるように命令セット拡張を導入しているが、関連するコードや頭字語は理解しにくい場合がある。

ハードウェア サポートは長い間、仮想化に不可欠な要件であり、選択されたハイパーバイザーが複雑な命令許可変換を処理し、ハードウェア クロック速度で仮想化されたメモリ リソースを管理できるようにします。

仮想化のハードウェア サポートは、命令セット拡張によって提供されます。命令セット拡張は、プロセッサやその他のチップに追加されるまったく新しいトランジスタ セットであり、新しい機能を有効にし、特定の新しい命令を直接処理します。この拡張機能がなければ、仮想化に必要な機能とタスクにはソフトウェア エミュレーションが必要になりますが、これは多くの場合、重要な仮想化タスクを処理するには面倒で非効率的です。

仮想化は、主に包括的なメモリ管理と特権アクセスの制御を必要とするコンピューティング アクティビティです。その結果、Intel と AMD はどちらも、命令セット拡張とさまざまな補完機能をプロセッサに追加することで、仮想化サポートを提供しようとしています。

[[258474]]

インテル バーチャライゼーション テクノロジー (VT)

2005 年、Intel は 2 つの Pentium 4 プロセッサをベースにした Intel VT-x を発表しました。これは、Intel が初めて導入した仮想化ハードウェア サポートでした。 VT-x は、仮想マシン (VM) を作成および制御するための 10 個の新しい命令を追加します。仮想化ソフトウェアは仮想実行モードで実行され、ゲスト オペレーティング システムは保護され分離されたホスト オペレーティング システムに干渉することなく完全な権限を持ちます。

VT-x の最初の導入後、Intel は追加の仮想化テクノロジも導入しました。これらの仮想化テクノロジーは特定の VT-x コマンドではありませんが、追加機能により Intel プロセッサーにさらに多くの仮想化機能が提供されます。

2008 年に、Intel は、拡張ページ テーブル (EPT)、Intel の第 2 レベル アドレス変換 (SLAT)、またはネストされたページングの実装のサポートを追加しました。

仮想化では、物理メモリ アドレスを仮想メモリ アドレスに変換する必要があります。問題は、この変換が 2 回実行されることです。1 回はホスト VM に対して、もう 1 回は各ゲスト VM に対して実行されます。これにより、オーバーヘッドが増加し、パフォーマンスが低下することは間違いありません。拡張ページ テーブルなどの第 2 レベルのアドレス変換技術は、このオーバーヘッドを排除し、すべてのメモリ管理タスクを同時に処理することで、メモリ管理を改善し、パフォーマンスを向上させます。

2010 年、Intel は、論理プロセッサと仮想 CPU をプロセッサ上でリアル モードで実行できるようにする、IA-32e モードとも呼ばれる無制限ゲストのサポートを開始しました。これにより、ゲスト VM は独自の拡張ページ テーブルを使用してベアメタル モードで実行できるようになります。ヴイエムウェア

Workstation 14 や Fusion 10 などの一部のソフトウェアでは、プロセッサが IA-32e モードをサポートしている必要があります。

2013 年までに、Intel は仮想マシン制御構造 (VMCS) シャドウイングを導入しました。仮想化における長年の課題は、VM 内で VM を実行するネストの問題でした。各 VM は固有のデータ構造を使用し、VM 内で VM を実行するときにデータ構造をスワップまたは変更する必要があります。

2013 年以前は、この問題の解決策として各 VMCS をキャッシュし、ソフトウェアを使用して処理していましたが、このプロセスは時間がかかりすぎるため、パフォーマンスが低下していました。 VMCS シャドウ描画をプロセッサに追加すると、VMCS 処理がより効率的になり、VM パフォーマンスが向上します。

AMD 仮想化 (AMD-V)

AMD は当初、2006 年に、Athlon 64、Athlon 64 X2、Athlon 64 FX、Turion 64 X2、および一部の Opteron、Phenom、Phenom II プロセッサを含むプロセッサ ラインの複数のプロセッサに、仮想化サポートに必要なコマンド セット拡張を追加しました。 AMD-V コマンドを使用すると、開発者はハイパーバイザーの使用をサポートする VM を作成および制御するソフトウェアを作成できます。

AMD はその後、物理メモリから仮想メモリへの変換のパフォーマンスを向上させるために、高速仮想化インデックスの形で、K10 および Phenom II プロセッサの一部に第 2 レベルのアドレス変換またはネストされたページングのサポートを追加しました。これは、機能的には Intel の拡張ページ テーブルと同じです。

ARM 仮想化

RISC アーキテクチャを使用するプロセッサでは、仮想化サポートが導入され始めています。業界標準の ARM アーキテクチャ バージョン 8 (ARMv8-A) は現在、仮想化をサポートしており、これにより ARM チップはそれぞれ異なるオペレーティング システムを搭載した複数の VM を実行できるようになりました。

ARMv8.1 では、タイプ 2 ハイパーバイザーのサポートを強化する仮想化ホスト拡張機能 (VHE) が導入されました。

ARMv8.1-VHE も基本的なアドレス変換を提供しますが、ARMv8.3-NV ではネストされた仮想化のサポートが追加されます。

ARM プロセッサは通常、縮小された命令セットを使用します。トランジスタ数が非常に少ないため、消費電力と冷却が少なくて済み、プロセッサ設計がシンプルなため、一般的にパフォーマンスが向上します。 ARM チップは、Web サーバーなどの基本的な大容量ワークロードを処理するために、長い間、組み込みシステムやサーバーに導入されてきました。

現在、仮想化ハードウェアのサポートが追加されたことにより、ARM システムはより多くのワークロードを処理できるようになり、特に大規模なデータ センターで注目を集め始めています。

Intel APICv と AMD AVIC

プロセッサは通常、割り込みを使用して、キーボード信号やシステム状態などの実際のイベントによってシステムを中断できるようにします。ただし、割り込みが多すぎると仮想化システムのパフォーマンスに影響し、ワークロードを常に停止して、CPU がシステム内で発生している他の処理に対処するのを待機する必要が生じます。

割り込み仮想化の概念は、割り込みを順序付けてキューに入れることによって、これらの潜在的なパフォーマンスへの影響を軽減できます。ソートにより、システムは優先度に基づいて割り込みを解決できますが、キューイングにより、システムは割り込みを解決するために最も適切な時間を待機できます。これらの技術を組み合わせることで、仮想化環境における停止によるパフォーマンスへの影響を最小限に抑えることができます。

2012 年に、Intel と AMD の両社が割り込み仮想化を追加しました。 AMD は、Carrizo プロセッサの最近のモデルで利用可能な Advanced Virtual Interrupt Controller (AVIC) を使用します。一方、Intel は、2013 年と 2014 年にいくつかの Xeon E5 プロセッサで初めて登場した Advanced Programmable Interrupt Controller Virtualization (APICv) を使用します。

2019 年には、一部の Intel Atom モデルを除くほぼすべての主要プロセッサ モデルで仮想化ハードウェアがサポートされています。たとえば、Atom プロセッサの Diamondville、Pineview、および Cedarview バリアントは、Intel-VT をサポートしていません。

仮想化サポートは、デフォルトで常に有効になっているわけではありません。一部のシステム マザーボードでは、ソフトウェアが仮想化機能を使用する前に、管理者がシステム ファームウェア (BIOS) で仮想化機能を有効にする必要があります。

3 部構成のシリーズの第 2 部では、主要な GPU 拡張機能をそれぞれ取り上げます。

<<:  5 つの Linux GUI クラウド バックアップ ツール

>>:  アリババの音声AIが「世界の画期的技術トップ10」に選ばれ、中国企業もリスト入り!

推薦する

モバイルマーケティングは広告市場のブルーオーシャンに:来年爆発的に拡大する可能性

新浪科技新聞、11月20日午後、Domob、Millward Brown、Miaozhen Syst...

ウェブサイト構築:方向性と行動

私たちのウェブサイト構築のキャリアの中で、非常に奇妙な現象を発見しました。それは、企業はウェブサイト...

Festo は SAP Concur を使用してコンプライアンスの高い企業文化を構築しています

「2015年に初めてフェスト グレーター チャイナに赴任し、財務管理を担当していた頃を振り返ると、社...

推奨: hostmist-$35/年/Kvm/256M メモリ/10g ハードディスク/300g トラフィック

ちょうど hostmist の VPS プロモーションを見つけました。256M メモリを搭載した K...

drserver: $20/Atom™ C2750/16g メモリ/2T ハードディスク/100Mbps 無制限

Drserver のダラス データ センターには、再入荷プロモーションで特別価格の独立サーバーが 2...

DDoS 状況レポート: DDoS 攻撃は二極化している

最近、国内のネットワーク セキュリティ企業 NSFOCUS が 2015 年上半期の DDoS 脅威...

SAP は顧客のクラウドファーストのビジネス戦略の構築を支援します

最近、SAP は、すべての顧客がスムーズにクラウドに移行し、クラウドによってもたらされるイノベーショ...

virtvps: フィンランドの VPS、IRC、Torrent のサポート、Windows システム

virtvps は、主にフィンランドの VPS、オランダの VPS、ドイツの VPS、イギリスのサー...

テンセントクラウド、SaaSエコシステム開発のため3つのサービスプロバイダーと契約

Tencent Cloud は、SaaS エコシステムにおけるレイアウトにおいてさらなる一歩を踏み出...

クラウドホスティングとセルフホスティング

この記事では、クラウド ホスティングとセルフ ホスティングという 2 つの一般的なソフトウェア プロ...

国内のリベートサイトは混乱状態にあり、大規模なクリーンアップに直面する可能性があります

最近、国内のリベートサイトに関する悪いニュースが相次いでいる。河南省、浙江省、福建省などの多くのリベ...

マーケティング記事の書き方が分からないですか?ソフトテキストマーケティングの仁徳経絡を開くための3つの小さな対策

ショートビデオ、セルフメディア、インフルエンサーのためのワンストップサービスソフト記事の執筆といえば...

オンラインマーケティングをスムーズに行うための最適化技術に精通している

SEO は、インターネット マーケティングの「天地を動かす剣」として常に知られています。SEO は、...

コンテナオペレーターが知っておくべき Kubernetes (K8s) クラスターの 10 個の一般的な API リソースオブジェクト

Kubernetes (略して K8s) は、コンテナ化されたアプリケーションの展開、スケーリング、...

キッシンジャー:ネハレムは、IT業界が飛躍的な発展を遂げることを可能にする孫悟空の宙返りクラウドである

インテル コーポレーションの上級副社長であり、デジタル エンタープライズ グループ (DEG) の共...