华硕笔记本终极性能优化指南:G-Helper完整配置教程
2026/8/9 6:30:30
在操作系统中,为了方便访问irq_cpustat_t中的字段,定义了一些宏。例如:
#define ksoftirqd_task(cpu) __IRQ_STAT((cpu), __ksoftirqd_task) #define nmi_count(cpu) __IRQ_STAT((cpu), __nmi_count)这些宏都使用了__IRQ_STAT()宏,它接收特定 CPU 的 ID 和要引用的字段名作为参数。
__IRQ_STAT()宏的实现__IRQ_STAT()宏的实现根据系统是对称多处理(SMP)还是单处理器有所不同:
#ifdef CONFIG_SMP #define __IRQ_STAT(cpu, member) (irq_stat[cpu].member) #else #define __IRQ_STAT(cpu, member)((void)(cpu), irq_stat[0].member) #endif在 SMP 系统中,该宏直接计算为对应 CPU 的数组元素的相应成员;在单处理器系统中,它简化为数组元素 0 的相应成员。