日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

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

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

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

Linux Kernel 6.1 tools目錄全解析?| RK平臺ARM64交叉編譯實戰(zhàn)指南

jf_44130326 ? 來源:Linux1024 ? 作者:Linux1024 ? 2026-04-16 18:42 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

瑞芯微RKARM64平臺嵌入式Linux開發(fā)、內(nèi)核調(diào)試與硬件外設測試中,Linux內(nèi)核源碼自帶的tools目錄是官方標配的工具集合,涵蓋性能分析、設備調(diào)試、系統(tǒng)管理、硬件測試等全場景能力。

本文完整拆解Linux Kernel 6.1 tools目錄所有模塊功能,并給出RK平臺ARM64架構交叉編譯的標準指令,一站式解決內(nèi)核工具使用與編譯問題,適合內(nèi)核開發(fā)者、嵌入式工程師直接參考使用。

一、tools目錄核心定位

toolsLinux內(nèi)核源碼的核心工具目錄,集成了內(nèi)核開發(fā)、系統(tǒng)調(diào)試、性能分析、設備測試、虛擬化管理等各類專用工具,是內(nèi)核開發(fā)者、系統(tǒng)管理員、性能優(yōu)化工程師的必備工具庫,可直接用于開發(fā)調(diào)試與生產(chǎn)環(huán)境運維。

二、tools目錄結構與模塊總覽

Linux Kernel 6.1tools目錄共包含35個功能模塊,各模塊分工明確,核心功能如下:

模塊

主要功能

accounting

系統(tǒng)記賬和資源使用跟蹤工具

arch

架構相關工具和庫

bootconfig

啟動配置工具

bpf

BPF相關工具和實用程序

build

構建系統(tǒng)工具

cgroup

控制組管理工具

counter

計數(shù)器工具

debugging

調(diào)試工具

edid

顯示器EDID數(shù)據(jù)文件

firewire

IEEE-1394流量嗅探工具

firmware

固件管理工具

gpio

GPIO管理和測試工具

hv

Hyper-V客戶端工具

iio

工業(yè)I/O工具

include

共享頭文件

io_uring

io_uring相關工具

kvm

KVM虛擬化工具

laptop

筆記本電腦相關工具

leds

LED管理工具

lib

共享庫

memory-model

內(nèi)存模型定義

objtool

ELF對象分析工具

pci

PCI設備測試工具

pcmcia

PCMCIA工具

perf

性能分析工具

power

電源管理工具

rcu

RCU相關工具

scripts

構建和輔助腳本

spi

SPI設備測試工具

testing

測試工具集

thermal

熱管理工具

time

時間相關工具

tracing

系統(tǒng)跟蹤工具

usb

USB設備測試工具

virtio

virtio相關工具

三、tools目錄全模塊詳細分析

1. accounting

系統(tǒng)資源使用跟蹤工具,用于監(jiān)控和分析進程的資源消耗情況。

?getdelays.c:測量進程等待各種資源的時間

?procacct.c:處理進程會計信息

2. arch

特定架構的工具和庫,當前主要包含x86架構相關工具。

?x86/libx86架構庫文件,包含指令分析工具

3. bootconfig

內(nèi)核啟動參數(shù)管理工具,用于配置內(nèi)核啟動項。

?main.c:啟動配置工具主實現(xiàn)

4. bpf

BPFBerkeley Packet Filter)核心工具集,內(nèi)核核心功能模塊。

?bpftoolBPF程序管理與調(diào)試工具

?runqslower:運行隊列延遲檢測工具

?bpf_asm.cBPF匯編

?bpf_dbg.cBPF調(diào)試工具

5. build

構建系統(tǒng)配套工具與測試組件。

?feature:特性檢測工具

?tests:構建系統(tǒng)測試用例

6. cgroup

控制組資源管理與監(jiān)控工具,用于cgroup資源管控。

7. counter

系統(tǒng)計數(shù)器管理、監(jiān)控工具。

8. debugging

內(nèi)核問題診斷、調(diào)試工具集,用于定位解決內(nèi)核故障。

9. edid

顯示器EDID配置文件,定義不同分辨率顯示器參數(shù)。

