进程通信有如下一些目的:A、数据传输:一个进程需要将它的数据发送给另一个进程,发送的数据量在一个字节到几M字节之间B、共享数据:多个进程想要操作共享数据,一个进程对共享数据的修改,别的进程应该立刻看到。C、通知事件:一个进程需要向另一个或一组进程发送消息,通知它(它们)发生了某种事件(如进程终止时要 ...
分类:
系统相关 时间:
2016-10-24 23:37:27
阅读次数:
232
1、进程简介 2、系统进程信息 3、进程创建 4、进程终止 进程简介 系统启动的第一个进程是init进程,系统中的其他进程都由此进程产生并受它控制。所谓进程,被认为是一个具有独立功能的程序,在一个数据集合上的一次动态执行过程。但,需要注意,一个进程只能对应一个程序。 进程通常由3部分组成:程序、数据 ...
分类:
系统相关 时间:
2016-10-20 14:56:11
阅读次数:
234
前面笔记中提到了无论子进程是 正常终止 还是 异常终止,父进程都可以通过 wait 函数或者waitpid 函数来获取到其 终止状态。但是 正常终止 和 异常终止 父进程所获得的信息是不同的,正常终止时父进程收到的是 子进程 中exit的参数,而异常终止 时父进程收到的是 导致子进程异常终止的 信号 ...
分类:
系统相关 时间:
2016-10-01 19:37:51
阅读次数:
212
考虑下面两种情况: 第一种:父进程 先于 子进程 退出。 发生此种情况的时候,子进程便成为 孤儿进程。系统中的所有孤儿进程都会被 init 进程领养,init 进程的进程 ID 始终为 1。系统内当有进程终止的时候,内核会去检查所有的进程是否为该终止进程的子进程,如果是,则将其父进程 ID 修改为 ...
分类:
系统相关 时间:
2016-10-01 16:56:57
阅读次数:
158
进程终止可以分为 进程正常终止 和 进程异常终止 。 进程正常终止有以下几种情况: 在 main 函数返回 调用 exit 函数 调用 _exit 或者 _Exit 函数 最后一个线程从启动代码中返回 最后一个线程调用 pthread_exit 进程异常终止有以下几种情况: 调用 abort函数 进 ...
分类:
系统相关 时间:
2016-10-01 14:53:14
阅读次数:
215
pid_t waitpid(pid_t pid, int *status, int options); 返回:如果成功,返回子进程的PID,如果WNOHANG,则为0,如果其他错误,则返回-1; options = 0(默认情况下)时,进程吊起直到等待列表中的一个子进程终止。 如果pid > 0,那 ...
分类:
系统相关 时间:
2016-09-23 21:15:31
阅读次数:
296
进程:运行的程序线程:运行的函数 1.main() 启动例程 exit(int main(argc, argv));2.进程终止进程正常终止: <1>main() return; <2>exit(3); 1)调用终止处理程序 2)标准IO清理程序 <3>_exit(2) _Exit(2); <4>最 ...
分类:
系统相关 时间:
2016-09-10 19:08:22
阅读次数:
204
一、进程:进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,也就是应用程序的执行实例,进程是系统进行资源分配和调度的一个独立单位。每个进程是由私有的虚拟地址空间、代码、数据和其它各种系统资源组成,进程在运行过程中创建的资源随着进程的终止而被销毁,所使用的系统资源在进程终止时被释放或关闭。 ...
分类:
编程语言 时间:
2016-08-27 11:20:33
阅读次数:
138
终止一个前台进程可能用到的命令和操作: kill命令用来终止指定的进程(terminate a process)的运行,是Linux下进程管理的常用命令。 通常,终止一个前台进程可以使用Ctrl+C键,但是,对于一个后台进程就须用kill命令来终止,需要先使用ps/pidof/pstree/top等 ...
分类:
系统相关 时间:
2016-08-26 14:56:27
阅读次数:
194
给进程设置僵尸状态的目的是维护子进程的信息,以便父进程在以后某个时间获取。这些信息包括子进程的进程ID、终止状态以及资源利用信息(CPU时间,内存使用量等等)。如果一个进程终止,而该进程有子进程处于僵尸状态,那么它的所有僵尸子进程的父进程ID将被重置为1(init进程)。继承这些子进程的init进程 ...
分类:
系统相关 时间:
2016-08-15 19:04:57
阅读次数:
251