0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

OpenHarmony常用工具汇总

OpenHarmony技术社区 来源:OST开源开发者 2023-01-04 12:02 次阅读

OpenHarmony 开发过程中我们一定会面对各种开发问题,比如如何看 log,如何看系统状态,如何调试,等等。本章内容就是总结一些常用工具。

交叉编译工具

源码下载:OH3.1 用的 5.5,OH3.2 升级了 5.7,两者都能用:

wgethttps://releases.linaro.org/components/toolchain/binaries/latest-5/arm-linux-gnueabi/gcc-linaro-5.5.0-2017.10-x86_64_arm-linux-gnueabi.tar.xz
解压、配置好路径(这个就不细讲了,可自行百度)。

GDB

源码下载:

wgethttps://mirrors.ustc.edu.cn/gnu/gdb/gdb-8.2.1.tar.gz
交叉编译:
//1.解压工具链
tarxvfgcc-linaro-5.5.0-2017.10-x86_64_arm-linux-gnueabi.tar.xz

//2.解压gdb
tarzxvfgdb-8.2.1.tar.gz

//3.进入gdb目录编译
cdgdb-8.2.1
mkdirbuild
cdbuild
../configureCC="/{gcc的路径}/gcc-linaro-5.5.0-2017.10-x86_64_arm-linux-gnueabi/bin/arm-linux-gnueabi-gcc"CXX="/{gcc的路径}/gcc-linaro-5.5.0-2017.10-x86_64_arm-linux-gnueabi/bin/arm-linux-gnueabi-g++"LDFLAGS=-static--target=arm-linux-gnueabi--host=arm-linux-gnueabi
make-j16
//4.build目录下gdb/gdb就是可执行文件,可以通过filegdb查看文件类型和内容
filegdb/gdb
gdb/gdb:ELF32-bitLSBexecutable,ARM,EABI5version1(GNU/Linux),staticallylinked,forGNU/Linux2.6.32,BuildID[sha1]=a20d29b723426dbe06a1b17f66292090f916ad21,withdebug_info,notstripped

注意:编译后的 gdb 即可传输到设备上运行。

Valgrind

源码下载:

wgethttps://sourceware.org/pub/valgrind/valgrind-3.18.0.tar.bz2
交叉编译:
//1.解压gdb
tarjxvfvalgrind-3.18.0.tar.bz2

//2.进入valgrind目录编译
cdvalgrind

//3.防止编译文件污染源码,建立目录
mkdirbuild

//4.进入编译目录
cdbuild
../configureCC="/{gcc的路径}/gcc-linaro-5.5.0-2017.10-x86_64_arm-linux-gnueabi/bin/arm-linux-gnueabi-gcc"CXX="{gcc的路径}/gcc-linaro-5.5.0-2017.10-x86_64_arm-linux-gnueabi/bin/arm-linux-gnueabi-g++"CPP="/home/wshi/arm-toolchain/gcc-linaro-5.5.0-2017.10-x86_64_arm-linux-gnueabi/bin/arm-linux-gnueabi-cpp"--target=arm-linux-gnueabi--host=arm-linux-gnueabi--prefix=/bin

make-j16

//5.build目录下coregrind/valgrind就是可执行文件,可以通过file命令查看文件类型和内容
filecoregrind/valgrind
coregrind/valgrind:ELF32-bitLSBexecutable,ARM,EABI5version1(SYSV),dynamicallylinked,interpreter/lib/ld-linux.so.3,forGNU/Linux2.6.32,BuildID[sha1]=3963fa836d42fa54e0cf3c580792b777267f97eb,withdebug_info,notstripped
filememcheck/memcheck-arm-linux
memcheck/memcheck-arm-linux:ELF32-bitLSBexecutable,ARM,EABI5version1(SYSV),staticallylinked,BuildID[sha1]=72fa59dfe03270faca9929d6658cb67379ad546d,withdebug_info,notstripped

//6.由于是DynamicLink,所以需要发送glib库到板子上,
hdc_std-t192.168.137.105:10178filesend/{gcc的路径}/gcc-linaro-5.5.0-2017.10-x86_64_arm-linux-gnueabi/arm-linux-gnueabi/libc/lib/ld-2.21.so/data/local/tmp
hdc_std-t192.168.137.105:10178filesend/{gcc的路径}/gcc-linaro-5.5.0-2017.10-x86_64_arm-linux-gnueabi/arm-linux-gnueabi/libc/lib/libc-2.21.so/data/local/tmp

//7.发送valgrind到板子上,并发送memcheck-arm-linux到板子,放到/bin/lib/valgrind目录,如没有需要自己建目录,这样valgrind就能用了

