AliOS Things 组件系统(uCube)
摘要: AliOS Things 是阿里巴巴提供的物聯網操作系統,可以在不同的設備上運行不同的功能,甚至相同的設備運行不同的功能,AliOS Things 基于組件管理: 1、 組件功能單一,復用組件提供的功能,比如通道、升級等功能。
點擊查看原文:http://click.aliyun.com/m/40568/
AliOS Things 是阿里巴巴提供的面向 IoT 領域、嵌入式物聯網操作系統,擁有數百個組件,同時成指數級增長。組件實現了成千上萬個業務,如何有效管理組件,使 AliOS Things 成為組件化操作系統,成為迫在眉睫的任務。
組件
組件是 AliOS Things 功能單元,以目錄的方式組織。組件包含源碼、頭文件、MakeFile 文件,Makefile 里面定義組件的編譯規則:組件名、頭文件、源碼、組件依賴關系。AliOS Things 組件模型,提供了:
1、組件自身保持高內聚,低耦合,功能高度可復,比如kernel、mesh、id2等組件。
2、組件之間任意組合,業務按需裁剪,比如芯片移植關注kernel組件,而業務開發需要連接、安全等組件。
不同的組件提供不同的功能,而組件之間相互融合,如同葉子組成樹木、樹木組成森林,構成整個 AliOS Things 組件生態。有過 Java 開發經驗的同學,對 Maven 應該不陌生,Maven 作為 Java 的項目構建和管理工具,將項目過程規范化、自動化、高效化及強大的擴展性,uCube 希望在 AliOS Thinngs 上實現 Maven 的功能,并滿足 IoT 場景下的特殊需求。
編譯體系
在介紹 uCube 之前,先介紹 AliOS Things 編譯系統。AliOS Things 使用 Makefile 組織源碼和依賴,app@board表示編譯目標,app 指定業務代碼,board 指定硬件板子信息,以 aos make helloworld@mk3060為例,編譯步驟如下:
1、解析參數,拆分成 應用 helloworld和板子 mk3060 兩部分。
2、遞歸查找 helloworld 應用依賴的組件。
3、遞歸查找 mk3060 硬件板子依賴的組件。
4、合并2、3兩步找到的所有組件并生成每個組件編譯規則。
5、編譯每個組件,鏈接組件生成最后的image。
uCube 功能模塊
uCube 主要功能有:
1、編譯系統:代碼編譯,Image下載、調試。
2、模板工程:生成模板工程。
3、組件管理:組件查找、添加、刪除等,組件依賴關系處理、版本管理。
4、IDE支持
5、組件認證:形成組件規范,驗證組件功能。
uCube 功能模塊uCube 流程
uCube 項目流程為:
1、全局環境配置:工具鏈、AliOS Things源碼目錄
2、根據目標,建立工程,比如hellowo@mk3060
3、查找組件,確認需要添加的組件。
4、在添加的功能組件提供的API接口上做開發,實現功能
5、編譯目標,燒寫到板子上驗證測試
uCube項目流程小結
uCube 目前解決了 AliOS Things:
1、配置系統:全局環境配置及對當個項目配置,形成統一配置管理系統
2、組件管理:組件查找包括本地組件查找和通過URL的組件查找,組件依賴關系處理,組件添加刪除等功能。
3、編譯系統:根據目標,依賴組件的信息,最終編譯出可執行文件。
uCube 將會在 AliOS Things Sutdio IDE 實現功能可視化,同時加強代碼管理、版本等功能,添加組件驗證等機制,確保組件正常良好的環境。uCube 希望通過組件魔方,形成組件生態,滿足 IoT 數億設備上的業務需求。
總結
以上是生活随笔為你收集整理的AliOS Things 组件系统(uCube)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: NAT网关之SNAT进阶使用(二)构建E
- 下一篇: 注释那些事儿:前端代码质量系列文章(一)