【发布时间】:2016-12-20 17:19:23
【问题描述】:
在 Linux 上,我们有两个物理 CPU(不是多核),一个名为 X 的进程有很多线程。
问题是否可能:X 的一些线程在一个 CPU 上运行,而 X 的其他一些线程同时在另一个 CPU 上运行??
【问题讨论】:
标签: linux multithreading smp
在 Linux 上,我们有两个物理 CPU(不是多核),一个名为 X 的进程有很多线程。
问题是否可能:X 的一些线程在一个 CPU 上运行,而 X 的其他一些线程同时在另一个 CPU 上运行??
【问题讨论】:
标签: linux multithreading smp
搜了一下,有了一些操作系统知识:thread impl的历史和模式。
有:M:N, N:1, 1:1。
在 linux 上,NPTL 是 1:1 模型,1 个线程对应 1 个内核线程。 => 是的,Linux 上一个进程的线程可以在不同的 CPU 上运行。
【讨论】: