码迷,mamicode.com
首页 > 系统相关 > 详细

C程序的执行和当前进程的结束

时间:2017-10-04 00:21:26      阅读:289      评论:0      收藏:0      [点我收藏+]

标签:str   logs   启动   地址   请求   隐式   sharp   处理   ==   

内核使程序执行的唯一方法,就是调用exec函数,这个函数又会启动一个C程序启动例程,这个启动例程是C程序的启动地址。负责调用main函数,并接受mainn函数的返回值。

使得进程结束的唯一方式是隐式的_exit/_Exit,通过调用exit(C函数),会执行在atexit中注册的结束处理程序,并关闭所有的打开流,最后调用-exit结束进程。

或者是受到进程结束信号。

在C中

exit(0)<==>return 0

 

进程结束有8种方式

5种正常

main函数返回 return

exit()

_exit()

最后一个线程的历程结束返回

最后一个线程调用pthread_exit返回

 

3种异常

abort()

收到信号

最后一个线程对取消请求作出响应

 

C程序的执行和当前进程的结束

标签:str   logs   启动   地址   请求   隐式   sharp   处理   ==   

原文地址:http://www.cnblogs.com/justart/p/7624773.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!