Linux线程简单理解

线程:是操作系统能够进行运算调度的最小单位。 它被包含在进程之中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。
在一个程序里的一个执行路径就叫做线程。线程是一个进程内部的控制序列。一切进程至少有一个执行线程。线程在进程内部运行,本质是进程地址空间内运行。在Linux系统中,在cpu眼里,看到的PCB都有比传统的进程更加轻量化。
通过进程虚拟地址空间,可以看到进程大部分资源,将进程资源合理分配给每个执行流,就形成了线程执行流。

线程为了让程序更能充分利用多核cpu资源。

创建一个新的进程,相当于开了一个新的厂子,成本比较高。(增加健壮性)。
创建一个新的线程,相当于在原厂子的基础上新增了一条生产线,成本比较低。

每次创建一个新的进程,就会分配一个新的虚拟地址空间(复制pcb)
每次创建一个新的线程,线程共用原来的虚拟地址空间。

线程是运行在进程之中的,一个进程包含着若干个线程。
线程进程都是pcb表示的,一个pcb表示线程也表示进程。

进程:资源的管理(管理内存,管理打开的文件…)
线程:调度和执行(和进程类似,也是抢占式的调度)

透过进程虚拟地址空间,就可以看到进程的大部分资源,将进程资源合理分配给每个执行流,就形成了线程执行流。

线程的优点

  • 创建一个新的线程的代价要比创建一个新的进程小的多(虚拟地址空间不用复制)
  • 与进程之间的切换相比,线程之间的切换需要
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值