首页 > 编程语言 > 详细

进程与线程

时间:2021-08-10 12:31:29      阅读:24      评论:0      收藏:0      [点我收藏+]

 


进程和线程明显的界限就在于:虚拟地址空间的共享和不共享。

Linux没有进程和线程,只有Task。但是Task与Task之间是区别的,当克隆发生时,不同Task之间的最大和最小共享级别不同。

进程是一个资源单元,而线程是一个调度和执行单元。
线程共享进程的资源。
每个进程中至少存在一个内核线程。
一句话概括线程和进程: 你要共享,就用线程;你要独立,就用进程
这种明显的区分,往往是编程语言需要做的事情,方便开发者使用相应的语言特性

执行与调度的基本单位:thread
资源所有权:process
什么是资源呢,就是内存,文件,socket等

进程是资源的容器,包含(一个或)多个线程。 内核调度的基本单位是线程、而非进程。
同一进程下的各个线程共享资源(address space、open files、signal handlers,etc),但寄存器、栈、PC等不共享

 

参考:https://www.zhihu.com/question/44087187

 

 

进程与线程

原文:https://www.cnblogs.com/siqi/p/15122854.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!