1、SystemView簡介
SystemView 是一個用于分析嵌入式系統性能的工具。SystemView可以分析系統中有哪些中斷、任務執行了,以及它們的先後關系。 可以完整的深入觀察一個應用程式運作時的行為,它揭示了在任務運作中發生了什麼,哪個中斷觸發了任務切換,中斷和任務調用了哪個底層系統的API函數。
SystemView 可以實時分析和展示資料,幫助使用者進行系統調試和問題診斷,尤其是在開發和處理具有多個任務的複雜系統時。
SystemView效果展示:
如何用SystemView分析AliOS Things1、SystemView簡介2、基礎知識3、物料清單3.1、HaaS100 硬體3.2、J-Link 仿真器4、案例實作4.1、硬體連接配接4.2、編譯AliOS Things5、使用SystemView5.1、下載下傳安裝SystemView5.2、配置SystemView5.3、打開SystemView PC軟體5.4、開始采集6、總結開發者支援 2、基礎知識
SystemView 由兩個部分組成:
SystemView 的PC端程式,用于收集目标闆上傳的資料資訊,并在不同的視窗中顯示這些資訊。這些記錄可以儲存到檔案中,用于以後的分析。
SystemView 嵌入式端程式可以分析嵌入式系統的行為。它記錄嵌入式系統産生的監視資料,它包含了SYSTEMVIEW和RTT。SYSTEMVIEW子產品用于收集和格式化監視資料,并将資料傳送給RTT。RTT子產品可以将資料儲存在目标闆的buffer中,使用J-Link可以實作連續的記錄資料。
如果想用SystemView分析我們OS的性能,我們需要把SystemView相關的代碼加到我們的代碼工程中一起編譯。
在我們的OS代碼需要記錄的地方添加hook函數,用SystemView的 API代碼實作這些hook函數。
當這些函數被運作時SystemView相關的代碼會把資料通過Jlink發送到PC機上,PC機上的SystemView 軟體會解析這些資料并通過圖形化的方式展示出來。
下圖展示的是SystemView的工作原理:
如何用SystemView分析AliOS Things1、SystemView簡介2、基礎知識3、物料清單3.1、HaaS100 硬體3.2、J-Link 仿真器4、案例實作4.1、硬體連接配接4.2、編譯AliOS Things5、使用SystemView5.1、下載下傳安裝SystemView5.2、配置SystemView5.3、打開SystemView PC軟體5.4、開始采集6、總結開發者支援 3、物料清單
3.1、HaaS100 硬體
HaaS100 硬體簡介
如何用SystemView分析AliOS Things1、SystemView簡介2、基礎知識3、物料清單3.1、HaaS100 硬體3.2、J-Link 仿真器4、案例實作4.1、硬體連接配接4.2、編譯AliOS Things5、使用SystemView5.1、下載下傳安裝SystemView5.2、配置SystemView5.3、打開SystemView PC軟體5.4、開始采集6、總結開發者支援 3.2、J-Link 仿真器
J-Link是德國SEGGER公司推出基于JTAG的仿真器。操作友善、連接配接友善、簡單易學,是學習開發嵌入式開發最好最實用的開發工具。
如何用SystemView分析AliOS Things1、SystemView簡介2、基礎知識3、物料清單3.1、HaaS100 硬體3.2、J-Link 仿真器4、案例實作4.1、硬體連接配接4.2、編譯AliOS Things5、使用SystemView5.1、下載下傳安裝SystemView5.2、配置SystemView5.3、打開SystemView PC軟體5.4、開始采集6、總結開發者支援 4、案例實作
4.1、硬體連接配接
将HaaS100 SWDIO、SWCLK和地GND共3根線與J-Link仿真器連接配接。
HaaS引腳編号 | HaaS引腳說明 | J-link引腳說明 | J-link引腳編号 |
41 | SWCLK | CLK | 9 |
42 | SWDIO | TMS | 7 |
40 | GND | | 8 |
硬體連接配接圖:
如何用SystemView分析AliOS Things1、SystemView簡介2、基礎知識3、物料清單3.1、HaaS100 硬體3.2、J-Link 仿真器4、案例實作4.1、硬體連接配接4.2、編譯AliOS Things5、使用SystemView5.1、下載下傳安裝SystemView5.2、配置SystemView5.3、打開SystemView PC軟體5.4、開始采集6、總結開發者支援 4.2、編譯AliOS Things
AliOS Things最新代碼中預設內建了SystemView的功能,預設是關閉的,隻需要打開Trace工具配置開關就可以使用。
打開方式:
在應用package.yaml 檔案 depends下添加一行- trace: master。
如何用SystemView分析AliOS Things1、SystemView簡介2、基礎知識3、物料清單3.1、HaaS100 硬體3.2、J-Link 仿真器4、案例實作4.1、硬體連接配接4.2、編譯AliOS Things5、使用SystemView5.1、下載下傳安裝SystemView5.2、配置SystemView5.3、打開SystemView PC軟體5.4、開始采集6、總結開發者支援 參考 helloworld簡單示例 中的4.3 編譯下載下傳章節,完成helloworld_demo應用的編譯和下載下傳。
5、使用SystemView
5.1、下載下傳安裝SystemView
下載下傳位址 根據你所用的作業系統下載下傳對應版本的SystemView,然後進行安裝。
5.2、配置SystemView
拷貝SYSVIEW_AliOSThings.txt 檔案到PC機SystemView軟體安裝目錄 C:\Program Files\SEGGER\SystemView\Description下。
SYSVIEW_AliOSThings.txt 檔案路徑:
components/trace/Config/SYSVIEW_AliOSThings.txt
5.3、打開SystemView PC軟體
點選菜單欄Target打開 Recorder Configuration。
如何用SystemView分析AliOS Things1、SystemView簡介2、基礎知識3、物料清單3.1、HaaS100 硬體3.2、J-Link 仿真器4、案例實作4.1、硬體連接配接4.2、編譯AliOS Things5、使用SystemView5.1、下載下傳安裝SystemView5.2、配置SystemView5.3、打開SystemView PC軟體5.4、開始采集6、總結開發者支援 參考下圖配置參數資訊,其中 Address 資訊可以從開機序列槽log 中擷取:
例如開機序列槽log中顯示:_SEGGER_RTT:0x34683a1c。
如何用SystemView分析AliOS Things1、SystemView簡介2、基礎知識3、物料清單3.1、HaaS100 硬體3.2、J-Link 仿真器4、案例實作4.1、硬體連接配接4.2、編譯AliOS Things5、使用SystemView5.1、下載下傳安裝SystemView5.2、配置SystemView5.3、打開SystemView PC軟體5.4、開始采集6、總結開發者支援 5.4、開始采集
點選菜單欄Target打開 Start Recording
如何用SystemView分析AliOS Things1、SystemView簡介2、基礎知識3、物料清單3.1、HaaS100 硬體3.2、J-Link 仿真器4、案例實作4.1、硬體連接配接4.2、編譯AliOS Things5、使用SystemView5.1、下載下傳安裝SystemView5.2、配置SystemView5.3、打開SystemView PC軟體5.4、開始采集6、總結開發者支援 界面顯示效果如下:
如何用SystemView分析AliOS Things1、SystemView簡介2、基礎知識3、物料清單3.1、HaaS100 硬體3.2、J-Link 仿真器4、案例實作4.1、硬體連接配接4.2、編譯AliOS Things5、使用SystemView5.1、下載下傳安裝SystemView5.2、配置SystemView5.3、打開SystemView PC軟體5.4、開始采集6、總結開發者支援 6、總結
通過上面的操作,相信你已經學會了使用AliOS Things上的SystemView分析工具了。我們可以通過SystemView看到OS内部的運作情況。
無論是對于學習作業系統知識,還是對作業系統進行性能分析,使用SystemView分析工具都是最好的選擇。借助SystemView 這款工具能夠縮短調試時間,提高開發效率。
開發者支援
如需更多技術支援,可加入釘釘開發者群,或者關注微信公衆号。
如何用SystemView分析AliOS Things1、SystemView簡介2、基礎知識3、物料清單3.1、HaaS100 硬體3.2、J-Link 仿真器4、案例實作4.1、硬體連接配接4.2、編譯AliOS Things5、使用SystemView5.1、下載下傳安裝SystemView5.2、配置SystemView5.3、打開SystemView PC軟體5.4、開始采集6、總結開發者支援 更多技術與解決方案介紹,請通路HaaS官方網站
https://haas.iot.aliyun.com 。