?包含800x600.S1024x768.S1920x1080.S等分辨率文件

10. firewire

IEEE-1394FireWire)流量嗅探工具,nosy嗅探器用戶端組件。

?decode-fcp.cFireWire控制協(xié)議解碼

?nosy-dump.cFireWire流量捕獲與分析

11. firmware

設備固件處理工具,用于固件格式轉換與管理。

?ihex2fw.cIntel HEX格式轉固件格式

12. gpio

GPIO通用輸入輸出管理、測試工具,嵌入式開發(fā)高頻使用。

?lsgpio.c:列出系統(tǒng)GPIO設備

?gpio-event-mon.c:監(jiān)控GPIO事件

?gpio-hammer.cGPIO壓力測試

?gpio-watch.c:監(jiān)控GPIO狀態(tài)變化

13. hv

Hyper-V虛擬機Linux客戶端工具。

?hv_fcopy_daemon.c:文件復制守護進程

?hv_kvp_daemon.c:鍵值對守護進程

?hv_vss_daemon.c:卷影復制服務守護進程

?lsvmbus:列出VMBus設備

14. iio

工業(yè)I/O設備管理工具。

?lsiio.c:列出系統(tǒng)IIO設備

15. include

tools目錄共享頭文件集合。

?asm:匯編相關頭文件

?linuxLinux內(nèi)核相關頭文件

?nolibc:無庫依賴頭文件

?tools:工具專屬頭文件

?uapi:用戶空間API頭文件

16. io_uring

Linux 5.1引入的高性能I/O接口配套工具。

?liburing.hio_uring庫頭文件

?queue.c:隊列管理

?setup.c:初始化配置

?syscall.c:系統(tǒng)調(diào)用封裝

17. kvm

KVM虛擬化監(jiān)控工具。

?kvm_stat:類top工具,展示KVM運行統(tǒng)計

18. laptop

筆記本電腦專屬工具。

?dslm:數(shù)字傳感器鏈路管理器

?freefall:加速度計磁盤保護程序

19. leds

LED設備管理工具。

?uledmon.cLED狀態(tài)監(jiān)控

20. lib

tools目錄通用共享庫,提供基礎能力支撐。

?api:通用API

?bpfBPF專用庫

?perf:性能分析庫

?subcmd:子命令處理庫

?symbol:符號處理庫

?thermal:熱管理庫

?traceevent:跟蹤事件庫

?通用函數(shù):bitmap.c、list_sort.c、rbtree.c

21. memory-model

內(nèi)存一致性測試模型定義。

?lock.cat:內(nèi)存模型定義文件

22. objtool

ELF對象文件分析、修改工具。

?check.cELF文件檢查

?elf.cELF文件處理

?objtool.c:工具主實現(xiàn)

?orc_dump.cORC unwind信息轉儲

?orc_gen.cORC unwind信息生成

23. pci

PCI設備測試工具。

?pcitest.cPCI設備測試程序

24. pcmcia

PCMCIA設備配套工具。

?crc32hash.cCRC32哈希計算

25. perf

Linux核心性能分析工具,tools目錄最復雜模塊。

核心功能:性能事件采集、系統(tǒng)調(diào)用跟蹤、硬件計數(shù)器監(jiān)控、函數(shù)調(diào)用圖分析、內(nèi)存訪問分析、調(diào)度器行為分析

核心工具

?perf record:記錄性能事件

?perf report:性能數(shù)據(jù)解析

?perf top:實時熱點函數(shù)

?perf stat:性能計數(shù)器統(tǒng)計

?perf trace:系統(tǒng)調(diào)用跟蹤

?perf script:性能數(shù)據(jù)腳本處理

26. power

電源管理工具集。

?acpiACPI工具

?cpupowerCPU電源管理

?pm-graph:電源管理圖形分析

?x86x86專屬工具(turbostat、x86_energy_perf_policy

27. rcu

RCURead-Copy Update)行為分析工具。

?[extract-stall.sh](extract-stall.sh):提取RCU Stall信息

?[rcu-cbs.py](rcu-cbs.py)RCU回調(diào)分析

28. scripts

內(nèi)核構建、輔助執(zhí)行腳本集合。

29. spi

SPI設備測試工具。

