WebAssembly製のx86仮想マシン「WebVM」が登場、Webブラウザ上でLinuxや各種コマンド、アプリがそのまま実行可能

Leaning Technologiesは、Webブラウザ上でx86バイナリをそのまま実行できるWebAsesmbly製の仮想マシン「WebVM」を発表しました(同社による紹介記事「WebVM: server-less x86 virtual machines in the browser」)。

Google ChromeやMicrosoft Edge、Firefox、Safariなどのモダンブラウザであれば、上記のURLにアクセスすることで誰でもWebブラウザ上にx86仮想マシンを走らせることが出来ます。

fig

WebVMではx86仮想マシンの上でDebian Linuxのバイナリが変更なしに、Webブラウザ上でそのまま稼働し、さまざまなコマンドも実行可能。

LinuxアプリケーションのサンプルとしてNode.jsやPython、Rubyなどの環境も用意されており、実際に動かして試すこともできます。

まさにWebブラウザの上でLinuxマシンが動いている感じです。

Webブラウザ上で既存のソフトウェアを実行

WebVMは同社の製品やサービスというわけではなく、同社が提供している製品群の機能や能力を示すためのデモとして作成され、公開されたものです。

具体的にはWebVMのコアとなっているのが「CheerpX」と呼ばれるWebAssembly製のx86マシンの仮想化技術を備えたソフトウェア製品。

この製品はx86のバイナリコードをWebAssemblyに変換して実行するJIT(Just In Compiler)機能を備えています。これによりWebブラウザ上でx86バイナリの実行可能になります。

さらにサンドボックス化したファイルシステムをWebブラウザ上に提供し、OpenGLはWebGLへ、UDPなどの通信をWebRTCへ変換するなど、さまざまなAPIをWeb標準に変換して実装することも行っていると説明されています。

同社はほかにもC/C++のコードをWebAssemblyにコンパイルする「Cheerpコンパイラ」、JavaのバイトコードをWebブラウザ上で実行できるようにする「CheerpJ」なども提供しており、既存のソフトウェア資産をそのままWebブラウザで実行するためのソリューションを揃えています。