クロスプラットホームの仮想化
Solaris/SPARCをSolaris/x86で動作させる
SPARCバイナリをQuickTransitで動作させる方法は2つある。1つは、ホスト環境(今回の例では、Solaris/x86)から直接実行する方法、もう1つは、仮想Solaris環境(Virtual Solaris Environment:VSE)に入りそこから実行する方法だ。
直接実行するには、runsparcの引数として、SPARCのバイナリを渡してあげればよい。これを利用すれば、ホスト環境からスクリプトなどでSPARCのバイナリを呼び出すことも可能だ。
以下のようにxeyesを実行する。
# runsparc /solaris-sparc/usr/openwin/bin/xeyes
すると、図3左上のような画面が表示される。
一方、仮想Solaris環境(VSE)に入るには単に以下を実行すればよい。
# runsparc
すると、図3右上のような画面が表示される。
runsparc後は、SolarisWorldのルートディレクトリ「/soalris-sparc」にchrootした要領で「/soalris-sparc」配下にカレントディレクトリが移動されるので、「uname -a」で環境の確認をすれば、Solaris/SPARCの環境であることがわかるだろう。
アプリケーションの移行
アプリケーションの移行に関しては、従来の移行方法とほぼ同じだ。内製アプリケーションの場合には、必要なバイナリとライブラリをSolarisWorldの「/solaris-sparc」配下にSolaris/SPARCの実機と同様のパスで配置すれば良い。
また、ISV(独立系ソフトウエアベンダー)のアプリケーションの場合には、仮想Solaris環境に入り、インストーラを起動してインストールすれば良い。インストール後にデータの移行が必要な場合には、Solaris/SPARCの実機からデータをエクスポートし、仮想Solaris環境でインポートする。SPARCアーキテクチャから、x86アーキテクチャに変わったが、リコンパイルやデータの変換などは一切必要ない(図3下参照)。
さて、QuickTransitの要点をおわかりいただけただろうか。アプリケーションを異なるアーキテクチャに移植することは、簡単な作業ではなく、敬遠しがちだ。ただし、実際問題として、「保守の関係でアーキテクチャを変えたい」「VMwareやXenなどに統合するので、アーキテクチャを変える必要がある」などといった要望は今後増えていくことだろう。その様な状況ではQuickTransitの存在は異なるプラットホームへの移行を容易にする便利なソリューションとして、活用できるだろう。