Skip to content

2.7 线程

目录


参考资料:

线程的引入

由于进程的创建,销毁和调度都需要消耗大量的资源,所以引入了线程的概念。

进程的基本属性:

  1. 拥有资源的独立单位
  2. 可独立调度和分派的基本单位

线程的特点:

  1. 并发性:线程是一个基本的 CPU 执行单元(进程被踢下神坛),一个进程可以有多个线程,每个线程都可以并发执行
  2. 拥有资源:线程除了拥有少量自己的必要资源外,还允许多个线程共享同一个进程的资源
  3. 独立性:线程间的独立性比进程间的独立性要小,线程间的独立性体现在线程的调度和分派上,线程的调度和分派是由操作系统内核完成的,而进程的调度和分派是由操作系统内核完成的
  4. 系统开销小:线程的创建,销毁和切换的开销都比进程要小
  5. 支持多处理器系统:可以把一个进程中的多个线程分配到多个处理器上,从而提高系统的并发性。

进程是资源分配的基本单位

线程是 CPU 调度的基本单位

线程的三个状态

和进程类似,线程也有三个状态:执行状态,就绪状态,阻塞状态

TCB

线程控制块 TCB(Thread Control Block)是操作系统内核用于管理线程的数据结构。

包含:

  1. 线程的标识符
  2. 一组寄存器:程序计数器 PC,状态寄存器,通用寄存器
  3. 线程运行状态
  4. 优先级
  5. 线程堆栈
  6. 信号屏蔽:对某些信号进行屏蔽,不接收这些信号
  7. 堆栈指针:

Copyright © 2022 田园幻想乡 浙ICP备2021038778号-1