什么是用户线程和内核线程?

什么是用户线程和内核线程?

我知道线程是什么,也知道它们是如何工作的,但我对什么是用户线程和一个内核线程都是关于他们被允许做什么。

您能否解释一下用户线程可以做什么以及内核线程可以做什么?

答案1

内核线程有时称为 LWP(轻量级进程),由内核创建和调度。创建内核线程通常比创建用户线程更昂贵,并且直接创建内核线程的系统调用与平台密切相关。

用户线程通常由线程库创建,调度由线程库本身管理(在用户模式下运行)。所有用户线程都属于创建它们的进程。用户线程的优点是它们是可移植的。在使用多处理器系统时可以看到主要区别,完全由线程库管理的用户线程不能在不同的 CPU 上并行运行,尽管这意味着它们可以在单处理器系统上正常运行。由于内核线程使用内核调度程序,因此不同的内核线程可以在不同的 CPU 上运行。许多系统以不同的方式实现线程,

多对一线程模型将多个用户进程直接映射到一个内核线程,内核线程可视为主进程。一对一线程模型将每个用户线程直接映射到一个内核线程,此模型允许在多处理器系统上进行并行处理。每个内核线程可视为由调度程序管理的 VP(虚拟进程)。

来源: 答案

您还可以在维基百科第 3 章 - 3 进程、内核线程、用户线程和纤程中找到信息:

线

相关内容