Webブラウザ上でWebAssembly製コンパイラによりC言語をWebAssemblyにコンパイル、そのまま実行可能に。Wasmer 4.4の新機能

今回は「Webブラウザ上でWebAssembly製コンパイラによりC言語をWebAssemblyにコンパイル、そのまま実行可能に。Wasmer 4.4の新機能」についてご紹介します。

関連ワード (実行環境、正式、程度等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

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


スタンドアロンなWebAssemblyランタイム「Wasmer」の開発元であるWasmer社は最新のWasmer 4.4の新機能として、C言語をWebAssemblyにコンパイルし、WebAssembly環境でそのまま実行可能する機能を発表しました。

fig

下記はWasmer社が用意した、Webブラウザ上にWebAssemblyでBash環境を構築する「wasmer.sh」のコマンドラインから、wasmerによりC言語をコンパイルしてWebAssemblyモジュールを生成し、実行する操作を筆者のWindowsマシンで実際に試したところです(赤線は筆者による)。

fig

Webブラウザ上でC言語をWebAssemblyにコンパイルし、そのままWebAssembly環境上で実行できています。

合わせて登場したJavaScript SDKによってNode.jsやBunなどのサーバサイドのWebAssembly/JavaScript実行環境においてもC言語をWebAssemblyにコンパイルして実行可能だとしています。

WebAssemblyをPOSIX対応にしたことで実現

Wasmerは2023年6月、WebAssemblyモジュールからOSへのシステムコールを抽象化する業界標準仕様のWASI(WebAssembly System Interface)を独自に拡張してPOSIX対応にする「WASIX」を提唱し、Wasmer 4.0で実装しています。

参考:WebAssemblyでBashのコマンドプロンプトを実装、Wasmer 4.0が正式リリース、POSIX対応の「WASIX」など安定版に

WebAssemblyでBashを実装した前述のwasmer.shと、そして今回登場したWasmerによるC言語からWebAssemblyへのコンパイルは、このPOSIX互換をWebAssemblyで実装したWASIXの技術によって可能になっています。

ただし現時点でwasmerでC言語のコンパイルを実現する「clang/clang」パッケージが約100MBの大きさでロードなどに時間がかかるため、今後これをさらに30MB程度にまで小さくすることを目論んでいるとのことです。

COMMENTS


Recommended

TITLE
CATEGORY
DATE
「Linux」でBluetooth接続の問題をbluetoothctlコマンドで解決するには
IT関連
2024-01-26 06:31
PwCコンサルティング、サイバー攻撃検知基盤を発表–脅威アクターの分析と監視ルールを提供
IT関連
2024-04-12 15:06
アカマイが事業戦略を強化–CDNとセキュリティにエッジIaaSを加える
IT関連
2023-03-04 11:11
体験型ストア運営のb8ta Japanが日本における全ライセンス取得し米国b8taから独立、アジア進出も視野
IT関連
2022-02-26 15:17
暗号化メッセージアプリ「Signal」、新機能を追加–グループ通話が簡単に
IT関連
2024-11-14 09:37
NEC、チェコ気象庁からベクトル型スーパーコンピューター受注–気象災害の軽減へ
IT関連
2021-02-16 17:04
同じ本を読んだ人と出会えるマッチングサービス 男女同額で正式スタート
企業・業界動向
2021-06-08 18:00
マイクロソフト、自然言語モデル「GPT-3」をPower Appsに–「自然な英語」でコード開発へ
IT関連
2021-05-26 18:16
第1回:デジタルマーケティングのインハウス化がなぜ必要なのか
IT関連
2021-02-08 19:06
GitHub、パブリックリポジトリのユーザーに4vCPU/16GBメモリ/150GBストレージのホステッドランナーを無償提供、従来よりも2倍のスペックに強化
DevOps
2024-01-19 07:51
第47回:列伝7人目「外資系ひとり情シス」
IT関連
2022-09-14 12:01
Excelの感覚でアプリを作成–ローコード開発言語「Power Fx」の使い所
IT関連
2021-04-25 16:47
NEC、「共同輸配送プラットフォーム」の運用実証を開始
IT関連
2023-09-15 23:30
独立系VCのSixty8 Capitalが社会的地位の低い創業者を対象とした22億円規模のファンドを設立
VC / エンジェル
2021-07-20 21:54