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

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

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

相关推荐
代码AC不AC3 小时前
【Linux】计算机的基石:从冯·诺依曼体系结构到操作系统管理
linux·操作系统·冯诺依曼体系结构
序属秋秋秋13 小时前
《Linux系统编程之进程环境》【环境变量】
linux·运维·服务器·c语言·c++·操作系统·系统编程
阿巴~阿巴~16 小时前
自定义协议设计与实践:从协议必要性到JSON流式处理
服务器·网络·网络协议·json·操作系统·自定义协议
西电研梦20 小时前
利好消息!!西电今年考研可能报考人数跌破1.5万??
考研·研究生·西安电子科技大学·26考研
vx_dmxq2111 天前
【PHP考研互助系统】(免费领源码+演示录像)|可做计算机毕设Java、Python、PHP、小程序APP、C#、爬虫大数据、单片机、文案
java·spring boot·mysql·考研·微信小程序·小程序·php
海棠蚀omo3 天前
解读Linux进程的“摩尔斯电码”:信号产生的原理与实践,掌控进程的生死时速
linux·操作系统
立志成为大牛的小牛5 天前
数据结构——五十二、散列函数的构造(王道408)
数据结构·笔记·程序人生·考研·算法
ZhengEnCi6 天前
P3H0-Python-os模块完全指南-操作系统接口与文件路径处理利器
python·操作系统
立志成为大牛的小牛6 天前
数据结构——四十四、平衡二叉树的删除操作(王道408)
数据结构·学习·程序人生·考研·算法
立志成为大牛的小牛6 天前
数据结构——四十九、B树的删除与插入
数据结构·学习·程序人生·考研·算法