91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

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

3天內(nèi)不再提示

如何可視化FreeRTOS任務響應時間

麥克泰技術 ? 來源:麥克泰技術 ? 2023-12-22 11:12 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

高效的開發(fā)基于FreeRTOS的固件需要理解任務、中斷和內(nèi)核之間的交互以及時間序列。

Tracealyzer支持基于FreeRTOS應用的可視化分析,它提供了30多種相互關聯(lián)的視圖,觀測軟件運行時行為。

我們基于一個案例解析Tracealyzer如何幫助用戶解決實際問題。本例中, 用戶在ARM Cortex-M4微控制器上運行了FreeRTOS+TCP/IP+Flash文件系統(tǒng)的應用。系統(tǒng)中包含多個任務,一個Server任務用于響應網(wǎng)絡請求,一個Logger文件緩沖任務。網(wǎng)絡請求的響應時間一直不理想,最近一次構建,響應時間更加惡化。

為了解決響應時間問題,他們比較了兩個版本的源代碼,找不到任何明顯的原因導致響應時間變長。代碼有許多小的變化,但并沒有增加新的功能。因此,用戶決定使用Tracealyzer來比較新舊版本的運行時行為。

在相似的條件下記錄兩個版本的運行過程。使用Actor Statistics Report視圖進行比較 (圖1A和圖1B),視圖中提供了時間統(tǒng)計信息,如CPU使用情況、執(zhí)行次數(shù)、任務優(yōu)先級和響應時間信息。

2b566b06-a077-11ee-8b88-92fbcf53809c.png

圖 1A

2b6e90fa-a077-11ee-8b88-92fbcf53809c.png

圖1B

Statistics Report顯示,新代碼版本中Server任務的響應時間(Response time)增加大約50%。而執(zhí)行時間(Execution time)新版本中僅增長約7%。由此得出的結論,較長響應時間的主要原因一定是其他任務的干擾,但是哪個任務?

為了確定哪些任務干擾了Server任務,單擊Statistics Report中的極端值。跟蹤到主視圖中相應的位置,可以看到更多執(zhí)行細節(jié),打開Tracealyzer的并行實例,可以很容易地比較并發(fā)現(xiàn)差異。

由于Server任務執(zhí)行了多個服務,因此我們添加了兩個用戶事件 (標記為ServerLog)來標記接收和應答請求,如圖2A和2B所示,圖例的縮放級別相同,可以清楚地看到新版本中響應時間更長,Logger任務搶占了Server任務11次,而舊版本中搶占只有6次。

2b80aa7e-a077-11ee-8b88-92fbcf53809c.png

圖2A

2b939936-a077-11ee-8b88-92fbcf53809c.png

圖2B

此外,我們看到Logger任務的優(yōu)先級高于Server任務,因此日志記錄的服務調(diào)用會搶占Server任務。

因此,新版本中似乎添加了新的日志記錄調(diào)用,導致Logger任務更多地干擾Server任務。為了查看記錄的內(nèi)容,我們在日志任務中添加了一個User Event,在跟蹤視圖中顯示所有日志消息??梢钥吹匠薙erver之外的其他任務生成的日志消息,例如ADC_0任務。為了查看向日志任務發(fā)送消息的所有任務,我們使用Tracealyzer的通信流圖,如圖3所示。通信流圖顯示了跟蹤的任務和中斷對消息隊列、信號量和其他內(nèi)核對象執(zhí)行的所有操作,展示了上層應用程序設計以及運行時依賴關系。

2bb7a632-a077-11ee-8b88-92fbcf53809c.png

圖3

在本例中,通信流圖顯示有五個任務發(fā)送日志消息。通過雙擊圖中的LoggerQueue節(jié)點,可以打開Kernel Object History視圖,查看該消息隊列上的所有操作(圖4)。正如預期的那樣,我們看到Logger任務頻繁地接收消息,每次接收一條消息,并且在每個消息之后被阻塞,如Event列中的紅色指示燈所示。

2bd22192-a077-11ee-8b88-92fbcf53809c.png

圖4

應用可能沒有必要將日志消息一條接一條地寫入文件。如果提升Server任務的調(diào)度優(yōu)先級高于Logger任務,那么Server能夠更快地響應,日志消息可以被緩沖在LoggerQueue隊列中,直到Server和其他高優(yōu)先級任務完成,Logger任務恢復執(zhí)行并批量處理所有緩沖消息。

測試的結果如圖5所示。Server任務的最高響應時間現(xiàn)在只有5.4 ms,比早期版本(5.7 ms)還要快,Logger任務收到一條消息后不會立即搶占Server任務,而是在Server完成后批量處理所有掛起的消息。

2bf1475c-a077-11ee-8b88-92fbcf53809c.png

圖5

我們還可以查看消息隊列操作的事件標簽,并且正如預期的那樣,多個xQueueSend調(diào)用,沒有引起阻塞或任務搶占。仍然有一些由A/D轉換任務引起的搶占,但這不再導致Logger任務的額外激活。

問題解決了!更多關于Tracealyzer的技術文檔,請關注BMR微信公號。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 微控制器
    +關注

    關注

    48

    文章

    8389

    瀏覽量

    164687
  • FreeRTOS
    +關注

    關注

    14

    文章

    499

    瀏覽量

    66970
  • 可視化
    +關注

    關注

    1

    文章

    1354

    瀏覽量

    22811
  • 響應時間
    +關注

    關注

    0

    文章

    14

    瀏覽量

    7110

原文標題:如何可視化FreeRTOS任務響應時間?

