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
アマゾン傘下のZooxが自動運転車の事故防止のために行ったこと
モビリティ
2021-07-03 02:24
企業の銀行口座や財務データを1カ所に集約するサービス「Airbank」、目標はオールインワンの財務ハブ
フィンテック
2021-06-24 06:05
センサー・計測機器大手Teledyne FLIRが米軍兵士向け化学兵器検知ウェアラブルセンサー開発で初期資金約4億円超を獲得
ハードウェア
2021-06-18 12:20
インドの優秀な人材を効果的に–インスタリムのエンジニア採用の実際
IT関連
2022-02-01 12:42
出社率低下も、76.3%の企業でインターネットトラフィックが増加–IDC
IT関連
2022-05-11 02:15
安易なオフィス回帰は「生産性の低下」につながる–Slackの英国責任者
IT関連
2022-10-27 13:51
「Internet Explorer」のサポート終了迫る–マイクロソフトが準備呼びかけ
IT関連
2022-05-10 11:40
業務全体の効率化で取り入れる並行化とコレオグラフとは何か
IT関連
2022-07-20 06:25
サイバー保険の保険料や加入率が上昇–米会計検査院レポート
IT関連
2021-05-26 17:35
医療業界がランサムウェア攻撃の標的に–TXOne、OT領域における脅威動向を解説
IT関連
2024-02-08 22:57
規制上のハードルをすべてクリアし、マイクロソフトが2.3兆円のNuance買収完了へ
IT関連
2022-03-06 16:53
文章からプログラムを自動生成する「OpenAI Codex」β版APIが公開 「GitHub Copilot」のエンジン
ロボット・AI
2021-08-12 05:07
「GitHub Copilot Chat」利用、コードの品質を向上–GitHub調査
IT関連
2023-10-22 13:01
Sansan、契約データベース「Contract One」で検索強化–図表内や手書き文字情報も検索可能に
IT関連
2024-07-03 04:24