chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

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

嵌入式Linux調(diào)試變得更容易

星星科技指導(dǎo)員 ? 來(lái)源:嵌入式計(jì)算設(shè)計(jì) ? 作者:Mohammed Billoo ? 2022-07-04 09:15 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

調(diào)試嵌入式 Linux 非常復(fù)雜,即使是最有經(jīng)驗(yàn)的嵌入式系統(tǒng)開發(fā)人員也面臨許多挑戰(zhàn)。但是,專門支持嵌入式 Linux 的可視化跟蹤診斷工具可以大大簡(jiǎn)化這項(xiàng)工作。

我的任務(wù)是開發(fā)一個(gè)定制的 Linux 驅(qū)動(dòng)程序來(lái)使用外部設(shè)備流式傳輸?shù)臄?shù)據(jù)。雖然 Linux 內(nèi)核有一些原生機(jī)制來(lái)確保驅(qū)動(dòng)程序的功能是正確的,但調(diào)試和評(píng)估性能遠(yuǎn)非簡(jiǎn)單。這就是為什么我決定測(cè)試新的跟蹤工具(例如支持嵌入式 Linux 的 Tracealyzer)是否以及如何幫助我,從分析驅(qū)動(dòng)程序和中斷處理程序,到檢查用戶空間應(yīng)用程序和編譯器選項(xiàng)。

我將跟蹤工具與基于 Yocto 的 Linux 發(fā)行版一起使用,首先在板支持包上構(gòu)建自定義層以啟用開源LTTng庫(kù)。這為作為 Linux 系統(tǒng)(包括內(nèi)核)的一部分執(zhí)行驅(qū)動(dòng)程序提供了許多有價(jià)值的觀點(diǎn)。它還讓我對(duì)驅(qū)動(dòng)程序有了更全面的了解,以確保沒有性能瓶頸或確定任何瓶頸的原因。

診斷跟蹤工具還可以幫助發(fā)現(xiàn) IRQ 處理程序中的性能問(wèn)題,而無(wú)需使用可怕的 printk 語(yǔ)句。就我而言,它發(fā)現(xiàn)需要通過(guò) I2C 總線確認(rèn)設(shè)備中斷以防止抖動(dòng)。如果不使用跟蹤工具,這個(gè)隱藏的錯(cuò)誤直到發(fā)布前不久移除無(wú)關(guān)的 printk 調(diào)用時(shí)才會(huì)被發(fā)現(xiàn)或顯現(xiàn)出來(lái)。該工具還揭示了在中斷處理程序中包含 printk 的嚴(yán)重影響。使用跟蹤工具有效地避免了在后期修改驅(qū)動(dòng)程序的需要,這會(huì)導(dǎo)致大量的延誤和成本。

使用跟蹤工具,我還能夠測(cè)試我的假設(shè),即設(shè)置進(jìn)程的 CPU 親和性將如何影響其性能。分析正常和高強(qiáng)度條件下不同執(zhí)行元素之間的交互,顯示了 Linux 內(nèi)核的盡力而為算法。這確定了 Linux 內(nèi)核調(diào)度程序和 iperf 代碼庫(kù)的某些區(qū)域以供進(jìn)一步調(diào)查。

在評(píng)估用戶空間性能時(shí),跟蹤工具可以更加強(qiáng)大。像大多數(shù)嵌入式軟件開發(fā)人員一樣,我開發(fā)針對(duì) Linux 系統(tǒng)的用戶空間應(yīng)用程序。將跟蹤工具的輸出與 LTTng 跟蹤點(diǎn)結(jié)合起來(lái)提供了一種寶貴的方法來(lái)幫助我確定我的應(yīng)用程序的執(zhí)行情況、識(shí)別任何異常行為并提供高級(jí)時(shí)序統(tǒng)計(jì)信息。然后,我可以使用該工具進(jìn)一步解決任何計(jì)時(shí)問(wèn)題并提高應(yīng)用程序的性能。

