openEuler22.03-LTS中top命令中的hi值比centos7高

📅 2026/8/14 17:23:36
openEuler22.03-LTS中top命令中的hi值比centos7高
在openEuler22.03-LTS系统上运行网络相关业务使用top命令查看cpu使用情况发现top命令显示出来的hi的数值比centos7的要高。centos7上的hi数值为0但是在openEuler系统上为20多如下图:centos7:openEuler22.03-LTS:hi值代表的是系统执行硬中断的占用百分比。排查两个系统的/proc/interrupts文件发现两个系统中的该文件中都显示有处理网络中断那么正常来说hi值不应该为0。通过strace命令追踪top的调用流程发现top显示的hi值是统计的/proc/stat文件通过对比两个系统的/proc/stat文件发现openEuler22.03-LTS中的/proc/stat文件中的代表硬中断的执行时间的字段数值不为0而centos7中的数值为0。所以top命令中统计的hi值在两个系统上差异较大。根据上面排查的结果怀疑该问题是由于centos7系统没有统计系统处理硬中断时间导致的。统计系统硬中断的执行时间信息需要在编译内核的时候打开CONFIG_IRQ_TIME_ACCOUNTING配置经过对比centos7和openEuler22.03-LTS两个系统下的/boot/config-xxx文件发现centos7没有打开而openEuler打开了。后续将centos7中的该配置打开之后重新编译内核发现centos7和openEuler22.03-LTS中的top命令的hi值相差不大确定该问题是内核配置问题而不是系统问题