在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

物聯網主流的軟件開發模式是怎么樣的?

RTThread物聯網操作系統 ? 來源:未知 ? 作者:工程師郭婷 ? 2018-07-22 11:23 ? 次閱讀

物聯網設備,因為要連接網絡和應用的多樣化,導致軟件的開發難度和復雜度大幅地增加,開發方式也會與之前的嵌入式設備大不一樣。當前主流的軟件開發模式是怎么樣的呢?我們以一個典型的MCU+WiFi/NB-IoT SoC架構的IoT設備開發為例(圖示一),開發人員需要針對特定的無線SoC/模塊,開發MCU TCP/IP協議層以上的應用,包括MQTT、HTTP、Web Socket、業務類應用等等。一旦用戶更換了無線芯片或模塊,因為網絡協議、編程接口等的不統一,上層應用都需要做大幅的改動甚至要重頭來過。

(圖示一:當前的軟件開發模式)

而如果采用了RT-Thread操作系統的SAL抽象層(圖示二),開發者則無須考慮系統采用的是哪種無線方式、哪種無線芯片、甚至哪種模塊,哪種接口,只需調用上層的API接口,即可實現一次開發,跨平臺使用。不僅如此,RT-Thread支持的各種IoT軟件包,都可以很方便的“即裝即用”。

(圖示二:具備SAL的軟件開發模式)

以上可見,RT-Thread此次發布的SAL可謂對IoT產業意義重大,真正實現了系統(MCU+無線芯片/模塊)層面的跨平臺軟件開發及兼容,暨ACS(Application Cross System),后期的應用擴展也會變得易如反掌。

SAL介紹

SAL,即Socketabstraction layer的縮寫,意為套接字抽象層,處于網絡硬件層與應用層之間。 其前身是RT-Thread 的 DFS_NET 組件,由于其對lwIP 有一定的依賴,存在局限性,RT-Thread對其進行了近乎重構的再造。SAL 的孕育而出,使得 RT-Thread 可以無縫接入各式各樣的網絡芯片或模塊(例如: W5500/CH395 這類自帶協議棧的以太網芯片,帶 AT指令的 WiFi 模塊、GPRS 模塊、NB-IoT模塊等等),極大地提升了RT-Thread 在 IoT 領域對于不同網絡硬件的兼容性。其主要特性如下(圖示三):

抽象、統一多種網絡協議棧接口

提供標準 BSDSocket API

統一 fd(file descriptor)管理方式

(圖示三:網絡框架圖)

下面將站在與 SAL 相關聯的模塊角度,說明SAL 的功能與實現:

應用層 :應用層在做網絡開發時,可以直接使用 SAL 提供的 BSD Socket API 接口。接口層的統一抽象,使得我們的開發者也可以快速應用 RT-Thread 提供的眾多支持 BSDSocket 接口的 IoT 軟件包。讓我們的用戶 在網絡編程方面極大的提升了軟件的可重用性。

SAL 實現層:該層位于 SAL 的底部,針對不同的模塊、芯片或協議棧,完成與 SAL 框架的對接實現。接入完成后,應用層幾乎不需要關心真正的網絡接入方式,降低了應用層與底層的耦合

DFS 文件系統層:SAL 與 DFS 緊密結合, Socket 描述符與fd文件描述符可以完全對應起來,實現了fd的統一管理。使得應用層可以通過read/write 、 poll/select 接口操作 Socket 套接字,更加兼容 POSIX 標準。

應用場景:

對接 AT 指令的網絡模塊

在使用這些 AT 模塊做網絡開發時,不可避免地會在我們的應用代碼中耦合很多與模塊相關的 AT 通信代碼。這樣也會導致,以前使用標準的 BSD Socket 開發過的組件沒法被重用過來。

有了SAL,只需要我們針對AT 模塊的指令方式,實現 SAL的對接接口(RT-Thread已經提供了常用模塊的實現,例如,樂鑫的 ESP8266,移遠的 M26),上層應用即可愉快地進行Socket編程了。

這里稍微提一下,RT-Thread 的 AT 組件已具有上述功能,很快將會發布,敬請期待……

對接內置協議棧的網絡芯片

隨著像 W5500/CH395 這類網絡芯片的越來越普及,我們的 MCU 也就不需要跑網絡協議棧了,極大地降低了MCU的資源占用情況。可是跟AT模塊也有同樣的問題,怎么樣才能保證應用層依然很簡單地使用標準Socket進行編程?這個問題就交給SAL去解決吧。SAL 造好了適配這些芯片的輪子,會方便我們所有使用 RT-Thread + W5500/CH395 的開發者。

