10/4の学習したまとめを行っていきます。
AMIの仮想化方式
最近仮想化方式が2つあることをようやく知りました・・・
HVMは、Hardware Virtual Macineの略。完全仮想化。
PCのアーキテクチャをすべてエミュレートしてくれるので、ゲストOSがそのまま動作する。
HVMでは、ゲストOS内部での命令の発行にオーバーヘッドがかかる。
ゲストOSは自分をゲストOSだと思っていないため、特権モードの命令をそのまま出す。
そのため、仮想化ソフトが特権モードの命令をユーザーモードの命令に翻訳してあげる必要がある。これがバイナリトランスレーションと呼ぶ
HVMはCPUの仮想化機構を利用する。つまり、AWSが管理するHWのIntel-VTなりAMD-VなりがONにされることで利用可能。
PVは、Para-Virutalizationの略。準仮想化の略。
Xenの仮想化APIを使えるようにゲストOSを修正して、仮想化機構を実現する。
準仮想化は完全仮想化よりもオーバーヘッドが少ないといわれている。
→仮想マシンを動かすために、ゲストOSのバイナリコードをトレースする必要ないため。
実行可能な命令が発行されないようにゲストOSの一部に組み込んだAPIを利用して命令自体が変更される。