2012-01-10 57 views
0

我正在模拟Linux x86-64的qemu。在QEMU虚拟机中,我使用qemu虚拟机内的taskset不按预期方式工作

taskset -c 0 prc1 & taskset -c 1 prc2 & taskset -c 2 prc3 & taskset -c 3 prc4; 

同时发出4点的过程和将它们绑定到四个核(PRC是用于短处理)。但是,我发现一旦他们开始跑步,然后,在之间,一些内核(比如1和2)不执行这些进程,而是闲置或做其他事情。你能建议,这可能是什么原因或改进方式,以便我可以确保流程不会从一个核心迁移到另一个核心。

回答

1

这些进程不是从一个核心迁移到另一个核心。每当他们需要CPU时,他们只会获得你绑定他们的核心。这不会阻止CPU执行其他工作,也不会以某种方式强制进程使用内核,即使它无法运行,也可能是因为它正在等待I/O。