WuKong 命令

简介:OpenHarmony 稳定性测试自动化工具,通过模拟用户行为,对 OpenHarmony 系统及应用进行稳定性压力测试。

约束条件:WuKong 在 OS3.2 系统版本后开始预置使用;OH3.1 需要自己手动编译,命令为:

./build.sh--product-namerk3568--build-targetwukong
编译后发到板子上运行:
wukongexec-s10-i1000-a0.28-t0.72-c100
对应命令解释:

8ee1a84c-8be3-11ed-bfe3-dac502259ad0.png

Top 命令

实时查看 linux 进程运行情况的命令:

第一行:进程统计,238 个进程,一个正在执行(R,top),237 个休眠的

第二行:CPU 信息,4 核(400%),5% 用户层在用,9% 系统层在用

第三行:具体显示每个进程信息

包括:

PID:进程号

USER:进程持有用户

PR:进程优先级,数值越小优先级越高

NI:进程 Nice 值,用作优先级的修正值

VIRT:进程使用的虚拟内存

RES:进程常驻内存

SHR:进程使用的共享内存

S:进程状态:S,sleep;R,running;I,idle;

%MEM:进程使用的内存占用比

TIME+:进程占用的 CPU 总时长

ARGS:进程名

Tasks:238total,1running,237sleeping,0stopped,0zombie
Mem:2011776Ktotal,1169240Kused,842536Kfree,39624704buffers
Swap:1048572Ktotal,337664Kused,710908Kfree,316444Kcached
400%cpu5%user0%nice9%sys386%idle0%iow0%irq0%sirq0%host
PIDUSERPRNIVIRTRESSHRS[%CPU]%MEMTIME+ARGS
512system-3-8120M32M31MS5.61.647:09.18render_service
32337root2005.7M3.3M2.7MR4.30.10:02.96top
459dsoftbus2003.9G184M32MS2.69.313:11.60softbus_server
444hidumper_se+20013M6.2M6.0MS2.60.312:53.76hidumper_servic
480wifi2005.5M2.2M2.2MS1.60.115:57.09wifi_hal_service
1548100075-15649M122M94MS0.66.21:57.38com.ohos.screenlock
31536root200000I0.30.01:12.82[kworker/0:0-events_freezable]
2090200100155-15637M132M84MS0.36.71:06.40com.ohos.settings
2049200100350-20643M122M77MS0.36.21:01.51ohos.samples.bttest
1532100040-20519M29M27MS0.31.40:31.95com.ohos.mms
1483100050-20516M26M24MS0.31.30:33.25com.ohos.settingsdata
436wifi20017M9.0M9.0MS0.30.40:12.66wifi_manager_se
233logd2007.4M4.0M2.2MS0.30.23:12.76hilogd
32338root0-20000I0.00.00:00.00[kworker/0:0H-mmc_complete]
32336root2005.4M2.4M2.1MS0.00.10:00.05sh-
32335root0-20000I0.00.00:00.00[kworker/3:1H]
32331root0-20000I0.00.00:00.00[kworker/2:1H]
32327root2005.4M3.1M2.8MS0.00.10:00.06sh-
32306rootRT0000S0.00.00:00.01[irq/93-dwc3]
32302root200137M3.9M3.4MS0.00.10:00.19hdcd

Pmap命令

通过 Top 命令,我们发现 dsoftbus 虚拟内存很大,我们可以使用 Pmap 命令查看具体信息。

#pmap-x431
431:softbus_server
AddressKbytesPSSDirtySwapModeMapping
0000d0008000-----[anon30526]
0000f000132880rw---[anon30526]
000300008000-----[anon30525]
00032000132880rw---[anon30525]
000530008000-----[anon30524]
00055000132880rw---[anon30524]
000760008000-----[anon30523]
00078000132880rw---[anon30523]
000990008000-----[anon30522]
0009b000132880rw---[anon30522]
000bc0008000-----[anon30521]
00bd1000132880rw---[anon30440]
00bf20008000r----sa_main
00bf400012000r-x--sa_main
00bf70004004r----sa_main
00bf80004440rw---sa_main
00c020004040400rw---[anonmusl]
01dd20008000-----[anon30309]
01dd4000132880rw---[heap]
01df500016603723641288rw---[heap]
01f9b0008000-----[anon30308]

Strace 命令

源码下载:

wgethttps://strace.io/files/5.18/strace-5.18.tar.xz

交叉编译:

