1、main函式的自然返回,return
2、呼叫exit
函式
3、呼叫_exit
函式
4、呼叫abort
函式
5、接受能導致程序終止的訊號:
ctrl+c (^c)
sigint(sigint中斷程序)
sigquit (程序在因收到sigquit退出時會產生core檔案, 在這個意義上類似於乙個程式錯誤訊號)
ctrl + \ (^\quit)
其中1、2、3為正常終止,4、5異常終止
exit和_exit
函式都是用來終止程序的。當程式執行到exit和_exit
時,程序會無條件的停止剩下的所有操作,清除包括pcb在內的各種資料結構,並終止本程式的執行。
exit函式和_exit函式的最大區別在於exit函式在退出之前會檢查檔案的開啟情況,把檔案緩衝區中的內容寫回檔案,也就是清理i/o緩衝。
#include
#include
int main()
//執行結果:
using exit
this is the content in buffer
#include
#include
#include
int main()
//執行結果:
using exit
abort()是使異常程式終止,同時傳送sigabrt訊號給呼叫程序。
使用例項:
#include
#include
int main()
else
return
0;}
執行結果:
can not
open: no such file
ordirectory
aborted (core dumped)
Linux 程序建立 程序終止
程序終止 fork 在linux中fork函式時非常重要的函式,它從已存在程序中建立乙個新程序。新程序為子程序,而原程序為父程序。include pid t fork void 返回值 自程序中返回0,父程序返回子程序id,出錯返回 1子程序複製父程序的pcb,因此複製了父程序的程式計數器,所以和父...
Linux程序終止訊號
sigterm 該訊號可由程序捕獲,使用該訊號讓程序有機會在退出之前做好清理工作,從而優雅地終止。sigint 當使用者按下中斷鍵 一般採用delete或ctrl c 時,終端驅動程式產生此訊號並傳送至前台程序組中的每乙個程序。sigkill 該訊號不能被程序捕捉和忽略,它向系統管理員提供了一種可靠...
終止前台程序 linux 程序管理
ps precess sstatus 程序狀態 ps aux a 顯示現行終端下所有程式 u 以使用者為主來顯示程式執行狀態 x 不宜終端機來區分 user 使用者名稱pid 執行id cpu 占用cpu百分比 mem 占用記憶體百分比 vsz占用虛擬記憶體大小 rss占用實際記憶體大小 tty終端...