nob*_*beh 9 multithreading multicore language-design
有3个是在线程调度的实现通常由操作系统内核进行使用的线程模型.其中之一是hybrid(M:N
)模型,其中一些N
应用程序线程映射到M
内核线程,以便它们可以使用最多的M
处理器.这种模式有利有弊.其中一个优点是基于此模型的语言将引入语言级调度程序实现,该实现负责管理和调度应用程序级线程.
首先阅读: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个内核线程,因此它们可以使用多达 M个处理器.