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

今回は「WebAssemblyランタイム「Wasmer 2.1」リリース。WASI用に仮想ファイルシステムを実装し、ブラウザでもWASIが利用可能に」についてご紹介します。

関連ワード (依存、要求、開発等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。


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

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

BREAKING NEWS: Wasmer 2.1 released. Features added, bugs smashed, don't wait, try it now!

– Wasmer-JS
– Virtual Filesystem
– iOS Support
– Singlepass in Windows
– Faster Singlepass compilation
– Deterministic builds
– LLVM 13https://t.co/TWnUiVFqsW

— Wasmer (@wasmerio) December 1, 2021

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倍以上に向上するなど、多くの改善が図られています。

COMMENTS


Recommended

TITLE
CATEGORY
DATE
静的サイトジェネレータのAstro、「Server Islands」を実験的実装。サーバで動的生成したコンポーネントをWebページ表示後に組み込み
HTML/CSS
2024-08-02 23:44
イノベーションにはスピード感が重要–AWS、スタートアップ支援を強化
IT関連
2022-10-29 08:59
「拠点に関係なく人材を集める仕組みが重要」:Deel、日本上陸1年の成果と今後の戦略
IT関連
2022-11-26 22:25
2022年はインフレ、地政学的混乱、為替変動などによりPC出荷が前年比で10%近く下落。中国ゼロコロナ政策の影響も大。ガートナーの予測
業界動向
2022-07-06 02:54
政府、ドローン物流の指針作成へ 過疎地での実用化促進へ
IT関連
2021-03-30 09:11
グーグル親会社Alphabet、産業ロボット用ソフト企業Intrinsic立ち上げ–研究部門「X」発
IT関連
2021-07-26 11:19
クアルコム、最新モバイルチップ「Snapdragon 8 Elite」を発表
IT関連
2024-10-23 21:06
Appleは折り畳み式ディスプレイをiPhoneに採用する?
-
2021-01-20 05:00
ゼロボードとNSSOL、金融機関向け「投融資先GHG算定サービス」を共同開発
IT関連
2023-12-15 21:43
Trelloの設定ミス、「公開」の誤解が原因? 分かりやすい表現とローカライズを考える
くわしく
2021-04-08 23:37
アップルが子ども向けポッドキャストのキュレーションでCommon Sense Mediaと提携
ネットサービス
2021-03-10 06:16
ランサムウェア地下鉄マップ–年代別に見るランサムウェアの変遷
IT関連
2022-06-24 11:40
PayPay銀行をかたるフィッシングに注意 「フィッシング対策でセキュリティ更新」偽る
セキュリティ
2021-06-30 18:14
富士通、O-RAN仕様に基づくマルチベンダー接続試験で20%超の省電力効果を実証
IT関連
2023-12-21 21:49