我使用的是8核的cpu,目前只有2个核在跑,怎样调整中断,使8核都跑满...

如题…

自己写的中断通常都至绑定到一个核,不然中断线程要是在各个核之间跳来跳去 是有问题的

其实我想问的就是,怎样绑定一个中断号到一个核,linux下可以echo 10 >/proc/irq/61/smp_affinity ,但QNX下是怎么搞的。。

可以用这个函数ThreadCtl
配合这个参数_NTO_TCTL_RUNMASK

如果是只是运行一个驱动的话 可以使用 on -C cpunum

这个话题展开起来比较复杂,跟用哪一种方式来处理中断,驱动程序是怎样处理中断的都有关系。

简单地说,在QNX上的正确的做法(通常的做法),是把中断绑定到线程上,然后把线程绑定到特定的CPU上(就是机器人说的_NTO_TCTL_RUNMASK的方法)。