我還發(fā)現(xiàn)跟蹤工具和 LTTng 庫(kù)的結(jié)合非常強(qiáng)大,可以幫助我快速了解某些編譯器選項(xiàng)對(duì)執(zhí)行浮點(diǎn)計(jì)算的用戶空間應(yīng)用程序性能的影響。通常,這種分析是在應(yīng)用程序完成但應(yīng)用程序性能不佳時(shí)進(jìn)行的,并且可能需要很多時(shí)間。在開發(fā)過(guò)程中使用該工具來(lái)驗(yàn)證軟件時(shí)序幫助我避免了對(duì)性能的影響。

總而言之,我發(fā)現(xiàn) Tracealyzer 等跟蹤工具可以成為發(fā)現(xiàn)隱藏錯(cuò)誤和優(yōu)化嵌入式 Linux 系統(tǒng)性能的強(qiáng)大元素。

諸如用于自上而下探索性分析的高級(jí)概述等功能,包括進(jìn)程交互、進(jìn)程分叉、CPU 使用率、RAM 使用率、I/O 使用率、文件使用率、狀態(tài)機(jī)和用戶定義的指標(biāo),提供了寶貴且直觀的跟蹤視圖,用于顯示細(xì)節(jié),在響應(yīng)性和清晰度方面可擴(kuò)展到大型 Linux 跟蹤。當(dāng)通過(guò)可定制的事件解釋適應(yīng)特定用例時(shí),任何用戶定義的數(shù)據(jù)集(例如間隔和狀態(tài)機(jī))都可以顯示在高度可配置的視圖中。最后,使用開源 LTTng 庫(kù)打開了廣泛的功能來(lái)探索嵌入式 Linux 設(shè)計(jì)的各個(gè)方面,從驅(qū)動(dòng)程序和中斷處理程序到用戶空間應(yīng)用程序和編譯器選項(xiàng)。在開發(fā)過(guò)程中使用這種組合不僅可以提高可見性,而且可以在過(guò)程的早期解決問(wèn)題。從我經(jīng)驗(yàn)豐富的開發(fā)人員的角度來(lái)看,這避免了隱藏的錯(cuò)誤并節(jié)省了項(xiàng)目后期的時(shí)間和成本。

pYYBAGLCP1yAF4lgAACnzn1_cNE933.png

圖1。在評(píng)估自定義 Linux 內(nèi)核(如圖)時(shí),將開源 LTTng 庫(kù)與跟蹤工具結(jié)合使用可以揭示性能問(wèn)題。

poYBAGLCP2WAOCuXAAGPdbbHYkA704.png

圖 2:此垂直跟蹤視圖使用垂直時(shí)間線顯示事件流。它從頂部開始,時(shí)間向下增長(zhǎng)。每列代表系統(tǒng)中的單個(gè)執(zhí)行上下文——通常是任務(wù)或中斷處理程序——列中的矩形顯示特定任務(wù)何時(shí)運(yùn)行。水平標(biāo)簽(左)標(biāo)記記錄的軟件事件。該圖是完全響應(yīng)的,因此放大可以顯示更多細(xì)節(jié)。

