91在线观看视频-91在线观看视频-91在线观看免费视频-91在线观看免费-欧美第二页-欧美第1页

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

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

3天內不再提示

嵌入式Linux調試變得更容易

星星科技指導員 ? 來源:嵌入式計算設計 ? 作者:Mohammed Billoo ? 2022-07-04 09:15 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

調試嵌入式 Linux 非常復雜,即使是最有經驗的嵌入式系統開發人員也面臨許多挑戰。但是,專門支持嵌入式 Linux 的可視化跟蹤診斷工具可以大大簡化這項工作。

我的任務是開發一個定制的 Linux 驅動程序來使用外部設備流式傳輸的數據。雖然 Linux 內核有一些原生機制來確保驅動程序的功能是正確的,但調試和評估性能遠非簡單。這就是為什么我決定測試新的跟蹤工具(例如支持嵌入式 Linux 的 Tracealyzer)是否以及如何幫助我,從分析驅動程序和中斷處理程序,到檢查用戶空間應用程序和編譯器選項。

我將跟蹤工具與基于 Yocto 的 Linux 發行版一起使用,首先在板支持包上構建自定義層以啟用開源LTTng庫。這為作為 Linux 系統(包括內核)的一部分執行驅動程序提供了許多有價值的觀點。它還讓我對驅動程序有了更全面的了解,以確保沒有性能瓶頸或確定任何瓶頸的原因。

診斷跟蹤工具還可以幫助發現 IRQ 處理程序中的性能問題,而無需使用可怕的 printk 語句。就我而言,它發現需要通過 I2C 總線確認設備中斷以防止抖動。如果不使用跟蹤工具,這個隱藏的錯誤直到發布前不久移除無關的 printk 調用時才會被發現或顯現出來。該工具還揭示了在中斷處理程序中包含 printk 的嚴重影響。使用跟蹤工具有效地避免了在后期修改驅動程序的需要,這會導致大量的延誤和成本。

使用跟蹤工具,我還能夠測試我的假設,即設置進程的 CPU 親和性將如何影響其性能。分析正常和高強度條件下不同執行元素之間的交互,顯示了 Linux 內核的盡力而為算法。這確定了 Linux 內核調度程序和 iperf 代碼庫的某些區域以供進一步調查。

在評估用戶空間性能時,跟蹤工具可以更加強大。像大多數嵌入式軟件開發人員一樣,我開發針對 Linux 系統的用戶空間應用程序。將跟蹤工具的輸出與 LTTng 跟蹤點結合起來提供了一種寶貴的方法來幫助我確定我的應用程序的執行情況、識別任何異常行為并提供高級時序統計信息。然后,我可以使用該工具進一步解決任何計時問題并提高應用程序的性能。

我還發現跟蹤工具和 LTTng 庫的結合非常強大,可以幫助我快速了解某些編譯器選項對執行浮點計算的用戶空間應用程序性能的影響。通常,這種分析是在應用程序完成但應用程序性能不佳時進行的,并且可能需要很多時間。在開發過程中使用該工具來驗證軟件時序幫助我避免了對性能的影響。

總而言之,我發現 Tracealyzer 等跟蹤工具可以成為發現隱藏錯誤和優化嵌入式 Linux 系統性能的強大元素。

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

pYYBAGLCP1yAF4lgAACnzn1_cNE933.png

圖1。在評估自定義 Linux 內核(如圖)時,將開源 LTTng 庫與跟蹤工具結合使用可以揭示性能問題。

poYBAGLCP2WAOCuXAAGPdbbHYkA704.png

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