?spidev_test.cSPI設備測試

?spidev_fdx.cSPI全雙工測試

30. testing

內(nèi)核測試工具與框架。

?cxlCXL測試

?ktest:內(nèi)核測試框架

?kunit:內(nèi)核單元測試

?memblock:內(nèi)存塊測試

?nvdimm:非易失性內(nèi)存測試

?vsockvsock測試

31. thermal

熱管理監(jiān)控與調(diào)優(yōu)工具。

?lib:熱管理庫

?tmon:熱監(jiān)控調(diào)優(yōu)

?thermometer:溫度捕獲

?thermal-engine:熱監(jiān)控引擎

32. time

時間相關測試工具。

?[udelay_test.sh](udelay_test.sh):微延遲測試

33. tracing

系統(tǒng)實時跟蹤工具。

?rtla:實時延遲分析

34. usb

USB設備測試與共享工具。

?usbip:網(wǎng)絡USB設備共享

?testusb.cUSB設備測試

?ffs-test.c:功能文件系統(tǒng)測試

35. virtio

虛擬化設備接口標準virtio配套工具。

四、tools目錄原生構建與安裝

tools目錄通過Makefile統(tǒng)一管理構建流程,原生本地編譯命令如下:

?make tools/:構建指定工具

?make tools/_install:構建并安裝指定工具

?make tools/all:構建所有工具

?make tools/install:構建并安裝所有工具

?make tools/_clean:清理指定工具編譯產(chǎn)物

?make tools/clean:清理所有工具編譯產(chǎn)物

五、RK平臺ARM64交叉編譯實戰(zhàn)

瑞芯微RK3568/RK3588ARM64平臺,不可使用原生頂層編譯命令,需采用以下標準指令交叉編譯,以GPIO工具為例:

1.編譯前提

?執(zhí)行目錄:Linux Kernel 6.1源碼根目錄

?安裝ARM64交叉編譯工具鏈

Bash
sudo apt install gcc-aarch64-linux-gnu

2. RK平臺標準編譯指令

# 清理舊編譯產(chǎn)物make -C tools/gpio clean CROSS_COMPILE=aarch64-linux-gnu-# 編譯生成ARM64架構GPIO工具make -C tools/gpio CROSS_COMPILE=aarch64-linux-gnu-# 自定義目錄輸出產(chǎn)物make -C tools/gpio install CROSS_COMPILE=aarch64-linux-gnu- DESTDIR=./rk_gpio_output

3.通用編譯模板

tools目錄所有模塊均可套用以下指令:

make-C tools/[模塊名] CROSS_COMPILE=aarch64-linux-gnu-

4.編譯產(chǎn)物

編譯完成后,在tools/gpio/目錄生成可直接在RK開發(fā)板運行的工具:

?lsgpio

?gpio-event-mon

?gpio-hammer

?gpio-watch

wKgZO2ngu1WAEyZjAAAmtOyz8Qg696.png

六、總結

Linux Kernel 6.1tools目錄是內(nèi)核官方提供的全能工具集,覆蓋嵌入式開發(fā)、內(nèi)核調(diào)試、性能分析、硬件測試全場景,在RK ARM64平臺開發(fā)中,必須使用-C進入子目錄+指定交叉編譯器的方式編譯,才能生成適配開發(fā)板的可執(zhí)行文件。

熟練掌握tools目錄的功能與編譯方法,可大幅提升RK平臺內(nèi)核開發(fā)、硬件調(diào)試、系統(tǒng)運維的效率。

附:Linux Kernel 6.1 tools目錄 功能腦圖

wKgZO2ngu1aAQvgQAARSXvKzK3Q764.png

