オランダのLeaning Technologiesは、Webブラウザのクライアント側で実行される完全なLinux環境であるWebVMの最新バージョンとなる「WebVM 2.0」を、11月13日(現地時間)にリリースした。
WebVMは、仮想化エンジンであるCheerpX、仮想ストレージバックエンド、ネットワーク層、エミュレートされたグラフィカルデバイスで構成されている。
CheerpXは、x86命令からWebAssemblyへの効率的なJust-In-Timeコンパイラと、Linuxシステムコールのエミュレーションレイヤに基づく、x86バイナリコード用のWebAssemblyをベースにした仮想化エンジン。標準のJavaScript/WebAssembly、およびブラウザAPIのみで実装されているため非常に安全で、CDNまたはNPMパッケージを使って、他のJavaScriptライブラリと同様に使用できる。
WebVMでは、WebSocketを使用してCloudflare Workerバックエンドからオンデマンドで128kbのディスクブロックをダウンロードする、ストリーミングディスクデバイスを実装している。Cloudflare Workerは、世界中に分散しているCloudFlare CDNから、もっとも近いデータセンターで実行されるので、レイテンシを最小限に抑えられる。また、WebSocketの使用によって、厳しいネットワーク環境でも安定したレイテンシの維持を可能にしている。
また、WebVMはTailscaleと直接統合されており、数回クリックするだけでネットワークに接続できる。Tailscaleは主要なOAuthプロバイダによるログインをサポートしているため、アカウントを容易に作成できる。なお、インターネットにアクセスするには、Tailscaleネットワークを超えてトラフィックを中継する、Exit Nodeの設定が必要となる。
今回リリースされたWebVM 2.0では、完全なデスクトップ環境の起動を含む、グラフィカルアプリケーションがサポートされており、現時点ではモバイルデバイスでも大量のデータを消費することなく、ほとんどのユーザーがデモを楽しめるよう、最小限のウィンドウマネージャであるi3を使用している。将来のリリースでは、より重いxfce環境の実行を目指すという。
この記事は参考になりましたか?
- この記事の著者
-
CodeZine編集部(コードジンヘンシュウブ)
CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です