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