審核編輯:郭婷

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 嵌入式
    +關注

    關注

    5149

    文章

    19659

    瀏覽量

    317356
  • cpu
    cpu
    +關注

    關注

    68

    文章

    11076

    瀏覽量

    216998
  • Linux
    +關注

    關注

    87

    文章

    11509

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    Linux嵌入式和單片機嵌入式的區別?

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

    嵌入式適合自學嗎?

    構、時鐘系統、電源管理、存儲映射等。 嵌入式必學技術點↓↓↓ 1硬件與軟件的結合 2實時性要求與資源限制 3跨領域知識整合 4調試與測試困難 二)缺乏專業指導 1)容易走彎路:自學嵌入
    發表于 04-27 09:54

    泰克MDO32示波器在嵌入式系統調試中的關鍵技術分析

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

    怎么嵌入式linux下控制dlp?

    請問怎么嵌入式linux 下控制dlp,有沒有支持
    發表于 03-03 07:02

    ARM架構嵌入式主板特點

    嵌入式主板可以理解為嵌入在設備中用于控制和數據處理的CPU板,也就是設備的“大腦”。當主板嵌入到設備中,當然對主板的體積和功耗會有嚴格的要求(嵌入
    的頭像 發表于 12-31 16:03 ?1002次閱讀
    ARM架構<b class='flag-5'>嵌入式</b>主板特點

    掌握調試技巧是攻克嵌入式學習難點的關鍵

    就來說說嵌入式開發常見問題解決方法。 一、問題復現 穩定復現問題才能正確的對問題進行定位、解決以及驗證。一般來說,越容易復現的問題越容易解決。 1.1 模擬復現條件 有的問題存在于特定的條件下,只需要模擬出現問題的條件即
    的頭像 發表于 11-18 11:10 ?847次閱讀
    掌握<b class='flag-5'>調試</b>技巧是攻克<b class='flag-5'>嵌入式</b>學習難點的關鍵

    什么是嵌入式操作系統?

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

    嵌入式 Linux 操作系統配置

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

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

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

    嵌入式系統的未來趨勢有哪些?

    會更加模塊化和集成化,允許容易的硬件和軟件的切換和升級。這會提高系統的可維護性和可擴展性,會使得系統能夠適應不斷在變化的應用需求。 5. 生態可持續性與環保材料 在嵌入式系統的設計以及在制造過程中
    發表于 09-12 15:42

    嵌入式linux開發的基本步驟有哪些?

    嵌入式Linux開發是一個復雜的過程,涉及到硬件選擇、操作系統移植、驅動開發、應用程序開發等多個方面。以下是嵌入式Linux開發的基本步驟,以及每個步驟的說明。 硬件選擇 在開始
    的頭像 發表于 09-02 09:11 ?1233次閱讀

    嵌入式linux開發板怎么操作

    嵌入式Linux開發板是一種基于Linux操作系統的嵌入式系統開發平臺。它通常包括一個處理器、內存、存儲器、輸入/輸出接口等硬件組件,以及一個基于L
    的頭像 發表于 09-02 09:09 ?791次閱讀

    嵌入式linux開發板芯片的工作原理

    嵌入式Linux開發板是一種基于Linux操作系統的嵌入式系統開發平臺,它廣泛應用于工業控制、智能家居、智能交通、醫療設備等領域。 嵌入式
    的頭像 發表于 09-02 09:07 ?814次閱讀

    【出版發行】嵌入式系統原理與開發——基于RISC-V和Linux系統

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

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

    當前,嵌入式系統已成為智能設備的核心之一,RISC-V+Linux的開源力量為嵌入式系統注入強大的創新動力。作為中國RISC-V軟硬件生態領導者,賽昉科技與業界專家合作推出《嵌入式系統
    的頭像 發表于 07-24 08:20 ?1098次閱讀
    專家力薦|《<b class='flag-5'>嵌入式</b>系統原理與開發——基于RISC-V和<b class='flag-5'>Linux</b>系統》新書發售
    主站蜘蛛池模板: 色婷婷激情五月综合 | 午夜宅男视频 | 免费一级特黄 欧美大片 | 激情五月婷婷在线 | 五月婷婷激情综合网 | 天天干天天爱天天操 | 午夜影院性 | 天堂在线视频网站 | 草逼网址 | 色激情网 | 成人午夜免费视频毛片 | 久久亚洲欧美成人精品 | 久久综合色婷婷 | 鸥美三级 | 久久美女免费视频 | 欧美高清milf在线播放 | 天堂在线.www资源在线观看 | 在线免费成人网 | 2021精品综合久久久久 | 免费一级在线观看 | 在线色色视频 | 亚洲欧美综合一区二区三区四区 | 国产高清精品自在久久 | 五月情婷婷 | 爱看精品福利视频观看 | 中文字幕不卡免费高清视频 | 四虎影院美女 | 中文一区二区 | 日本在线黄色 | 亚洲精品久久久久午夜 | 午夜视频www | 国产精品看片 | 亚洲乱码一区二区三区在线观看 | 午夜精品视频在线看 | 黄色在线视频网 | 一级黄色录像毛片 | 欧美性受一区二区三区 | 欧美成人26uuu欧美毛片 | 日本69xxx18hd | 三级天堂 | 四虎4hu永久在线观看 |