多核CPU的任务分配是操作系统做的还是硬件自己分配的?
本帖最后由 Edesigner. 于 2018-10-18 13:51 编辑另外如果CPU是8核,但线程只有两个在跑,那么另外的6个核是不是就闲着? 操作系统自动维护,假如是两个线程,他会在8个CPU里面动态调整,并不是固定在两个CPU跑。当然也可以手动指定CPU
我说的是linux下 一个线程只能在一个核心上跑,但是一个核心可以跑多个线程; 线程在哪个核心上跑是操作系统分配的 在linux kernel中有线程的分配机制,好像叫SMP。可以通过代码绑定某个线程只在某个cpu上调度。 shell.albert 发表于 2018-10-18 13:47
在linux kernel中有线程的分配机制,好像叫SMP。可以通过代码绑定某个线程只在某个cpu上调度。 ...
定死了,应用软件换到另外一个系统就可能跑不起来了。 windows下也是可以指定自己创建的线程在哪个CPU里面运行的。 确实是闲着,所以无论是哪个操作系统,都会有CPU使用率这种东东。
页:
[1]