Rust是物聯網平臺語言? - y|sndr

banq發表於2021-12-16

本文概述了針對物聯網應用的 Rust 生態系統,並分析了其在 2021 年中期撰寫本文時對新專案的當前適用性。

物聯網和無處不在的計算已經成為當今編寫的軟體的很大一部分。為了證明此類軟體的安全編寫應該符合人體工程學,同時保持效能和效率,應該最大限度地減少人為錯誤的可能性。

Rust 是一種年輕的程式語言,具有很多前景,包括成為無處不在計算物聯網的可行平臺。本文將介紹泛在計算和物聯網,然後描繪當前與這些領域相關的 Rust 生態系統,最後分析該生態系統如何滿足該領域的需求。

 

泛在計算Ubicomp的特點介紹

無處不在計算的概念,通常並且在下文中簡稱為Ubicomp,是由 Mark Weiser 在他 1991 年設想的“21 世紀計算機”  論文中提出的。在計算與今天的標準相比是可見的、不可移動的和落後的時代,Weiser 談到了技術的“消失”。當然,他沒有談到計算量的減少,而是相反。消失是關於所述技術的明視訊記憶體在。Weiser 預測了一個計算無處不在的世界——無處不在——“融入日常生活。” 一方面,它是關於計算機的移動性,即能夠在任何地方進行計算。然而,這並沒有完全涵蓋它!的確,Ubicomp 的定義是人們生活的無干擾改善。

在現代,Ubicomp 已成為人機互動 (HCI) 實施和研究的重要組成部分。尤其是瞭解使用者的上下文並據此採取行動是 Ubicomp 與 HCI 相關的一個重要方面,併為未來計算的進步帶來了許多機會。

自從 Weiser 提出 Ubicomp 的概念並實現了他的許多想法以來,技術取得了巨大的發展。波普等人指出了這方面的關鍵發展:

  1. 情境意識和主動性:上下文感知使服務能夠逐漸變得更加主動,同樣減少使用者所需的互動量
  2. 適應性:未來的計算系統必須適應使用者的情況、習慣和意圖。
  3. 智慧:有幾個專案正在推動在不同舒適度的專案中實施 AR 的想法,這些專案包括谷歌眼鏡和微軟 Holo Lens 或基於智慧手機的解決方案,如谷歌鏡頭。

 

物聯網

雖然 Ubicomp 作為一個概念似乎更專注於與人類的聯絡及其為他們提供的可能性,但物聯網作為連線裝置的營銷術語具有更大的影響。在某種程度上,它比 Ubicomp 更實用。然而,這並不意味著它是一個更具體的。物聯網的應用包括家庭自動化、智慧城市、媒體消費和交通等,其中許多也是 Ubicomp 的一部分。與 Ubicomp 的不同之處在於,物聯網描述了協同工作和通訊的裝置的實際系統/網路,以及它們的協議和標準。

總而言之,物聯網由三個主要元素組成,每個元素的複雜性根據應用程式的不同而有所不同,正如 Jayavardhana Gubbi 在 2013 年的一篇論文[17] 中所闡述的那樣。

  1. 硬體是感測器、執行器和通訊驅動程式的通用術語
  2. 中介軟體提供中間分析和資料儲存
  3. 簡報將結果傳達給終端使用者

。。。

 

物聯網的 Rust 生態系統

談到物聯網,ARM 是目前物聯網[29]邊緣使用的晶片組和感測器等嵌入式裝置的領先製造商。因此,要成為涵蓋物聯網空間作為語言的可行選擇,必須支援基於 ARM 的處理器!因此,將特別關注 Rust 中的 ARM 支援。

近年來,WebAssembly  (WASM) 已經發展成為一個獨立於作業系統的平臺,旨在在安全沙箱中以接近本機的速度在網路瀏覽器中執行程式。Rust 作為一種語言一直在通過語言支援和工具推動這一發展。三個最大的獨立 WASM 執行時不僅採用 Rust 作為它們的實現語言,而且還進化出標準工具將 WASM 整合到您的 JavaScript 程式碼庫和庫支援中,以縮小 Rust/WASM 世界和JavaScript 執行時。

像fastly和Cloudflare這樣的公司已經開發了一些服務來促進這個平臺為邊緣計算提供方便的入口。

原文點選標題

 

相關文章