非lwIP的 TCP/IP 協議棧

在一些特殊領域,可能lwIP并不能夠滿足我們的用戶要求。更換 TCP/IP 協議棧就不可避免。正是因為有了 SAL 框 架,新的協議棧,只需要與其對接完畢,上層應用即可放心使用,以前的代碼照樣也可以被拿來重用。

SocketCAN

Socket CAN 做為Linux上CAN編程的一種方式,它簡易易用,編程順手。很多用戶也想在 RT-Thread 上實現 Socket CAN 編程,這個時候就需要 SAL 上場了。只需要我們在底層使用 RT-Thread CAN 設備實現 SAL框架對應的接口即可。

從 DFS_NET 到 SAL 遷移指南

原先的 DFS_NET 配置位于:RT-Thread Components → Device virtual file system

現有的 SAL 配置位于: RT-ThreadComponents → Network → Socketabstraction layer

遷移相關步驟如下:

確定之前項目中是否開啟 RT_USING_DFS_NET 選項,若開啟需要進行遷移。

RT_USING_DFS_NET 選項在SAL 組件添加之后被廢棄,由 SAL_USING_POSIX 選項代替,若需要遷移,在 ENV 工具中開啟上述 SAL 配置選項。

保存配置并退出ENV 工具,重新生成工程,完成遷移。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 軟件開發
    +關注

    關注

    0

    文章

    636

    瀏覽量

    27955
  • 物聯網
    +關注

    關注

    2921

    文章

    45640

    瀏覽量

    384542
  • 網絡協議
    +關注

    關注

    3

    文章

    273

    瀏覽量

    21933

原文標題:RT-Thread發布SAL套接字抽象層,帶來全新物聯網軟件開發模式

文章出處:【微信號:RTThread,微信公眾號:RTThread物聯網操作系統】歡迎添加關注!文章轉載請注明出處。

收藏 0人收藏
  • 伍尚忠1

評論

相關推薦

電機故障模式識別軟件開發