mkdirbuild
cdbuild
../configureCC="/home/wshi/workspace/master-1014/prebuilts/gcc/linux-x86/arm/gcc-linaro-7.5.0-arm-linux-gnueabi/bin/arm-linux-gnueabi-gcc"CXX="/home/wshi/workspace/master-1014/prebuilts/gcc/linux-x86/arm/gcc-linaro-7.5.0-arm-linux-gnueabi/bin/arm-linux-gnueabi-g++"--target=arm-linux-gnueabi--host=arm-linux-gnueabi

运行:

strace-f-t-p431-otrace.strace

Meminfo

运行:

#cat/proc/meminfo
MemTotal:2010244kB
MemFree:1158060kB
MemAvailable:1412556kB
Buffers:1384kB
Cached:291748kB
SwapCached:0kB
Active:41976kB
Inactive:525356kB
Active(anon):372kB
Inactive(anon):311204kB
Active(file):41604kB
Inactive(file):214152kB
Active(purg):0kB
Inactive(purg):0kB
Pined(purg):0kB
Unevictable:37224kB
Mlocked:0kB
SwapTotal:1048572kB
SwapFree:1048572kB
Dirty:20kB
Writeback:0kB
AnonPages:311424kB
Mapped:210128kB
Shmem:37436kB
KReclaimable:39700kB
Slab:100004kB
SReclaimable:39700kB
SUnreclaim:60304kB
KernelStack:17664kB
PageTables:7380kB
NFS_Unstable:0kB
Bounce:0kB
WritebackTmp:0kB
CommitLimit:2053692kB
Committed_AS:5178768kB
VmallocTotal:262930368kB
VmallocUsed:28216kB
VmallocChunk:0kB
Percpu:832kB
Skb:0kB
CmaTotal:16384kB
CmaFree:0kB
GLTrack:-kB
ZspageUsed:12kB
识别方法:
8efb72e0-8be3-11ed-bfe3-dac502259ad0.png

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 源码
    +关注

    关注

    8

    文章

    572

    浏览量

    28583
  • 命令
    +关注

    关注

    5

    文章

    638

    浏览量

    21848
  • 工具
    +关注

    关注

    3

    文章

    305

    浏览量

    27430
  • OpenHarmony
    +关注

    关注

    23

    文章

    3272

    浏览量

    15159

原文标题:OpenHarmony常用工具汇总

文章出处:【微信号:gh_834c4b3d87fe,微信公众号:OpenHarmony技术社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    51单片机常用工具

    ;&nbsp;[hide]<a href="http://down.elecfans.com/bbs/z/51单片机常用工具包.rar"
    发表于 08-07 13:54

    嵌入式C编程经验:全局变量和常用工具软件【转】

    嵌入式C编程经验:全局变量和常用工具软件【转】
    发表于 07-31 13:17

    数字信号处理(DSP)常用工具箱汇

    数字信号处理(DSP)常用工具箱汇
    发表于 12-07 16:47

    单片机常用工具(光盘中带的)

    单片机常用工具(光盘中带的)
    发表于 05-30 15:24

    单片机常用工具集合

    单片机常用工具集合,内附说明。
    发表于 06-03 14:44

    LabVIEW 常用工具包集锦

    `LabVIEW 常用工具包集锦 ,或许正是你想要的。。。`
    发表于 12-11 12:20

    Fibocom 常用工具分享

    Fibocom 常用工具分享串口调试器SSCOM,链接如下*附件:串口调试器SSCOM.rarUSB转TTL串口监测工具-CH340驱动,链接如下*附件:CH340驱动(USB串口驱动)_XP_WIN7共用.rarUSB转TTL串口监测
    发表于 12-01 15:32

    单片机常用工具

    单片机常用工具
    发表于 10-13 06:16

    电工常用工具的使用技巧

    电工常用工具的使用技巧 扳手的使用  活络扳手又叫活扳手,是一种旋紧或拧松有角螺丝钉或螺母的工具。电工常用的有200、250、300mm三种,使
    发表于 11-20 15:46 1758次阅读

    MATLAB 常用工具

    电子发烧友网站提供《MATLAB 常用工具箱.rar》资料免费下载
    发表于 01-06 10:45 14次下载

    常用工具软件

    电子发烧友网站提供《常用工具软件.rar》资料免费下载
    发表于 10-14 10:59 11次下载

    Java常用工具

    Java常用工具类。
    发表于 11-06 11:21 1次下载

    Linux(ubuntu)常用工具

    本文档内容介绍了基于Linux(ubuntu)常用工具,供参考
    发表于 04-17 16:15 23次下载

    电工常用工具仪表的使用

    电工常用工具仪表的使用说明。
    发表于 03-18 11:48 21次下载

    修理电机常用工具和设备

    修理电机常用工具和设备有哪些?下面就跟小编一起来看看吧!
    的头像 发表于 07-20 09:50 6311次阅读