本文適用于瑞芯微RK3568/RK3588ARM64平臺內(nèi)核開發(fā)與調(diào)試,核心編譯指令可直接復制使用。

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

    關注

    135

    文章

    9589

    瀏覽量

    393776
  • Linux
    +關注

    關注

    88

    文章

    11821

    瀏覽量

    219598
  • 交叉編譯
    +關注

    關注

    0

    文章

    38

    瀏覽量

    13056
  • 瑞芯微
    +關注

    關注

    27

    文章

    861

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    入門篇:瑞芯微?RK?平臺編譯工具鏈自動適配原理解析

    在瑞芯微RK系列平臺RK3576/RV1126/RK3588/RV1109等)嵌入式開發(fā)中, 交叉編譯
    的頭像 發(fā)表于 02-11 07:10 ?3567次閱讀
    入門篇:瑞芯微?<b class='flag-5'>RK</b>?<b class='flag-5'>平臺</b><b class='flag-5'>編譯</b>工具鏈自動適配原理<b class='flag-5'>全</b><b class='flag-5'>解析</b>

    初次編譯rk3568(rk3576)Linux 6.1內(nèi)核踩坑記錄:從報錯終止到成功解決的完整流程

    很多剛接觸瑞芯微 rk 系列芯片開發(fā)的小伙伴,在初次編譯基于 Linux 6.1 內(nèi)核的系統(tǒng)時,很容易因為環(huán)境依賴問題卡殼。最近我在編譯
    的頭像 發(fā)表于 02-06 16:47 ?3258次閱讀
    初次<b class='flag-5'>編譯</b><b class='flag-5'>rk</b>3568(<b class='flag-5'>rk</b>3576)<b class='flag-5'>Linux</b> <b class='flag-5'>6.1</b>內(nèi)核踩坑記錄:從報錯終止到成功解決的完整流程

    RK平臺ROS2適配指南:從編譯到運行,手把手搞定嵌入式機器人開發(fā)

    在嵌入式機器人與智能硬件領域,瑞芯微(Rockchip)的 RK356x、RK3588 等 arm64 芯片憑借高性能、低功耗的優(yōu)勢,成為眾多開發(fā)者的首選硬件平臺;而 ROS2(Rob
    的頭像 發(fā)表于 02-06 16:42 ?5639次閱讀
    <b class='flag-5'>RK</b><b class='flag-5'>平臺</b>ROS2適配<b class='flag-5'>全</b><b class='flag-5'>指南</b>:從<b class='flag-5'>編譯</b>到運行,手把手搞定嵌入式機器人開發(fā)

    深入剖析ARM64內(nèi)核關鍵文件:kernel-6.1/arch/arm64/kernel/head.S

    ARM64 架構的 Linux 內(nèi)核開發(fā)中,arch/arm64/kernel/head.S是一個繞不開的關鍵文件—— 它是內(nèi)核啟動早期的 “橋梁”,承接 Bootloader 與
    的頭像 發(fā)表于 02-04 17:35 ?1402次閱讀
    深入剖析<b class='flag-5'>ARM64</b>內(nèi)核關鍵文件:<b class='flag-5'>kernel-6.1</b>/arch/<b class='flag-5'>arm64</b>/<b class='flag-5'>kernel</b>/head.S

    RK平臺Linux IOMMU開發(fā):從原理到實戰(zhàn)

    顯示(VOP)、編解碼(VPU/HEVC)等場景。今天就從原理、驅動、實戰(zhàn)、問題排查、Linux 內(nèi)存管理支撐五個維度,帶大家快速上手 RK 平臺 IOMMU 開發(fā)。
    的頭像 發(fā)表于 02-04 16:24 ?2965次閱讀
    <b class='flag-5'>RK</b><b class='flag-5'>平臺</b><b class='flag-5'>Linux</b> IOMMU開發(fā):從原理到<b class='flag-5'>實戰(zhàn)</b>

    深入RK3588內(nèi)核:rockchip_linux_defconfig的作用與調(diào)試價值

    RK3588 芯片的 Linux 開發(fā)中,有一個文件始終是開發(fā)者繞不開的核心 ——kernel/arch/arm64/configs/rockchip_
    的頭像 發(fā)表于 02-03 15:56 ?1392次閱讀
    深入<b class='flag-5'>RK</b>3588內(nèi)核:rockchip_<b class='flag-5'>linux</b>_defconfig的作用與調(diào)試價值

    調(diào)試RK3588必看!這個臨時設備樹文件,藏著你要的所有配置答案

    RK3588 芯片開發(fā)的小伙伴,肯定在kernel/arch/arm64/boot/dts/rockchip/目錄下見過一個“長名字文件
    的頭像 發(fā)表于 02-03 15:55 ?1605次閱讀
    調(diào)試<b class='flag-5'>RK</b>3588必看!這個臨時設備樹文件,藏著你要的所有配置答案

    保姆級教程!RK3588 Linux6.1?固件簽名完整實現(xiàn)方案(不含rootfs)

    ? ? ? 在嵌入式 Linux 開發(fā)中,固件簽名是保障設備安全的關鍵環(huán)節(jié) —— 它能有效防止惡意固件篡改、非法刷入,從源頭筑牢設備的系統(tǒng)安全防線。最近在 RK3588 平臺Linux6.
    的頭像 發(fā)表于 01-14 17:21 ?2321次閱讀
    保姆級教程!<b class='flag-5'>RK</b>3588 <b class='flag-5'>Linux6.1</b>?固件簽名完整實現(xiàn)方案(不含rootfs)

    技術分享 | RK3506如何交叉編譯frp wireguard

    RK3506擁有著不錯的性價比以及與之相匹配的性能優(yōu)勢,非常適合用來做邊緣計算網(wǎng)關、小型數(shù)據(jù)收集端點等。今天給大家?guī)韮煽顑?nèi)網(wǎng)穿透工具的交叉編譯移植,方便在RK3506上搭建相關應用。
    的頭像 發(fā)表于 12-25 17:29 ?815次閱讀
    技術分享 | <b class='flag-5'>RK</b>3506如何<b class='flag-5'>交叉</b><b class='flag-5'>編譯</b>frp wireguard

    深入剖析ARM64異常處理:開發(fā)者必須掌握的底層核心邏輯

    ARM64架構的開發(fā)領域,異常處理絕非單純的理論知識點,而是直接決定系統(tǒng)穩(wěn)定性、調(diào)試效率和功能實現(xiàn)的關鍵技術。無論是嵌入式開發(fā)、Linux內(nèi)核移植,還是驅動開發(fā)與芯片調(diào)試,理解異常發(fā)生后CPU
    的頭像 發(fā)表于 12-24 07:05 ?1377次閱讀
    深入剖析<b class='flag-5'>ARM64</b>異常處理:開發(fā)者必須掌握的底層核心邏輯

    如何米爾RK3576開發(fā)板上移植EtherCAT Igh

    /gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu/bin/aarch64-none-linux-gnu- ARCH=arm64 rockchip_
    發(fā)表于 09-26 16:02

    【HZ-RK3568開發(fā)板免費體驗】HZ-RK3568開發(fā)板操作系統(tǒng)編譯

    RK_KERNEL_CFG=rockchip_linux_defconfig RK_KERNEL_DTB=kernel/arch/arm64
    發(fā)表于 08-17 09:15

    【HZ-RK3568開發(fā)板免費體驗】3、開啟Linux Kernel RT功能

    /aarch64-none-linux-gnu- make ARCH=arm64 rockchip_linux_defconfig rockchip_rt.config make -C /path/to/SDK/
    發(fā)表于 07-22 14:03

    【HZ-RK3568開發(fā)板免費體驗】03 使用SDK編譯Debian系統(tǒng)并配置

    defconfig arch/arm64/configs/rockchip_linux_defconfig 然后回到SDK根目錄 2.4 開始編譯
    發(fā)表于 07-01 12:08

    RK3576 Android 14.0 SDK開發(fā)指南(第一集)

    kernelkernel源碼在工程中kernel-6.1目錄下 Lunch項說明 一鍵編譯命令 ./build.sh -UKAupSo
    發(fā)表于 05-20 08:43
    清徐县| 台东县| 盈江县| 柳江县| 乐昌市| 玉门市| 丰台区| 城步| 获嘉县| 绥江县| 石棉县| 西充县| 平原县| 茂名市| 尼玛县| 德惠市| 措勤县| 京山县| 正阳县| 武夷山市| 绥化市| 富平县| 江达县| 漠河县| 客服| 新丰县| 汝阳县| 都昌县| 成武县| 宜丰县| 和林格尔县| 新龙县| 溧阳市| 五华县| 故城县| 龙口市| 通城县| 沁阳市| 鄂托克前旗| 泌阳县| 静乐县|