完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
本帖最后由 michael_llh 于 2016-9-8 14:19 编辑
进程的诞生: 1.进程0和进程1 这两个进程是系统的特殊进程,进程0是由内核一个一个条目填写相应的进程控制块,手工构建出来的,进程1的话是在内核当中fork进程0得到的,之后的进程2是属于用户底下的进程了。所以进程0和进程1是属于内核当中的进程。 2.vfork 和 fork的区别 参考: http://blog.csdn.net/jianchi88/article/details/6985326 3.进程的消亡 程序是一个静态的东西,比如我们常说的比如a.c是这样的一个文件,里面是一些实实在在是文本内容,而进程是一个动态的过程,是一个程序的一次执行过程。 (1)程序的消亡有两种方式,分别是正常终止和异常终止。正常终止就是说我们执行到了return 0或者是exit(1),然后程序结束,这属于正常的程序的生命周期。那么对于异常终止的话就是程序的非正常终止,比如说别人告诉他一个信号让他终止,他就死掉了。比如说当我们在终端执行一个程序的时候,是循环在一个死循环当中,我们是通过ctrl + c来强制关闭它,这个时候它就不是执行到我们的return或者是exit然后才结束的,而是我们给了一刀把他杀了,非正常死亡。 (2)程序在运行时需要消耗系统资源(包括我们说的内存消耗和IO(串口,端口)的消耗)那么当进程终止的时候理应完全释放这些资源,如果没有释放的话,那么对于这些资源来说,系统就没有办法进行重新回收利用了,也就是说这些资源在本次开机运行的过程中就浪费掉了,这也就是说当我们运行一段时间之后我们的电脑就会很卡,甚至死机。 来看下几个进程的概念: 僵尸进程: (1)子进程先于父进程结束 Linux系统设计的时候,当每一个进程结束的时候,操作系统会回收所有的子资源,当我们在程序中没有对资源进行释放的话进程结束会被系统回收。操作系统进行自动回收的时候并没有回收干净,只回收了进程中消耗的内存和进程ID,并没有回收进程本身占用的8KB,主要是task_struct和栈内存。 进程本身的8KB系统不能回收,需要别人进行辅助回收,这个人就是该进程的父进程,也就是儿子闯下的祸有父亲来收拾。 那么当子进程结束的时候,父进程并没有马上对子进程进行回收资源,在这一段时间内子进程称之为僵尸进程。 (2)子进程中的task_struct和栈空间以外其余的内存都已经清理干净。 (3)父进程可以使用wait和waitpid来显示回收子进程,也就是说当我们没有显示的调用这两个函数来回收子进程的相关内容的话,系统会自动让父进程去回收的。 孤儿进程: (1)父进程先于子进程结束,这个名字其实很形象,很好记(只不过这里忽略了妈妈就是了),父进程就相当于父亲,先于儿子死掉了,那么儿子就成为了孤儿,就是我们这里说的孤儿进程。 (2)Linux系统中,所有的孤儿进程都自动成为一个特殊进程(进程1,也就是system init进程)的子进程。(PS:ubuntu当中使用1990这个进程代替了进程1,也就是进程的PID可能对于不同的系统是不同的,但是对于进程肯定是system init)。 |
|
相关推荐
2 个讨论
|
|
如果能结合例子就更好了。
|
|
|
|
|
|
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
「含关键代码」基于AM3352/AM3354/AM3359的Linux开发案例分享
4874 浏览 0 评论
87366 浏览 0 评论
【高手问答】如何做到精通linux技术?资深工程师带你突破难点
4687 浏览 2 评论
3581 浏览 2 评论
解读Linux :先从创建一个文件夹用来存放jdk压缩文件开始
2459 浏览 0 评论
1962浏览 3评论
这是i.mx6ull的关于usb的宏定义,能解释下这些宏定义的意思
1329浏览 1评论
1239浏览 1评论
求解:aarch64交叉编译工具已经安装成功,环境变量已经配置,怎么将系统架构切换为ARM的架构
1306浏览 0评论
电脑和虚拟机可以互ping,电脑和开发板也可以互ping,但是虚拟机和开发板ping不通是什么原因
1215浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-1 12:23 , Processed in 1.119596 second(s), Total 74, Slave 57 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号