亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

WASI原理與Wasmtime配置是怎樣的

發布時間:2021-11-22 17:57:33 來源:億速云 閱讀:335 作者:柒染 欄目:大數據

WASI原理與Wasmtime配置是怎樣的,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

WASM(Web Assembly)盡管是為了提高網頁中性能敏感模塊表現而提出的字節碼標準, 但是WASM卻不僅能用在瀏覽器(broswer)中, 也可以用在其他環境中. 在這些環境中, 我們則需要支持WASI(WebAssembly System Interface, WASM系統接口)的runtime來執行我們編譯運行的wasm模塊. 本文將介紹Mozilla下的一個組織CraneStation所開發的WASM運行時wasmtime, 該運行時對WASI支持比較高. 

什么是WASI1?


WASI是一個新的API體系, 由Wasmtime項目設計, 目的是為WASM設計一套引擎無關(engine-indepent), 面向非Web系統(non-Web system-oriented)的API標準. 目前, WASI核心API(WASI Core)在做覆蓋文件, 網絡等等模塊的API, 但這些實現都是剛剛開始實現, 離實用還是有很長路要走.

關于WASM runtime


在了解了WASI之后, 博主最后選定兩個WASM運行時進行探索:  WASMER 與 Wasmtime.


這兩款運行時都號稱開始支持了WASI標準, 但博主使用rust-wasi-tutorial對兩款運行時進行試驗后,


發現WASMER對于文件讀取還是有些問題, 而Wasmtime則是通過了規格測試(基于specs testsuite),


因此本文接下來著重于Wasmtime的配置介紹.

Wasmtime與rust環境配置


由于目前Wasmtime與WASMER均只支持Unix-like環境, 接下來樓主將演示如何在WSL(Ubuntu 18.04)下配置Wasmtime.


而在目前比較方便生成wasm的編程語言中, 博主選擇使用自帶wasi目標的[rust編程語言], 可以”零代價”配置wasm相關工具鏈.

配置rust

  1. 下載并安裝rustup: curl https://sh.rustup.rs -sSf | sh, 安裝時使用默認 stable-x86_64-unknown-linux-gnu工具鏈, 后面我們還會自行添加用于編譯wasm的nightly工具鏈.

  2. 為cargo配置ustc反代, 提高crates(rust庫)下載速度2

  3. 安裝rustfmt: rustup component add rustfmt --toolchain stable-x86_64-unknown-linux-gnu. Wasmtime的test腳本需要用到該組件.

  4. 安裝rust nightly工具鏈: rustup toolchain add nightly-x86_64-unknown-linux-gnu. 當前rust的WASI目標還在開發中, 尚未穩定.

  5. 安裝rust WASI目標: rustup target add wasm32-unknown-wasi.

配置Wasmtime

  1. 安裝cmake與clang: sudo apt install cmake clang, 用于編譯Wasmtime. Wasmtime目前尚未有正式發布版本, 故需要我們自行編譯.

  2. 拷貝Wasmtime源碼: git clone --recursive git@github.com:CraneStation/wasmtime.git ~/wasmtime.

  3. 切換到Wasm源碼目錄: cd ~/wasmtime

  4. 執行測試腳本: ./test-all.sh. 當腳本執行完畢并通過測試后, 說明wasmtime已經正常編譯并且能在當前WSL環境下正常工作, 可以使用生成的wasmtime可執行文件.

  5. 將生成的wasmtime拷貝到/usr/bin目錄中: cp ~/wasmtime/target/release/wasmtime /usr/bin , 以便在整個WSL環境中任意目錄執行wasmtime. wasmtime是個單文件(stand alone)運行時.

  6. 執行wasmtime --help命令, 確認wasmtime成功安裝.

看完上述內容,你們掌握 WASI原理與Wasmtime配置是怎樣的的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

甘谷县| 七台河市| 永平县| 长宁区| 通辽市| 乌兰浩特市| 平乡县| 手机| 项城市| 萍乡市| 弥渡县| 上高县| 故城县| 上饶县| 静宁县| 黎城县| 海安县| 蒙城县| 巨野县| 海南省| 乐至县| 陕西省| 大方县| 六盘水市| 新丰县| 饶平县| 宁阳县| 金湖县| 吉木萨尔县| 河北省| 江口县| 介休市| 阿坝县| 香港| 梁河县| 枝江市| 太原市| 修武县| 大名县| 临夏市| 牙克石市|