对Linux进程的理解

在本科期间学习过进程,网上也有很多关于进程的知识,但对于进程到底是什么一直没有让我满意的解答(以下截图来自网络,感觉对进程理解有问题,说得也很虚)。

但今天找到这个博文感觉挺符合我的胃口:http://blog.csdn.net/yuqiang_ee_android/article/details/16889257

 

  • 进程的本质

进程是Linux内核提供的一个环境(资源分配的基本单位),包括:

(1)进程控制块(用于操作系统对进程的管理)。

(2)虚拟内存(分为好几段:正文段、数据段、BBS段、堆栈段等等)。

(3)其他内核资源(打开的文件等等)。

 

  • 进程和可执行文件的关系

前面说了,进程有正文段和数据段等,这些都是从磁盘上的可执行文件加载而来(可以通过size命令查看可执行文件分段信息)。

所以:可执行程序为进程提供必要的代码和数据等。

 

  • 进程和线程的关系

有很多关于 进程和线程的区别及联系 的文章,但大部分和我的理解不一样。以下是我的个人理解。

(1)进程提供了环境,为谁提供?答案就是线程。进程提供资源,线程干活。

(2)进程是资源分配的基本单位,线程是CPU调度的基本单位。(有人说线程是进程的实体,我不知该怎么理解)

(3)进程创建后默认就有一个初始线程存在,以后在该进程中创建的线程都会共享进程提供的环境。

 

转载于:https://www.cnblogs.com/Zkqq/p/6832386.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值