成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

為什么WebAssembly適合小型物聯網?

譯文 精選
物聯網 物聯網應用
隨著萬物互聯程度越來越高,物聯網(IoT)設備的數量呈爆炸式增長。這些設備有各種各樣的形狀和尺寸,從巨大的工業機器到微型傳感器。雖然較大的設備可能運行在Linux或其他操作系統上,但較小的或者微型設備需要不同的方法。

作者 | Dan Mihai Dumitriu

譯者 | 張怡

WebAssembly(簡稱Wasm)是一種虛擬指令集體系架構(virtual ISA)。Wasm支持輕量級、高效、安全的運行,非常適合資源有限的物聯網(IOT)設備。它還具有靈活性和平臺獨立性,因此很容易為各種硬件平臺開發應用程序。

隨著萬物互聯程度越來越高,物聯網(IoT)設備的數量呈爆炸式增長。這些設備有各種各樣的形狀和尺寸,從巨大的工業機器到微型傳感器。雖然較大的設備可能運行在Linux或其他操作系統上,但較小的或者微型設備需要不同的方法。

為什么WebAssembly (Wasm)是小型物聯網設備的完美選擇呢?因為這些設備對于Linux來說太“大材小用”了,它們可能只需要使用電池供電。

1、挑戰

首先,讓我們看看在小型物聯網設備上運行傳統操作系統所面臨的挑戰。通常這些設備功耗較低,內存和存儲容量有限。如果運行一個大的操作系統(如Linux)會浪費大量的資源,這可能很快就耗盡了設備的電池壽命。

此外,這些小型設備可能缺少支持完整Linux操作系統所需的硬件,例如硬件虛擬內存所需的內存管理單元(MMU)。小型物聯網設備應用各種實時操作系統(RTOS)——例如FreeRTOS、ThreadX和NuttX。因此,我們無法在這些微小的物聯網設備上使用Linux容器(又名Docker)。

其次,物聯網設備嵌入式開發周期與云軟件有很大不同。盡管對代碼進行更改并不復雜,但將其交付給最終客戶卻要經歷一個復雜的過程。通常,每個月都有一次代碼凍結,在此期間,所有修改都要經過完整的硬件在環測試,甚至還需要在許多不同類型的設備上進行。

在成功測試新版本之后,將啟動分階段部署流程,以避免固件更新、客戶投訴或服務升級等帶來的問題。對于大多數客戶來說,即使更改一個微小的代碼到交付,可能也需要幾周甚至幾個月的時間。在敏捷開發和云時代,這個過程不再被接受。

2、WebAssembly

Wasm是基于堆棧的虛擬機和字節碼格式的。最初是為Web瀏覽器插件設計的,但并不局限于Web應用程序。它是一個高效的多功能的運行環境,可廣泛應用于各種應用程序——包括物聯網設備。而且Wasm設計小巧,這使得它非常適合小型物聯網設備。

Wasm模塊的大小通常為幾千字節,比典型的Linux內核或Linux容器要小得多。這種小尺寸意味著Wasm可以在內存和存儲容量有限的設備上運行,并具有良好的性能。

將Wasm用于IoT設備的另一個優點是,它是一個獨立于平臺的運行環境。這意味著Wasm模塊可以用任何編程語言編寫,并在任何支持Wasm的平臺上執行。這種靈活性使得物聯網設備開發應用程序變得更加容易,無論硬件或軟件環境如何都不用發愁。

開發人員可以選用他們喜歡的、擅長的編程語言編寫代碼,然后將其編譯和在目標設備上執行。像C/C++、Rust、JavaScript都得到了很好的支持。當然也存在一些語言不太友好,但隨著Wasm不斷的規范化發展而得到完善。

Wasm組件在沙箱環境中執行,這意味著它們與系統的其余部分是隔離的。這使得攻擊者很難利用系統中的漏洞,因為他們無法訪問底層操作系統或硬件。這對于沒有虛擬內存的小型物聯網設備尤其重要。此外,Wasm可以在部署之前進行驗證和簽名,這為系統額外增加了一層安全保護。

一些Wasm運行環境支持AoT(Ahead of Time,運行前編譯),它接受Wasm字節碼并生成目標機代碼(CPU/MCU)。這在小型IoT設備的運行中非常有用,甚至是必不可少的,因為這些設備可能沒有可用的CPU和內存來執行JIT(即時編譯),就像我們通常在云端或電腦桌面上做的那樣。

