代码使用的lean源码,只需要用make menuconfig打开perf对应的编译选项即可
1.第一步选择Global build settings
2.第二步选择Kernel build options
3.第三步选择Enable kernel cgroups
4.第四步选择Enable perf_event per-cpu per-container group (cgroup) monitoring
5.第五步回到主界面选择Development
6.第六步选择perf
选择OK,保存直接开始编译
报错了,提示init_disassemble_info函数( too few arguments to function 'init_disassemble_inf)函数的参数不对,由于musl C库版本的更新,这个函数在musl C库里面个数是四个参数,在内核perf工具使用的地方只有三个参数,导致报错了。
我们可以看到,它自己是这样用的,在当前版本确实是4个参数,改成看这样但是报错了,提升我们第四个参数找不到,我就把第四个参数置为了NULL,编译通过了。
简单使用如下:
先查看一下当前版本
执行perf top perf top可以实时查看当前系统进程函数占用率情况
mpstat命令的使用需要编译sysstat工具,mpstat用于查看系统当前cpu占用情况,尤其是多核cpu,非常的好用
1.第一步不晓得这个工具在哪里,直接输入/,就得到具体的位置
2.位置位于Utilities
3.找到sysstat,选择即可
使用如下:
mpstat -P ALL 1 1秒打印1次当前CPU的占用情况, 我的是mtk7628芯片,只有一个核,idle是cpu空闲情况,如果为0,说明我们的cpu被占满了;对于我们路由器产品来说,有硬件加速模块,哪怕千兆性能跑满,cpu也基本处于空闲状态。