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
「macOS」で「キーチェーンアクセス」を使う–パスワードを見つけて変更するには
IT関連
2022-07-19 00:09
ヌーラボ、見込み客の商談化を支援する「immedio」を導入
IT関連
2024-01-17 22:49
Linxuカーネル内部をフックするeBPFを用いてセキュリティの可観測性を実現する「Tetragon」がオープンソースで公開
eBPF
2022-05-19 20:57
「動物のお医者さん」など電子版コミックが半額に 白泉社「愛蔵版フェア」
くらテク
2021-08-13 08:11
シスコ、「エコシステム パートナープログラム」を創設–日本社会のDXに貢献
IT関連
2022-07-30 03:18
日本は「ゼロトラストセキュリティ」の採用に積極的–タレス調査
IT関連
2021-06-23 12:07
機械学習のフィーチャーストアTectonがオープンソースの同サービスFeastを併合
人工知能・AI
2021-04-17 06:07
C#/.NETでSPA開発を可能にする「Blazor」の進化、ビジネスUIコンポーネントの組み合わせで高速なWeb開発を実現[PR]
.NET
2024-03-25 16:01
テスラが強力なスーパーコンピューターを使ったビジョンオンリーの自動運転アプローチを追求
人工知能・AI
2021-06-23 10:59
アマゾンがFTCの新委員長と独占禁止強硬派のリナ・カーン氏の辞任を求める嘆願書を提出
ネットサービス
2021-07-02 04:42
マイクロソフト、持続可能性への取り組みを説明–多様なクラウドツール群も
IT関連
2022-03-25 12:06
丸亀製麺を運営するトリドールHD、サイト多言語化で「WOVN.io」導入
IT関連
2023-02-16 00:21
NTT-AT、ネットワークのトラブルシューティングを自動化
IT関連
2023-03-05 00:39
フォードが「実質的にすべて」の車載コンピューターのソフトを無線でアップデートできる機能を発表
モビリティ
2021-05-16 09:30