AoT編譯可以成為云服務的一部分,該服務同時管理著部署在物聯網設備上軟件的運行。AoT編譯的代碼幾乎以本機速度運行,比Micropython等解釋性語言(直譯語言)快幾個數量級。

3、發展

雖然Wasm已經出現好幾年了,但它仍然是一項相對較新的技術。與傳統編程語言和架構相比,Wasm可用的工具和庫并不多。Wasm的某些規范仍在發展中,比如對Python等主流語言所需的GC的本地支持。然而,隨著越來越多的開發人員在各種應用程序中采用Wasm,這種情況正在迅速改變。

Wasm在物聯網設備上使用的另一個困難,是缺乏對特定于某個硬件的功能的支持。由于Wasm是一個獨立于平臺的運行環境,所以它不能直接訪問設備的硬件或傳感器等外圍設備。

開發人員必須使用Wasm和本機代碼的組合來訪問設備的硬件,并創建一個WASI API來擴展硬件功能。Wasm社區正在努力標準化WASI (WebAssembly System Interface)規范中的各種系統接口。

4、結論

總的來說,在物聯網設備上使用Wasm的優點遠遠超過潛在的缺點。Wasm是一個輕量級的、高效的、安全的運行環境,非常適合資源有限的設備。它還具有靈活性和平臺獨立性,可以輕松地為各種硬件和軟件環境開發應用程序,并為小型物聯網設備帶來敏捷開發。

隨著物聯網設備數量的持續增長,對于開發人員來說,希望為這些設備創建高效、安全的應用程序,Wasm將成為越來越重要的工具。隨著邊緣計算的日益重要和物聯網的蓬勃興起,可以預見WebAssembly將在未來的計算中發揮重要作用。

——譯者介紹——

張怡,51CTO社區編輯,主要研究人工智能算法實現以及場景應用,對機器學習算法和自動控制算法有所了解和掌握。

原文鏈接:https://thenewstack.io/why-webassembly-is-perfect-for-tiny-iot-devices/

責任編輯:武曉燕 來源: 51CTO技術棧
相關推薦

2018-12-24 06:56:12

物聯網網絡協議MiWi

2019-08-05 08:42:37

物聯網IOT技術

2020-11-05 10:50:09

物聯網數據技術

2020-04-01 11:19:03

物聯網LPWANIOT

2019-03-19 08:59:13

物聯網IOT技術

2019-09-24 09:47:20

IOT大數據物聯網

2019-05-30 08:18:27

物聯網IOT技術

2018-03-09 06:51:42

物聯網金融信息化

2018-08-15 08:07:06

2019-01-18 09:56:39

工業物聯網IIOT物聯網

2019-12-31 13:01:28

物聯網智能家居網絡安全

2021-02-28 13:22:29

物聯網5G技術

2022-11-07 11:22:33

2020-10-20 11:33:36

聯網安全

2018-04-09 22:17:44

物聯網物聯網設備智能

2021-09-30 10:19:29

物聯網安全物聯網IOT

2019-08-12 07:29:28

餐館物聯網IOT

2019-04-09 16:25:02

制造商SMB制造業

2016-01-07 13:58:25

物聯網運營商

2019-02-14 08:42:00

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 色婷婷av99xx | 久久国产精品久久久久 | www.黄色网 | 一区二区三区四区在线视频 | 欧美一a一片一级一片 | 日韩成人免费视频 | 久久国产精品久久久久久 | 亚洲欧美激情国产综合久久久 | 亚洲成色777777在线观看影院 | 99精品国产在热久久 | 中文字幕亚洲一区 | 久久精品国产久精国产 | 精品视频99 | 涩涩视频网站在线观看 | 国产精品自拍视频 | 欧美色成人 | 日韩av一区二区在线观看 | 成人在线视频网站 | 精品毛片 | 欧一区二区 | 天天草天天干 | 亚洲视频 欧美视频 | 亚洲精品一区二区 | 免费成人午夜 | 亚洲精品在线免费观看视频 | 国产成人精品一区二 | 久艹网站 | 久久亚洲春色中文字幕久久久 | 黄色毛片在线观看 | 成人网av | 91久久伊人| 久久69精品久久久久久国产越南 | 国产福利一区二区 | 亚洲国产精品久久久久秋霞不卡 | 亚洲福利 | 欧美黑人一级爽快片淫片高清 | 日日爱视频 | 国产精品美女视频 | 91久久国产综合久久91精品网站 | 久久久成人动漫 | 午夜欧美一区二区三区在线播放 |