【发布时间】:2020-02-10 10:32:53
【问题描述】:
我对内核空间、用户空间、内核线程、用户线程有点困惑。是否可以认为内核支持的内核线程是在内核空间运行的?
Java,
`Thread t = new Thread(new Runnable...)`,
这个名为 't' 的线程在 Linux 中被称为轻量级进程(内核线程)。是否运行在内核态?
【问题讨论】:
-
没有。它是运行 JVM 的用户进程的一部分。名为
t的线程是一个Java 对象,它与内核创建的用户空间线程关联。t本身在Linux中不是轻量级进程,轻量级进程也不是内核线程。 -
谢谢,我能不能这么认为:轻量级进程是运行在用户空间的内核级线程。而且我看到Linux文档说Linux使用轻量级进程来实现posix标准线程。所以我说
t是Linux中的轻量级进程。我的意思是“轻量级进程(内核线程)”是指轻量级进程是由内核调度的,所以它是内核级线程。
标签: java linux operating-system pthreads