操作系统精髓读书笔记

1 用户级线程相对于内核级线程3个优点?

1)所有线程数据结构都在一个进程的用户地址空间中,线程切换不需要内核模式特权,因此进程不需要为了管理线程而切换到内核模式,进而节省了两次状态转换开销。

2)可以选择适用应用程序的调度算法,例如、轮转调度算法、优先级调度算法

3)用户线程可在任何系统中运行,不需要对底层内核进行修改。线程库是供所有应用程序共享的一组应用级函数。

2 用户级线程相对于内核级线程2个缺点

1) 许多系统调用会引起阻塞,因此 用户级线程执行一个系统调用时,不仅会阻塞这个线程,也会阻塞进程中的所有线程。

2)在纯粹的用户级线程中多线程程序不能利用多处理技术。内核一次只把一个进程分配给一个处理器,因此,一个进程中只有一个线程可以执行。

3 当一个用户级线程执行一个系统调用时,不仅该线程被阻塞,进程中所有线程都被阻塞。原因是?

对于用户级线程来说,一个进程的线程结构对操作系统是不可见的,而操作系统的调度是以进程为单位的。

原文地址:https://www.cnblogs.com/zhaopengcheng/p/10567572.html