1.进程
进程是计算机的程序关于某数据集合上的一次运行活动,是系统进程资
源分配和调度的基本单位,是操作系统结构的基础。
2.进程的终止方式
正常终止:
1.从main返回;
2.调用exit;
3.调用_exit或_Exit;
注:_exit和_Exit立即进入内核,exit则先进行一些清理处理,然后进入内核。
该三个函数都带一个整型参数,称之为终止状态,其实main函数的返回
值与调用exit是等价的,即exit(0)等价于return(0).
4.最后一个线程调用pthread_exit;
5.最后一个线程从其调动例程返回;
异常终止:
1.调用abort;
注:产生SIGAORT信号;
2.接到一个信号终止;
注:ctrl+c/SIGINT
3.最后一个线程对取消请求做出响应;
3.进程结束方式的比较
1.exit与_exit区别
a._exit是一个系统调用,exit是一个c库函数;
b.exit会执行 刷新I/O缓冲;
c.exit会执行调用终止处理操作;
2.return和exit区别
a.exit用于结束正在运行的整个程序,它将参数返回给OS,把控制权交给操作系统
而return是退出当前函数,返回函数值,把控制权交给调用函数;
b.exit是系统调用级别,它表示一个进程的结束;而return是语言级别的,它表示调
用堆栈的返回;
c.在main函数结束时,会隐式的调用exit函数,所以一般程序执行到main()结尾时,
则结束程序。exit将删除进程使用的内存空间,同时把错误信息返回给父进程;
d.void exit(int status);一般status为0,表示正常退出,非0表示非正常退出。