c程序是如何启动和终止

来源:互联网 发布:左红军网络计划 编辑:程序博客网 时间:2024/05/16 17:24

c程序如何启动:

当内核执行C程序时(使用exec函数),在调用main函数之前调用一个特殊的启动例程。可执行文件将此启动例程指定为程序的起始地址---这是由连接编辑器设置的,而连接编辑器由c的编译器调用。同时,启动例程从内核取得命令行参数和环境变量。

进程的终止

总共有8种方式使进程终止,其中前5种正常,后3种不正常。

    1. 从main返回。在这种方式中,main函数返回后立即调用exit函数。
    2. 调用exit函数。  这种方式中,exit先执行一些清理处理,包括调用执行处理终止程序,关闭所有标准I/O流等。
    3. 调用_exit或_Exit函数。 这种方式中,_exit或_Exit立即进入内核。
    4. 最后一个线程从启动例程返回。
    5. 最后一个线程调用pthread_exit
    6. 调用abort。
    7. 接到一个信号并终止。
    8. 最后一个线程对取消请求作出响应。
c程序启动终止示意图:

原创粉丝点击