DevEco Device Tool 為設備開發(fā)者提供一站式的開發(fā)環(huán)境和資源獲取通道,實現(xiàn)了從芯片模板工程創(chuàng)建、到開發(fā)資源挑選定制,再到快速編碼、輕小型系統(tǒng)調(diào)試調(diào)優(yōu)、燒錄環(huán)節(jié)的全流程覆蓋,幫助開發(fā)者實現(xiàn) OpenAtom OpenHarmony(以下簡稱“OpenHarmony”)智能硬件設備的高效開發(fā)。自2020 年 9 月發(fā)布了第一個版本 V1.0.0,到 2022 年 3 月底發(fā)布了 V3.0 Release 版本,歷經(jīng) 10 次迭代升級,DevEco Device Tool 為開發(fā)者主要提供了以下八大特性。
一、一體化安裝導航
設備開發(fā)過程中依賴的軟件比較多,而且不同的軟件還存在多種版本,這在一定程度上加大了搭建開發(fā)環(huán)境的難度,導致部分開發(fā)者由于環(huán)境安裝遇到的問題被勸退。
DevEco Device Tool 為開發(fā)者提供一體化安裝導航功能,自動對依賴的軟件進行檢測,并針對缺失的軟件提供推薦的軟件版本。開發(fā)者只根據(jù)提示進行勾選,即可自動下載和安裝軟件,提高用戶的安裝體驗和便利性。
比如,圖 1 表示安裝器檢測到 Python 環(huán)境缺失,開發(fā)者可通過勾選完成 Python 的自動下載安裝。
圖1 安裝提示
二、支持多種類型的開發(fā)板和芯片
DevEco Device Tool 目前支持基于華為海思芯片的 Hi3516DV300、Hi3518EV300、Hi3861V100、BearPi-HM Nano 開發(fā)板,以及基于三方廠商芯片的 Imx6ull、Rtl8720、Xr872、Neptune 等,總計 24 款開發(fā)板。未來,DevEco Device Tool 還將增加對更多開發(fā)板的全面支持。
如圖 2 所示,在 DevEco Device Tool 工具界面,選擇“QUICK ACCESS > 主界面 > 開發(fā)板”,即可查看 DevEco Device Tool 目前支持的所有開發(fā)板和芯片。
圖2 當前支持的開發(fā)板
三、集成設備開發(fā)樣例
為幫助提升開發(fā)效率,DevEco Device Tool 集成了 OpenHarmony 社區(qū)的設備開發(fā)樣例,讓開發(fā)者無需從零開始敲代碼,可快速上手。開發(fā)者在創(chuàng)建工程時根據(jù)需要選擇開發(fā)樣例,即可一鍵快速拉取源碼。
具體使用方法:
1.在 DevEco Device Tool 工具界面,選擇“QUICK ACCESS > DevEco Home > Home”,然后點擊 Create Project 進入創(chuàng)建工程的向?qū)Ы缑妗?/p>
2.輸入工程名稱,在 Bundle 下拉欄中選擇需要的設備開發(fā)樣例。Device Tool 會根據(jù)所選的開發(fā)樣例自動填寫 MCU 和開發(fā)板信息。
3.點擊 Finish,DevEco Device Tool 自動拉取開發(fā)樣例完成工程創(chuàng)建。
圖3 選擇開發(fā)樣例
目前已集成了 47 個不同產(chǎn)品的樣例,后續(xù)會有越來越多的樣例逐漸上架,形成標準的資源中心。開發(fā)者也可以將自己的樣例上傳到 OpenHarmony 社區(qū)參與樣例共建哦!
樣例共建鏈接:
https://gitee.com/openharmony-sig/knowledge/blob/master/docs/co-construct_demos/README_zh.md
四、多人共享的遠程開發(fā)模式
在開發(fā)過程中,開發(fā)者可能都遇到過開發(fā)環(huán)境不夠用、與同事爭搶同一套開發(fā)環(huán)境的窘迫場景。DevEco Device Tool 提供多人共享開發(fā)的功能,支持一個團隊共用一臺服務器。只需搭建一臺公共的 Linux 服務器,團隊成員即可從自己的 Windows 機器遠程登錄 Linux 服務器,進行共享開發(fā)。既節(jié)省了時間,也降低了成本。
具體使用方法:
點擊 VSCode 左側(cè)的圖標,進入遠程資源管理器界面,添加遠程服務器(即 Linux 服務器)。添加成功后,管理員登錄遠程服務器通過 sudo 命令進行初始配置后,團隊成員即可通過 Remote SSH 登錄遠程服務器,進行共享開發(fā)了。
圖4 多人共享開發(fā)
五、自動檢測和補全編譯工具鏈
在日常開發(fā)中,你是否遇到過因工具缺失導致編譯失?。咳缓蟮教幉檎夜ぞ?,找到后又要學習怎么安裝,安裝后還需要配置工具鏈,操作繁瑣,費時費力。
DevEco Device Tool 貼心地為開發(fā)者集成了豐富多樣的編譯工具鏈。導入工程時,DevEco Device Tool 自動檢測工程所依賴的工具是否完備。如果存在工具缺失,可一鍵下載和安裝所有缺失的工具,且自動完成工具鏈配置,大幅度減少編譯復雜度,提高工作效率。
具體使用方法:
1.導入工程后,在 DevEco Device Tool 工具界面,選擇“QUICK ACCESS > DevEco Home > Projects”,然后點擊 “Settings”進入工程配置界面。
2.在工程配置界面,點擊“toolchain”頁簽下的“Details”,詳細查看缺失了哪些工具。
3.在工程配置界面,點擊“toolchain”頁簽下的“Setup”,一鍵下載和安裝所有缺失的工具。
圖5 自動檢測和補全編譯工具鏈
六、源碼級調(diào)試能力
在開發(fā)過程中,調(diào)試能力尤為重要,一個好用的調(diào)試功能能夠幫助開發(fā)者事半功倍地完成開發(fā)任務。
DevEco Device Tool 提供自研調(diào)試插件,為開發(fā)者提供源碼級調(diào)試能力。調(diào)試界面如下圖所示:
圖6 調(diào)試界面
提供的源碼級調(diào)試能力包括:
●支持 Launch 和 Attach 兩種方式啟動調(diào)試。
●支持的調(diào)試操作有:單步調(diào)試、方法進入、方法退出、Continue、Restart(復位調(diào)試)、Reset device(復位設備)、停止調(diào)試。
●支持設置斷點,包括源碼斷點、數(shù)據(jù)斷點、函數(shù)斷點和匯編源碼斷點。
●支持查看和修改局部變量(Local)、全局變量(Global)、靜態(tài)變量(Static)和通用寄存器(Registers),還支持將關心的變量添加到“監(jiān)視”任務欄,隨時查看變量值變化。
●支持在調(diào)試過程中同時查看當前執(zhí)行的源代碼和對應的匯編代碼,且支持對匯編代碼設置斷點和單步調(diào)試。
●支持調(diào)試過程中查看調(diào)用棧。
●支持根據(jù)地址查看內(nèi)存。
七、性能分析能力
在輕量設備開發(fā)過程中,時常會面臨 CPU 緊張、內(nèi)存不足、內(nèi)存溢出等問題,因此開發(fā)者在開發(fā)過程中需要時刻關注 CPU 和內(nèi)存等的使用情況。
為幫助開發(fā)者提升性能,DevEco Device Tool 提供以下性能分析能力:
1. Profiling可視化分析
DevEco Device Tool 提供 Profiling 可視化分析功能,通過可視化的界面展示開發(fā)板上運行的應用所占系統(tǒng)資源和內(nèi)存資源的信息,幫助開發(fā)者查看和分析開發(fā)板上各任務堆內(nèi)存和棧內(nèi)存的使用情況。
可查看的可視化數(shù)據(jù)曲線包括 Heap(堆內(nèi)存)、Stack(棧內(nèi)存)、OS Objects(系統(tǒng)資源)和 All in one(實時的內(nèi)存占用情況)的使用情況。
● Heap:實時統(tǒng)計應用堆內(nèi)存當前的使用情況和歷史峰值情況。
● Stack:統(tǒng)計應用內(nèi)各任務的內(nèi)存使用情況,可以通過任務內(nèi)存的峰值比例(Peak%)查看具體任務的內(nèi)存使用情況,以便更合理的分配每個任務的內(nèi)存大小。
圖7 Stack(棧內(nèi)存)
● OS Objects:統(tǒng)計系統(tǒng)資源的使用情況,如定時器(timers)、任務(tasks)、隊列(queues)等數(shù)量。
圖8 OS Objects(系統(tǒng)資源)
● All in one:統(tǒng)計 Heap 和 Stack 的使用情況,實時動態(tài)刷新。
圖9 All in one
2. 棧分析和鏡像分析
DevEco Device Tool 通過集成棧分析工具(Stack Analysis)和鏡像分析工具(Image Analysis),用于開發(fā)過程中的內(nèi)存不足、內(nèi)存溢出等問題進行分析,幫助開發(fā)者更加精準的分析、定位問題。
棧分析工具是基于靜態(tài)二進制分析手段,提供任務棧開銷估算值和函數(shù)調(diào)用關系圖示,為棧內(nèi)存使用、分析、優(yōu)化、問題定位等開發(fā)場景提供較為準確的靜態(tài)內(nèi)存分析數(shù)據(jù)參考。鏡像分析工具對工程構(gòu)建出的elf文件進行內(nèi)存占用分析,支持開發(fā)者快速評估內(nèi)存段、符號表使用情況。
圖10 棧分析和鏡像分析
(目前 DevEco Device Tool 只支持只支持 Hi3861V100 開發(fā)板的棧分析和鏡像分析功能。)
3. Trace分析
DevEco Device Tool 提供 Trace 分析功能,可以實時跟蹤應用在開發(fā)板上運行時的 CPU 的用率、內(nèi)存占用、運行的任務或事件。開發(fā)者可以在任意時刻開始或停止記錄 Trace,并以圖形化形式展示事件、內(nèi)存、CPU、運行軌跡等信息。開發(fā)者可以根據(jù)采集的跟蹤數(shù)據(jù)查看導致內(nèi)存或 CPU 異常的事件或進程,從而進行源代碼的優(yōu)化。
圖11 Trace分析
(目前DevEco Device Tool只支持Hi3516DV300和Hi3518EV300的Trace分析功能。)
4. Perf分析
DevEco Device Tool 提供 Perf 分析功能,可以通過對開發(fā)板源碼進行事件采樣,獲取 CPU 硬件事件、高精度周期事件、OS 軟件事件,生成 Perf 文件。Perf 分析器對輸出的 perf 文件進行熱點函數(shù)和熱點路徑分析。基于 Perf 分析,可以進行算法優(yōu)化、代碼優(yōu)化,以提高執(zhí)行速度、減少內(nèi)存占用。
圖12 Perf分析
(目前DevEco Device Tool只支持Hi3516DV300和Hi3518EV300的Perf分析功能。)
八、應用兼容性測試
為了保證合作伙伴的設備和應用在 OpenHarmony 上能穩(wěn)定地運行,同時提供一致性的接口和業(yè)務體驗,合作伙伴的設備和應用在正式發(fā)布之前,需要進行一系列兼容性測試。
DevEco Device Tool提供基于 Hi3516DV300 開發(fā)板的應用兼容性測試功能。開發(fā)者可以在 Linux 系統(tǒng)上一站式完成開發(fā)和應用兼容性測試,無需將編譯生成文件拷貝到 Windows 工作臺,即可通過命令行進行測試。
具體使用方法:點擊 Acts Test 進入配置頁,在配置一系列參數(shù)后保存后,通過 PROJECT TASKS 中的 Test 按鈕,執(zhí)行對應的模塊按鈕后,會自動進行應用兼容性測試并將測試結(jié)果顯示到瀏覽器中。
圖13 應用兼容性測試
審核編輯 :李倩
-
開發(fā)板
+關注
關注
25文章
5096瀏覽量
97825 -
python
+關注
關注
56文章
4801瀏覽量
84878 -
開發(fā)者
+關注
關注
1文章
589瀏覽量
17048
原文標題:DevEco Device Tool 助力OpenHarmony設備開發(fā)
文章出處:【微信號:gh_e4f28cfa3159,微信公眾號:OpenAtom OpenHarmony】歡迎添加關注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論