審核編輯:郭婷

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

    關(guān)注

    5152

    文章

    19675

    瀏覽量

    317664
  • cpu
    cpu
    +關(guān)注

    關(guān)注

    68

    文章

    11080

    瀏覽量

    217127
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11511

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    Linux嵌入式和單片機(jī)嵌入式的區(qū)別?

    Linux嵌入式與單片機(jī)嵌入式在多個(gè)方面存在顯著的區(qū)別,以下是詳細(xì)的比較和歸納: 一、基本概念 1. Linux嵌入式: 定義:將
    發(fā)表于 06-20 09:46

    嵌入式適合自學(xué)嗎?

    構(gòu)、時(shí)鐘系統(tǒng)、電源管理、存儲(chǔ)映射等。 嵌入式必學(xué)技術(shù)點(diǎn)↓↓↓ 1硬件與軟件的結(jié)合 2實(shí)時(shí)性要求與資源限制 3跨領(lǐng)域知識(shí)整合 4調(diào)試與測(cè)試?yán)щy 二)缺乏專業(yè)指導(dǎo) 1)容易走彎路:自學(xué)嵌入
    發(fā)表于 04-27 09:54

    泰克MDO32示波器在嵌入式系統(tǒng)調(diào)試中的關(guān)鍵技術(shù)分析

    隨著現(xiàn)代電子技術(shù)的飛速發(fā)展,嵌入式系統(tǒng)在各個(gè)領(lǐng)域的應(yīng)用日益廣泛,從消費(fèi)電子到工業(yè)控制,再到汽車電子和航空航天等。嵌入式系統(tǒng)的復(fù)雜性不斷增加,使得調(diào)試工作變得尤為重要。泰克MDO32示波
    的頭像 發(fā)表于 03-19 13:51 ?337次閱讀
    泰克MDO32示波器在<b class='flag-5'>嵌入式</b>系統(tǒng)<b class='flag-5'>調(diào)試</b>中的關(guān)鍵技術(shù)分析

    怎么嵌入式linux下控制dlp?

    請(qǐng)問(wèn)怎么嵌入式linux 下控制dlp,有沒有支持
    發(fā)表于 03-03 07:02

    ARM架構(gòu)嵌入式主板特點(diǎn)

    嵌入式主板可以理解為嵌入在設(shè)備中用于控制和數(shù)據(jù)處理的CPU板,也就是設(shè)備的“大腦”。當(dāng)主板嵌入到設(shè)備中,當(dāng)然對(duì)主板的體積和功耗會(huì)有嚴(yán)格的要求(嵌入
    的頭像 發(fā)表于 12-31 16:03 ?1025次閱讀
    ARM架構(gòu)<b class='flag-5'>嵌入式</b>主板特點(diǎn)

    掌握調(diào)試技巧是攻克嵌入式學(xué)習(xí)難點(diǎn)的關(guān)鍵

    就來(lái)說(shuō)說(shuō)嵌入式開發(fā)常見問(wèn)題解決方法。 一、問(wèn)題復(fù)現(xiàn) 穩(wěn)定復(fù)現(xiàn)問(wèn)題才能正確的對(duì)問(wèn)題進(jìn)行定位、解決以及驗(yàn)證。一般來(lái)說(shuō),越容易復(fù)現(xiàn)的問(wèn)題越容易解決。 1.1 模擬復(fù)現(xiàn)條件 有的問(wèn)題存在于特定的條件下,只需要模擬出現(xiàn)問(wèn)題的條件即
    的頭像 發(fā)表于 11-18 11:10 ?849次閱讀
    掌握<b class='flag-5'>調(diào)試</b>技巧是攻克<b class='flag-5'>嵌入式</b>學(xué)習(xí)難點(diǎn)的關(guān)鍵

    什么是嵌入式操作系統(tǒng)?

    的戰(zhàn)斗機(jī)。 FreeRTOS:它適合那些資源有限的小型設(shè)備,就像小巧的瑞士軍刀。 QNX:它以安全和可靠著稱,很多汽車和工業(yè)系統(tǒng)都用它,可以說(shuō)是EOS中的沃爾沃。 Linux:雖然它不是專門為嵌入式
    發(fā)表于 11-08 15:07

    嵌入式 Linux 操作系統(tǒng)配置

    隨著物聯(lián)網(wǎng)(IoT)和智能設(shè)備的快速發(fā)展,嵌入式系統(tǒng)在各個(gè)領(lǐng)域扮演著越來(lái)越重要的角色。Linux因其開源、靈活和穩(wěn)定的特性,成為嵌入式系統(tǒng)的首選操作系統(tǒng)。 1. 硬件選擇 在配置嵌入式
    的頭像 發(fā)表于 11-06 10:22 ?1205次閱讀

    【北京迅為】i.mx8mm嵌入式linux開發(fā)指南第四篇 嵌入式Linux系統(tǒng)移植篇第六十九章uboot移植

    【北京迅為】i.mx8mm嵌入式linux開發(fā)指南第四篇 嵌入式Linux系統(tǒng)移植篇第六十九章uboot移植
    的頭像 發(fā)表于 10-22 14:46 ?1167次閱讀
    【北京迅為】i.mx8mm<b class='flag-5'>嵌入式</b><b class='flag-5'>linux</b>開發(fā)指南第四篇 <b class='flag-5'>嵌入式</b><b class='flag-5'>Linux</b>系統(tǒng)移植篇第六十九章uboot移植

    嵌入式系統(tǒng)的未來(lái)趨勢(shì)有哪些?

    會(huì)更加模塊化和集成化,允許容易的硬件和軟件的切換和升級(jí)。這會(huì)提高系統(tǒng)的可維護(hù)性和可擴(kuò)展性,會(huì)使得系統(tǒng)能夠適應(yīng)不斷在變化的應(yīng)用需求。 5. 生態(tài)可持續(xù)性與環(huán)保材料 在嵌入式系統(tǒng)的設(shè)計(jì)以及在制造過(guò)程中
    發(fā)表于 09-12 15:42

    嵌入式linux開發(fā)的基本步驟有哪些?

    嵌入式Linux開發(fā)是一個(gè)復(fù)雜的過(guò)程,涉及到硬件選擇、操作系統(tǒng)移植、驅(qū)動(dòng)開發(fā)、應(yīng)用程序開發(fā)等多個(gè)方面。以下是嵌入式Linux開發(fā)的基本步驟,以及每個(gè)步驟的說(shuō)明。 硬件選擇 在開始
    的頭像 發(fā)表于 09-02 09:11 ?1255次閱讀

    嵌入式linux開發(fā)板怎么操作

    嵌入式Linux開發(fā)板是一種基于Linux操作系統(tǒng)的嵌入式系統(tǒng)開發(fā)平臺(tái)。它通常包括一個(gè)處理器、內(nèi)存、存儲(chǔ)器、輸入/輸出接口等硬件組件,以及一個(gè)基于L
    的頭像 發(fā)表于 09-02 09:09 ?803次閱讀

    嵌入式linux開發(fā)板芯片的工作原理

    嵌入式Linux開發(fā)板是一種基于Linux操作系統(tǒng)的嵌入式系統(tǒng)開發(fā)平臺(tái),它廣泛應(yīng)用于工業(yè)控制、智能家居、智能交通、醫(yī)療設(shè)備等領(lǐng)域。 嵌入式
    的頭像 發(fā)表于 09-02 09:07 ?823次閱讀

    【出版發(fā)行】嵌入式系統(tǒng)原理與開發(fā)——基于RISC-V和Linux系統(tǒng)

    【出版發(fā)行】嵌入式系統(tǒng)原理與開發(fā)——基于RISC-V和Linux系統(tǒng)
    的頭像 發(fā)表于 07-26 08:36 ?678次閱讀
    【出版發(fā)行】<b class='flag-5'>嵌入式</b>系統(tǒng)原理與開發(fā)——基于RISC-V和<b class='flag-5'>Linux</b>系統(tǒng)

    專家力薦|《嵌入式系統(tǒng)原理與開發(fā)——基于RISC-V和Linux系統(tǒng)》新書發(fā)售

    當(dāng)前,嵌入式系統(tǒng)已成為智能設(shè)備的核心之一,RISC-V+Linux的開源力量為嵌入式系統(tǒng)注入強(qiáng)大的創(chuàng)新動(dòng)力。作為中國(guó)RISC-V軟硬件生態(tài)領(lǐng)導(dǎo)者,賽昉科技與業(yè)界專家合作推出《嵌入式系統(tǒng)
    的頭像 發(fā)表于 07-24 08:20 ?1107次閱讀
    專家力薦|《<b class='flag-5'>嵌入式</b>系統(tǒng)原理與開發(fā)——基于RISC-V和<b class='flag-5'>Linux</b>系統(tǒng)》新書發(fā)售