在线程调度实现中使用three个线程模型,通常由OS内核完成。其中之一是混合(M:N
)模型,其中一些N
应用程序线程映射到M
内核线程,以便它们可以使用最多M
个处理器。这种模式有利有弊。其中一个优点是基于此模型的语言将引入语言级调度程序实现,该实现负责管理和调度应用程序级线程。
答案 0 :(得分:7)
首先阅读:http://www.kegel.com/c10k.html#1:1
Linux使用从内核2.6(NPTL Native Posix线程库)开始的1:1线程模型,而今天几乎所有操作系统都转移到此模型:
一旦Linux拥有M:N模型(这是2.4 NGPT),但1:1通常更优越。
M:N模型的最大问题是:
其中一个是混合(M:N)模型,其中应用程序的一些N个线程映射到一些M个可用处理器。
小修正 - N个应用程序线程映射到M个内核线程,因此它们可以使用 up 到M个处理器。