goo blog サービス終了のお知らせ 

gooブログはじめました!

写真付きで日記や趣味を書くならgooブログ

Prita Diary 23062025

2025-06-24 02:31:26 | 日記

仮想化 パート1
コンピューティングにおいて、仮想化(略称v12n)とは、物理的なコンピューティングリソースを複数の仮想マシン、オペレーティングシステム、プロセス、またはコンテナに分割することを可能にする一連の技術です。仮想化は1960年代にIBM CP/CMSによって始まりました。制御プログラムCPは、各ユーザーにシミュレートされたスタンドアロンのSystem/360コンピュータを提供しました。

ハードウェア仮想化では、ホストマシンは仮想化で使用されるマシンであり、ゲストマシンは仮想マシンです。ホストとゲストという用語は、物理マシン上で実行されるソフトウェアと仮想マシン上で実行されるソフトウェアを区別するために使用されます。ホストハードウェア上に仮想マシンを作成するソフトウェアまたはファームウェアは、ハイパーバイザーまたは仮想マシンモニターと呼ばれます。ハードウェア仮想化は、ハードウェアエミュレーションとは異なります。ハードウェア支援による仮想化は、仮想マシンモニターの構築を容易にし、ゲストOSを独立して実行することを可能にします。

デスクトップ仮想化は、論理デスクトップを物理マシンから分離するという概念です。

オペレーティングシステムレベルの仮想化(コンテナ化とも呼ばれる)とは、カーネルが複数の独立したユーザー空間インスタンスの存在を許可するオペレーティングシステムの機能を指します。

仮想化の一般的な目的は、管理タスクを集中化しつつ、スケーラビリティとハードウェアリソース全体の利用率を向上させることです。

歴史
仮想化の一形態は、1967年にIBMのCP-40研究システムで初めて実証され、その後1967年から1972年にかけてCP/CMSでオープンソースとして配布され、1972年から現在に至るまでIBMのVMファミリーに再実装されています。CP/CMSの各ユーザーには、シミュレートされたスタンドアロンコンピュータが提供されました。これらの仮想マシンはそれぞれ、基盤となるマシンの完全な機能を備えており、ユーザーにとってはプライベートシステムと区別がつきませんでした。このシミュレーションは包括的で、ハードウェアの「Principles of Operation」マニュアルに基づいていました。そのため、命令セット、メインメモリ、割り込み、例外、デバイスアクセスなどの要素が含まれていました。その結果、多数のユーザー間で多重化可能な単一のマシンが誕生しました。

ハードウェア支援による仮想化は、1972年にIBM System/370で初めて登場し、最初の仮想マシン・オペレーティング・システムであるVM/370で使用されました。IBMは1972年にSystem/370シリーズに仮想メモリ・ハードウェアを追加しました。これはIntel VT-xリングとは異なり、スーパーバイザー、プログラム、またはユーザー・モードへのフルアクセスを必要とする仮想マシンを適切に制御するために、ハイパーバイザーに高い権限レベルを提供しました。

高解像度コンピュータ・グラフィックス(CADなど)の需要が高まるにつれ、メインフレームの仮想化は1970年代後半にやや注目されなくなりました。当時登場しつつあったミニコンピュータが分散コンピューティングによるリソース割り当てを促進し、マイクロコンピュータのコモディティ化をもたらしたためです。

x86サーバーあたりの計算能力の向上(特に現代のネットワーク帯域幅の大幅な増加)により、仮想化技術に基づくデータセンター・ベースのコンピューティングへの関心が再燃しました。主な推進力は、サーバー統合の可能性でした。仮想化により、1台のサーバーで、十分に活用されていない複数の専用サーバーのコンピューティング能力をコスト効率よく統合することが可能になりました。コンピューティングの原点回帰を最も顕著に示すのはクラウドコンピューティングです。これは、高帯域幅ネットワークを介したデータセンターベースのコンピューティング(またはメインフレームのようなコンピューティング)と同義です。これは仮想化と密接に関連しています。

初期のx86アーキテクチャ実装は、「古典的な仮想化」を実現するためのPopekとGoldbergの仮想化要件を満たしていませんでした。

等価性:仮想マシンモニター(VMM)で実行されるプログラムは、同等のマシンで直接実行された場合と本質的に同一の動作を示す必要があります。

リソース制御(安全性とも呼ばれます):VMMは仮想化されたリソースを完全に制御する必要があります。

効率性:統計的に優位な割合のマシン命令がVMMの介入なしに実行されなければなりません。
そのため、このタイプのプロセッサに仮想マシンモニターを実装することは困難でした。具体的な制限としては、一部の特権命令をトラップできないことなどが挙げられます。そのため、これらのアーキテクチャ上の制限を補うために、設計者はx86アーキテクチャの仮想化を、完全仮想化と準仮想化という2つの手法で実現しました。どちらも物理ハードウェアの錯覚を作り出すことで、オペレーティングシステムをハードウェアから独立させるという目標を達成しますが、パフォーマンスと複雑さの点でトレードオフがあります。

 


コメントを投稿

サービス終了に伴い、10月1日にコメント投稿機能を終了させていただく予定です。