操作系统【OS】线程的分类

  • 线程的实现分为两类 = 用户级线程(User-Level Thread, ULT) + 内核级线程(Kernel-Level Thread, KLT)

|----|-----------------------------------------------------------------------------------------------|----------------------------------------------------------|-----------|
| | ULT | KLT | 组合模式 |
| 定义 | 由用户级线程库函数来完成整个线程的管理和调度【库函数负责】 | 线程对应的TCB放在OS里,线程的管理和调度由OS负责【OS负责】 | 内核支持的用户线程 |
| 模型 | **++多对一++**模型(多个用户对应一个线程) | **++一对一++**模型(一个用户对应一个线程) | 多对多模型 |
| 优点 | * TCB由用户级线程库函数维护,可用于不支持线程技术的OS * 无需用户态和内核态的切换,速度特别快 | * 某个内核线程发起系统调用被阻塞,不会影响到其他内核线程的运行 * 内核能同时调度同一进程中的多个线程并行执行 | |
| 缺点 | * 一个线程发起了系统调用而阻塞,那进程所包含的用户线程都不能执行了 * 在多线程执行时,每个线程得到的时间片少,执行慢 * 📢线程与线程之间不用内核切换,但是跨进程的话就需要内核参与 | * 同一进程的线程切换,需要从用户态转到核心态,系统开销大 | |

相关推荐
博界IT精灵2 小时前
浮点数的规格化
考研
charlie1145141915 小时前
Cinux · musl 静态移植:对齐 Linux ABI、铺初始栈,以及一个被 SMAP 拦下的潜伏 bug
linux·开发语言·c++·操作系统·开源项目
布莱克60516 小时前
软中断和硬中断的区别
开发语言·操作系统
killerbasd21 小时前
总结 8.27
考研
噜~噜~噜~2 天前
操作系统笔记-2.3.2.1 进程互斥的软件实现方法
笔记·操作系统
冬奇Lab3 天前
开源项目第198期:Omarchy — DHH 打造的「意见鲜明」Linux 桌面系统
人工智能·开源·操作系统
AIkk863 天前
医学考研西综306优质网课视频推荐|全科目选课指南
考研
2501_929807253 天前
考研初试专业课140+总分400+重庆邮电大学801信号与系统考研经验重邮,电子信息与通信工程,真题,大纲,参考书,博睿泽信息通信Jenny。
考研·信息与通信·信号处理·通信·电子信息
噜~噜~噜~4 天前
操作系统笔记-2.2.6 多处理机调度
笔记·操作系统
charliejohn4 天前
考研政治 马原 (专题1) 政经计算题
考研