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

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

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

相关推荐
烧冻鸡翅QAQ8 小时前
考研408笔记——数据结构
数据结构·笔记·考研
YangYang9YangYan12 小时前
大专生考研深度解析与科学备考指南
大数据·考研
序属秋秋秋2 天前
《Linux系统编程之进程基础》【进程状态】
linux·运维·c语言·c++·笔记·操作系统·进程状态
Shang180989357262 天前
THC63LVD1027D一款10位双链路LVDS信号中继器芯片,支持WUXGA分辨率视频数据传输THC63LVD1027支持30位数据通道方案
人工智能·考研·信息与通信·信号处理·thc63lvd1027d·thc63lvd1027
“愿你如星辰如月”2 天前
Linux:进程间通信
linux·运维·服务器·c++·操作系统
元亓亓亓2 天前
考研408--组成原理--day3--数字电路(补)&加减乘除
考研·408·组成原理·门电路·alu
共享家95273 天前
高级IO-poll
开发语言·操作系统·io
蒙奇D索大3 天前
【计算机网络】考研408 | 数据链路层的“安全卫士”:探秘检错编码之奇偶校验码
经验分享·笔记·计算机网络·考研·改行学it
元亓亓亓4 天前
考研408--数据结构--day2--顺序表及其增删改查
数据结构·考研·顺序表·408
元亓亓亓4 天前
考研408--计算机网络--day4--组帧&差错控制&可靠传输
计算机网络·考研·数据链路层