WebAssemblyランタイム「Wasmer 2.1」リリース。WASI用に仮想ファイルシステムを実装し、ブラウザでもWASIが利用可能に

2022年1月12日

米Wasmer社はオープンソースのWebAssemblyランタイム「Wasmer 2.1」の正式リリースを2021年12月2日付けで発表しています

Wasmer 2.1では、仮想ファイル機能を提供することでWebブラウザやNode.jsで互換性のあるWASI APIを実現、iOSへの対応などの強化が行われました。

WasmerはWebAssemblyのランタイム

WebAssemblyはもともとWebブラウザ上で高速に実行できるバイナリフォーマットとして開発されました。

Wasmerは、そのWebAssemblyのバイナリファイルをWebブラウザ以外の環境でも実行可能にするWebAssemblyランタイムの代表的な実装の1つです。

WasmerをWindowsやMac、Linuxにインストールすることで、WebAssemblyバイナリがこれらのOS上で実行可能になります。

ブラウザやNode.js、DenoなどでWASI APIが利用可能に

WebAssemblyのアプリケーションがサーバサイドを含むさまざまな環境で実行できるように、「WebAssembly System Interface」(WASI)と呼ばれるAPIが、業界の標準化団体である「ByteCode Alliance」により策定が進んでいます。

参考:WebAssemblyをWebブラウザ以外の実行環境へ。システムインターフェイスへのアクセスを可能にする「WASI」の策定開始。Mozillaが呼びかけNode.jsらが賛同

WASIは、フィルシステムへのアクセスなどOSに依存したシステムコールを抽象化することで、WebAssemblyアプリケーションの環境依存を排除し、ポータビリティを実現するものです。

Wasmer JSによりWebブラウザやNode.jsでWASIが利用可能に

今回リリースされたWasmer 2.1では、Wasmerに含まれている「Wasmer JS」が刷新、強化されました。新しいWasmer JSを利用することで、WebブラウザでもWASIを利用したWebAssmblyアプリケーションが実行できるようになりました。

また、Wasmer JSはNode.js、DenoにもWASIを利用できる機能を提供します。

これにより、Webブラウザ上でもNode.jsでもDenoでも、Wasmer JSによるWASIを用いたWebAssemblyアプリケーションがポータブルに実行可能になると説明されています。

ただし、WebブラウザのようなJavaScript実行環境ではホストOSのファイルシステムに実際にアクセスすることが制限されているため、Wasmer 2.1にはこれを実現するために、Wasmer JSにはメモリベースで動作する仮想ファイルシステムが組み込まれています。

iOSのサポートを開始

Wasmer 2.1ではiOSもサポートしました。現在、AppleのApp Storeの制限によって、iOS上でWebAssemblyのコンポーネントを実行するには事前にAppleの承認が要求されます。

そこでWasmer 2.1ではWebAssemblyファイルをiOSのダイナミックライブラリ形式である「.dylib」にプリコンパイル可能です。これによりApp Storeでの事前承認が不要となるとのことです。

そのほかWasmer内部で採用しているLLVMが11から13へバージョンアップし、Aarch 64プロセッサでのLLVM実行もサポート、シングルパスコンパイルの速度が10倍以上に向上するなど、多くの改善が図られています。

あわせて読みたい

WebAssembly プログラミング言語 Deno Node.js




タグクラウド

クラウド
AWS / Azure / Google Cloud
クラウドネイティブ / サーバレス
クラウドのシェア / クラウドの障害

コンテナ型仮想化

プログラミング言語
JavaScript / Java / .NET
WebAssembly / Web標準
開発ツール / テスト・品質

アジャイル開発 / スクラム / DevOps

データベース / 機械学習・AI
RDB / NoSQL

ネットワーク / セキュリティ
HTTP / QUIC

OS / Windows / Linux / 仮想化
サーバ / ストレージ / ハードウェア

ITエンジニアの給与・年収 / 働き方

殿堂入り / おもしろ / 編集後記

全てのタグを見る

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed

最新記事10本