何谓用户级线程和内核支持线程?
时间: 2023-12-29 22:59:24 浏览: 100
用户级线程和内核支持线程是两种不同的线程实现方式。
用户级线程是由用户程序自己管理的线程,即线程的创建、撤销、调度等操作都在用户程序中完成,而操作系统对这些线程是不可见的。用户级线程的优点是轻量级、快速,不需要系统调用,可以在不同的操作系统上移植,但是缺点是不能利用多处理器的优势,因为线程的调度和并发控制都在用户程序中完成。
内核支持线程是由操作系统内核管理的线程,即线程的创建、撤销、调度等操作都是由内核完成的。内核支持线程的优点是可以利用多处理器的优势,线程的调度和并发控制由内核完成,可以更好地支持并发编程,但缺点是线程的创建、撤销等操作需要进行系统调用,开销较大,而且不易移植到不同的操作系统上。
相关问题
何谓内核支持线程和用户级线程
内核支持线程和用户级线程是线程的两种实现方式。
内核支持线程是由操作系统内核直接支持和管理的线程。每个内核支持线程都有自己的线程控制块(TCB),操作系统可以直接对其进行调度和管理。内核级线程的优点是可以充分利用多核处理器的并行性,因为内核级线程可以在不同的核上并行执行。然而,内核级线程的缺点是线程的创建、销毁和切换都需要操作系统的介入,开销较大。
用户级线程是由应用程序自己实现和管理的线程。用户级线程的创建、销毁和切换都由应用程序自己控制,操作系统对其一无所知。用户级线程的优点是创建和切换线程的开销较小,因为这些操作不需要操作系统的介入。然而,用户级线程的缺点是无法充分利用多核处理器的并行性,因为所有的用户级线程都运行在同一个内核级线程上。
总结起来,内核支持线程由操作系统内核直接管理,可以充分利用多核处理器的并行性,但开销较大;用户级线程由应用程序自己管理,开销较小,但无法充分利用多核处理器的并行性。
何谓原语?何谓原子操作?
原语是指内核或微核提供给外部调用的过程或函数,它是一段用机器指令编写的完成特定功能的程序,在执行过程中不允许中断。而原子操作是指在多进程(线程)的操作系统中不能被其他进程(线程)打断的操作,也就是说,原子操作是中断安全的。原子操作具有原子性,即在执行期间不允许分割,要么执行完所有步骤,要么一步也不执行,不可能只执行所有步骤的一个子集。
阅读全文