文章出處:【微信號:麥克泰技術,微信公眾號:麥克泰技術】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    請問freertos可視化調(diào)試中打印任務信息是不是只可以打印一次?

    freertos中,使用可視化調(diào)試打印任務消息,但是打印不全,還只能打印一次,使用IAR自帶的調(diào)試插件看,顯示可視化調(diào)試任務的堆棧頂全是a
    發(fā)表于 05-07 06:16

    基于無線的應急現(xiàn)場可視化協(xié)作系統(tǒng)設計

    應急現(xiàn)場可視化協(xié)作系統(tǒng)基于各種先進的技術,面向城市應急現(xiàn)場處理和協(xié)作問題,提供可靠、快速、完整的城市應急現(xiàn)場可視化協(xié)作系統(tǒng)方案,為應急事件實時上報、應急事件快速響應、應急事件遠程指揮和調(diào)度、應急
    發(fā)表于 07-26 18:10

    可視化MES系統(tǒng)軟件

    ,企業(yè)的生產(chǎn)經(jīng)營將蒙受損失。所以企業(yè)能及時正確地傳達和響應這些生產(chǎn)過程、設備和質量信息。針對上述需求,結合物聯(lián)技術,研究MES系統(tǒng)軟件可視化系統(tǒng),通過部署多個傳感器節(jié)點,利用RFID標簽定位技術,追蹤物料
    發(fā)表于 11-30 19:55

    如何把AD中非可視化區(qū)域物件移到可視化區(qū)域?

    AD中非可視化區(qū)域物件怎么移到可視化區(qū)域???
    發(fā)表于 09-10 05:36

    可視化電子看板系統(tǒng)的崗位需求

    庫存、生產(chǎn)、品質和機臺等運行狀況處于可控狀態(tài)。生產(chǎn)運作高效可視化電子看板系統(tǒng)通過各部門和生產(chǎn)環(huán)節(jié)的緊密合作,可視化、精細化管理,節(jié)省庫存成本、杜絕浪費,包括任何一點材料、人力、時間
    發(fā)表于 10-19 20:07

    Python數(shù)據(jù)可視化

    Python數(shù)據(jù)可視化:網(wǎng)易云音樂歌單
    發(fā)表于 07-19 08:30

    三維可視化的應用和優(yōu)勢

    ,為此三維可視化運維系統(tǒng)登場了?! ∪S可視化的應用  宏觀場景可視化:在特定的環(huán)境中對隨著時間推移而不斷變化的目標實體進行檢測,可以直觀、靈活、逼真的展示所處區(qū)域的情景和環(huán)境,可以快
    發(fā)表于 12-02 11:52

    數(shù)據(jù)可視化在電力行業(yè)的應用前景如何?

    、信息管理和數(shù)據(jù)管理的量化展示,支持變電站多維數(shù)據(jù)的深度挖掘和智能分析。將實際生產(chǎn)業(yè)務無縫集成到平臺上,使日常管理任務標準、自動和企業(yè)智能、專業(yè)管理。案例預覽地址:https://www.hightopo.com/blog/
    發(fā)表于 07-06 07:44

    常見的幾種可視化介紹

    說說常見的幾種可視化一、信息可視化信息可視化就是對抽象數(shù)據(jù)進行直觀視覺呈現(xiàn)的研究,抽象數(shù)據(jù)既包含數(shù)值數(shù)據(jù),也包含非數(shù)值數(shù)據(jù)如文本信息、地圖信息等,它們可通過利用圖形圖像處理、人機交互、人工智能的技術
    發(fā)表于 07-12 07:49

    基于OneNET View 3.0的可視化數(shù)據(jù)監(jiān)測系統(tǒng)的設計資料分享

    姿態(tài)定位制作說明功能說明將維特WT901C姿態(tài)傳感器數(shù)據(jù)通過合宙Air724UG-4G模塊將數(shù)據(jù)傳輸?shù)給nenet云平臺,并建立onenetview可視化界面成果展示可視化成果注:由于采用免費可視化
    發(fā)表于 01-20 06:28

    什么是響應時間

    什么是響應時間      響應時間是指液晶顯示器各像素點對輸入信號反應的速度,即像素由暗轉亮或由亮轉暗所需要的時間(其原理是在液晶分子內(nèi)
    發(fā)表于 05-24 21:53 ?6119次閱讀

    什么是液晶電視的響應時間

    什么是液晶電視的響應時間   響應時間是液晶電視各像素點對輸入信號反應的速度,即像素由暗轉亮或由亮轉暗所需要的時間(其原理是在液晶分子內(nèi)
    發(fā)表于 03-27 13:29 ?4957次閱讀

    AS:可視化的調(diào)試工具--FreeRTOS+Trace

    在AS開發(fā)庫中,除了直接用于程序嵌入的庫和內(nèi)核以外,還有用來調(diào)試的工具。對于FreeRTOS而言,相對的線程和任務調(diào)度是比較難于用普通的設置斷點,進行參數(shù)跟蹤來實現(xiàn)的。因此,一種可視化的調(diào)試工具就被
    的頭像 發(fā)表于 02-09 14:17 ?7943次閱讀

    面板響應時間有什么影響

    響應時間是一個計算機,顯示器成像等多個領域的概念,在網(wǎng)絡上,指從空載到負載發(fā)生一個步進值的變化時,傳感器的響應時間。
    的頭像 發(fā)表于 01-14 14:56 ?4838次閱讀

    進程響應時間是指什么

    進程響應時間是指從發(fā)出請求到收到響應時間間隔,是衡量系統(tǒng)性能和用戶體驗的重要指標之一。在計算機系統(tǒng)中,進程是指一個正在運行的程序實例。當用戶發(fā)出請求,系統(tǒng)會創(chuàng)建一個新的進程來處理該請求。進程
    的頭像 發(fā)表于 11-17 11:31 ?2147次閱讀