有人问我:
- 用户空间线程系统的示例以及 内核空间线程系统。
- native POSIX 线程库是否被视为用户空间的一部分 或内核空间。
- 以及 Java 线程是否在用户空间中完成。
关于所有这些主题有大量信息,但这些具体问题似乎没有直接答案。我希望你能帮助我。
最佳答案
我正在使用此维基百科页面中列出的术语
(我将让您自行确定该术语是否与您的阿拉伯语类(class)相匹配。)
<小时/>Q1: Provide examples of user-space-threaded systems and kernel-space-threaded systems.
现代 Linux 系统支持内核线程。
旧的 Linux 和旧的 Unix 系统不支持内核线程,因此如果您需要线程,则必须完全在用户空间中实现它。旧的 Java“绿色线程”模型是完全在用户空间中实现线程的一个示例。
Q2: Is Native POSIX Thread Library is considered part of user-space or kernel-space.
native POSIX 线程库 (NPTL) 实际上是一个 API。它可以通过多种方式实现。
典型的实现(例如当前的 Linux 实现)使用内核线程;即“用户空间”线程抽象与“内核空间”线程或内核管理的轻量级进程之间存在 1:1 映射。
Q3: Is Java threading is done in user-space.
现代 Java 实现中没有。第一个 JVM 实现使用用户空间线程(也称为绿色线程)。
<小时/>请注意,对于“用户空间”和“内核”线程的真正含义以及 pthreads 和 NPTL 如何适应分类法存在争议;请参阅Is Pthread library actually a user thread solution? .
关于java - 用户空间线程和内核空间线程的示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31098466/