電機故障診斷任務。實驗證明該軟件可以很好地應用到實踐當中。純分享帖,需要者可點擊附件獲取完整資料~~~(*附件:電機故障模式識別軟件開發.pdf免責聲明:本文系網絡轉載,版權歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權問
發表于 04-07 17:33

我國軟件開發者數量超過940萬

在近日舉辦的開放原子開發者大會上,工業和信息化部負責人傳來了一則令人振奮的消息:我國軟件開發者數量已經突破940萬大關。這一數據不僅彰顯了我國在軟件開發領域的雄厚實力,也預示著我國在全球軟件開
的頭像 發表于 12-23 11:08 ?449次閱讀

聯網學習路線來啦!

,通過這個網絡可以實現設備之間的數據交流和互動。 聯網的核心是數據,通過采集和分析數據,可以實現對設備和環境的監控和控制。 聯網典型的4層架構的了解。 2基礎階段知識學習 2.1
發表于 11-11 16:03

TMS320C6201 DSP軟件開發技術

電子發燒友網站提供《TMS320C6201 DSP軟件開發技術.pdf》資料免費下載
發表于 10-26 09:25 ?0次下載
TMS320C6201 DSP<b class='flag-5'>軟件開發</b>技術

【星閃派聯網開發套件體驗連載】智能交通燈

感謝電子發燒友,感謝潤和軟件,提供星閃派聯網開發套件試用。 本次試用計劃: 用星閃派聯網
發表于 10-05 13:00

PGA450-Q1軟件開發指南

電子發燒友網站提供《PGA450-Q1軟件開發指南.pdf》資料免費下載
發表于 09-30 14:25 ?1次下載
PGA450-Q1<b class='flag-5'>軟件開發</b>指南

ECU電控軟件開發及測試介紹

本文重點介紹符合AutoSar架構的應用軟件開發、MBD開發模式下的軟件質量評估與優化方案、復雜場景下的ECU性能壓力測試方案。
的頭像 發表于 09-26 14:25 ?3795次閱讀
ECU電控<b class='flag-5'>軟件開發</b>及測試介紹

TUSS44x0軟件開發指南

電子發燒友網站提供《TUSS44x0軟件開發指南.pdf》資料免費下載
發表于 09-14 10:59 ?0次下載
TUSS44x0<b class='flag-5'>軟件開發</b>指南

BQ769x2 軟件開發指南

電子發燒友網站提供《BQ769x2 軟件開發指南.pdf》資料免費下載
發表于 08-12 14:41 ?0次下載

嵌入式軟件開發與AI整合

嵌入式軟件開發與AI整合是當前技術發展的重要趨勢之一。隨著人工智能技術的快速發展,嵌入式系統越來越多地集成了AI算法,以實現更復雜的智能功能。以下是關于嵌入式軟件開發與AI整合的詳細分析
的頭像 發表于 07-31 09:25 ?1135次閱讀
嵌入式<b class='flag-5'>軟件開發</b>與AI整合

聯網主機E6000:智慧園區建設不可或缺的智能伙伴

智慧園區是指應用數字化技術,以全面感知和泛在聯接為基礎的人機物事深度融合體,具備主動服務、智能進化等能力特征的有機生命體和可持續發展空間。 龍興聯5G聯網主機E6000 智慧園區與
的頭像 發表于 07-16 17:36 ?601次閱讀
<b class='flag-5'>物</b><b class='flag-5'>聯網主</b>機E6000:智慧園區建設不可或缺的智能伙伴

聯網主機E6000:動環監控的全新解決方案!

聯網主機E6000在動環監控中的應用,標志著一場新的技術革命。隨著科技的進步,特別是在聯網領域,數據采集和處理已經成為企業運營不可或缺的一環。E6000作為一款支持多協議、多接口的
的頭像 發表于 07-16 17:30 ?625次閱讀
<b class='flag-5'>物</b><b class='flag-5'>聯網主</b>機E6000:動環監控的全新解決方案!

【《軟件開發珠璣》閱讀體驗】+ 心得

【《軟件開發珠璣》閱讀體驗】+ 心得 感謝電子發燒友論壇提供的讀書機會。讀這本書使我在編程方面多了位資深老師。 在軟件項目開發領域的時,我閱讀了《軟件開發珠璣》這本書。它以獨特的視角和
發表于 06-23 17:56

聯網主機 E6000 在智慧工地上的應用

隨著科技的不斷發展,智慧工地的概念逐漸普及。聯網技術的應用為工地管理帶來了革命性的變化,聯網主機E6000作為一款領先的
的頭像 發表于 06-20 16:03 ?413次閱讀
<b class='flag-5'>物</b><b class='flag-5'>聯網主</b>機 E6000 在智慧工地上的應用

上位機軟件開發用什么語言

上位機軟件開發是指開發用于與下位機(如PLC、單片機等)進行通信、控制和數據處理的計算機軟件。上位機軟件在工業自動化、
的頭像 發表于 06-06 10:44 ?2762次閱讀
主站蜘蛛池模板: 亚洲国产精品久久婷婷 | 欧美人另类zooz | 亚洲97在线| 国产一区二区三区不卡观 | 一道精品一区二区三区 | 在线网站你懂 | 美国一级毛片免费看成人 | 韩国一区二区三区视频 | 天天摸天天草 | 妇女交性大片 | avtt加勒比手机版天堂网 | 天堂中文最新版www 天堂资源8中文最新版在线 | 免费人成网站线观看合集 | 黄色片香蕉视频 | 久久综合九色综合精品 | bt天堂中文在线 | 一级欧美在线的视频 | 久久国产热 | 性欧美丨18一19 | 夜夜操美女 | 激情五月婷婷综合网 | 婷婷六月激情在线综合激情 | 新版天堂8在线天堂 | 妖精视频永久在线入口 | 欧美成人性动漫在线观看 | 不卡免费在线视频 | 日本系列 1页 亚洲系列 | 五月天婷婷丁香 | 夜夜爽爽爽 | www.色涩| 成年看片免费高清观看 | 亚洲视频第一页 | 中文字幕在线看精品乱码 | 免费日韩三级 | 天天爱综合 | 狠狠色丁香婷婷综合激情 | 97精品久久天干天天蜜 | 国产三级精品三级在线观看 | 天堂在线www在线资源 | 永久免费人成网ww555kkk手机 | 在线天堂网|

電子發燒友

中國電子工程師最喜歡的網站

  • 2931785位工程師會員交流學習
  • 獲取您個性化的科技前沿技術信息
  • 參加活動獲取豐厚的禮品