孤儿进程:一个父进程退出,而它的一个或多个子进程还在运行,那么那些子进程将成为孤儿进程。孤儿进程将被init进程(进程号为1)所收养,并由init进程对它们完成状态收集工作。 僵尸进程:一个进程使用fork创建子进程,如果子进程退出,而父进程并没有调用wait或waitpid获取子进程的状态信息,那 ...
分类:
编程语言 时间:
2017-02-15 14:50:33
阅读次数:
242
僵尸进程:子进程终止了,但是父进程没有回收子进程的资源PCB。使其成为僵尸进程 孤儿进程:父进程先与子进程结束了,使得子进程失去了父进程,这个时候子进程会被1号进程init进程领养,成为孤儿进程 为了防止上面两种情况,我们应当在父进程结束之前一定要回收子进程的所有资源 所以出现了wait和waitp ...
分类:
系统相关 时间:
2017-02-12 12:41:10
阅读次数:
252
主要函数: fork 用于创建一个新进程 exit 用于终止进程 exec 用于执行一个程序 wait 将父进程挂起,等待子进程结束 getpid 获取当前进程的进程ID nice 改变进程的优先级 孤儿进程: 如果一个子进程的父进程先于子进程结束,子进程就成为一个孤儿进程,他由init进程收养,成 ...
分类:
系统相关 时间:
2017-02-10 19:54:23
阅读次数:
217
1. 守护、孤儿和僵尸进程 (1)守护进程 ①守护进程(daemon)是生存期长的一种进程。它们常常在系统引导装入时启动,在系统关闭时终止。 ②所有守护进程都以超级用户(用户ID为0)的优先权运行。 ③守护进程没有控制终端 ④守护进程的父进程都是init进程(1号进程)。 (2)孤儿进程:父进程先结 ...
分类:
系统相关 时间:
2017-01-30 11:47:42
阅读次数:
244
操作系统OS好比一个公司,公司的CEO就是init进程。 任何一个子进程都有父进程,就好比任何一个人都有爹。 这里假定子进程为小明,父进程为小明的爸爸。 init进程作为OS公司的CEO,是小明的爷爷(注:小明的爸爸很可能是CEO的第N代后人,N>=1,这里假定N=1)。 任何一个进程在退出之后都会 ...
分类:
系统相关 时间:
2017-01-12 21:17:02
阅读次数:
271
维基百科的解释中: 在操作系统领域中,孤儿进程指的是在其父进程执行完成或被终止 后仍继续运行的一类进程。 在类UNIX系统中,僵尸进程是指完成执行(通过 exit 系统调用,或运行时发生致命错误或收到终止信号所致)但在操作系统的进程表中仍然有一个表项(进程控制块PCB),处于"终止状态 "的进程。 ...
分类:
系统相关 时间:
2016-12-22 19:56:19
阅读次数:
200
学习了8.1-8.6。 1.每个进程都有个进程标识符,pid,是唯一独一无二的。但是,如果一个进程终止了,那么他的进程标识符就可以再次使用了。但是为了防止弄混,使用实现延迟重用算法。 2.进程ID为0的进程为系统进程,内核的一部分,常常被称为交换进程。进程ID为1是init进程。他是孤儿进程的新父进 ...
分类:
其他好文 时间:
2016-12-20 20:35:00
阅读次数:
157
这两天干的活,是让楼主写一个supervisor的listener,用来监控supervisor所管理子进程的状态,当子进程异常退出时,楼主写的这个listener将会触发报警。在这里总结下supervisor的知识吧 先说说supervisor是干什么的吧? supervisor这东西,其实就是用 ...
分类:
其他好文 时间:
2016-11-25 00:23:34
阅读次数:
250
其实有时想想linux内核的设计也蕴含着很多人生哲学,在linux中有这么几个特殊进程中,我们一开始见到它们的名字可能还会觉得很诧异,但在了解完了原理后,我们仔细想想,这样的命名也不无道理!下面我就给大家分别介绍一下这三种特殊的进程! 1.孤儿进程 如果父进程先退出,子进程还没退出那么子进程将被 托 ...
分类:
系统相关 时间:
2016-11-02 07:59:51
阅读次数:
345
说起fork就不得不提COW(Copy On Write),就是“写时拷贝”。也就是当fork发生时,子进程根本不会去拷贝父进程的内存页面,而是与父进程共享。当子进程或父进程需要修改一个内存页面时,Linux就将这个内存页面复制一份给修改者,然后再去修改,这样从用户的角度看,父子进程根本就没有共享什 ...
分类:
系统相关 时间:
2016-10-17 13:20:32
阅读次数:
182