久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

linux的信號有哪些

166次閱讀
沒有評論

共計 3178 個字符,預計需要花費 8 分鐘才能閱讀完成。

這篇“linux 的信號有哪些”文章的知識點大部分人都不太理解,所以丸趣 TV 小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“linux 的信號有哪些”文章吧。

linux 信號有:1、SIGHUP,用于讓進程立即關閉,然后重新讀取配置文件之后重啟;2、SIGINT,程序中止信號,用于中止前臺進程;3、SIGQUIT,程序退出信號;4、SIGFPE,在發生致命的算術運算錯誤時發出;5、SIGKILL,用來立即結束程序的運行;6、SIGALRM,時鐘定時信號;7、SIGTERM,正常結束進程的信號;8、SIGCONT;9、SIGSTOP 等。

linux 中信號是什么

進程的管理主要是指進程的關閉與重啟。我們一般關閉或重啟軟件,都是關閉或重啟它的程序,而不是直接操作進程的。比如,要重啟 apache 服務,一般使用命令 service httpd restart 重啟 apache 的程序。

那么,可以通過直接管理進程來關閉或重啟 apache 嗎?答案是肯定的,這時就要依賴進程的信號(Signal)了。我們需要給予該進程號,告訴進程我們想要讓它做什么。

系統中可以識別的信號較多,我們可以使用命令 kill -l 或 man 7 signal 來查詢。命令如下:

[root@localhost ~]#kill -l
1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP
6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1
11)SIGSEGV 12) SIGUSR2 13) SIGPIPE 14) SIGALRM 15)SIGTERM 16) SIGSTKFLT 17) SIGCHLD 18) SIGCONT 19) SIGSTOP 20) SIGTSTP 21) SIGTTIN 22) SIGTTOU 23) SIGURG
24) SIGXCPU 25) SIGXFSZ 26) SIGVTALRM 27) SIGPROF 28) SIGWINCH 29) SIGIO 30) SIGPWR 31) SIGSYS 34) SIGRTMIN 35) SIGRTMIN+1 36) SIGRTMIN+2 37) SIGRTMIN+3 38) SIGRTMIN +4 39) SIGRTMIN +5 40) SIGRTMIN+6 41)SIGRTMIN+7 42) SIGRTMIN+8 43) SIGRTMIN +9 44) SIGRTMIN +10 45) SIGRTMIN+11 46) SIGRTMIN+1247) SIGRTMIN+13 48) SIGRTMIN +14 49) SIGRTMIN +15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-12 53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9 56) SIGRTMAX-8 57) SIGRTMAX-7 58) SIGRTMAX-6 59) SIGRTMAX-5 60) SIGRTMAX-4 61) SIGRTMAX-3 62) SIGRTMAX-2 63) SIGRTMAX-1 64) SIGRTMAX

linux 中常見的信號

信號代號信號名稱說 明 1SIGHUP 該信號讓進程立即關閉. 然后重新讀取配置文件之后重啟 2SIGINT 程序中止信號,用于中止前臺進程。相當于輸出 Ctrl+C 快捷鍵 3SIGQUIT 程序退出信號(同 Ctrl + \)8SIGFPE 在發生致命的算術運算錯誤時發出。不僅包括浮點運算錯誤,還包括溢出及除數為 0 等其他所有的算術運算錯誤 9SIGKILL 用來立即結束程序的運行。本信號不能被阻塞、處理和忽略。般用于強制中止進程 14SIGALRM 時鐘定時信號,計算的是實際的時間或時鐘時間。alarm 函數使用該信號 15SIGTERM 正常結束進程的信號,kill 命令的默認信號。如果進程已經發生了問題,那么這 個信號是無法正常中止進程的,這時我們才會嘗試 SIGKILL 信號,也就是信號 918SIGCONT 該信號可以讓暫停的進程恢復執行。本信號不能被阻斷 19SIGSTOP 該信號可以暫停前臺進程,相當于輸入 Ctrl+Z 快捷鍵。本信號不能被阻斷

KILL, STOP 信號不可被阻塞、忽略、捕獲。

Term 表示終止進程。Core 表示終止進程并 dump core。Stop 掛起線程,Cont 恢復掛起的線程。

常見信號的常見用途

SIGHUP

本信號在用戶終端連接 (正常或非正常) 結束時發出, 通常是在終端的控制進程結束時, 通知同一會話內的各個作業, 這時它們與控制終端不再關聯。

登錄 Linux 時,系統會分配給登錄用戶一個終端會話(Session)。在這個終端運行的所有程序,包括前臺進程組和后臺進程組,一般都屬于這個會話。當用戶退出 Linux 登錄時,前臺進程組和后臺有對終端輸出的進程將會收到 SIGHUP 信號。

這個信號的默認操作為終止進程,因此退出登錄之后,前后臺進程和后臺有終端輸出的進程就會中止。

不過可以捕獲這個信號,比如 wget 能捕獲 SIGHUP 信號,并忽略它,這樣就算退出了 Linux 登錄,wget 也能繼續下載。

此外,對于與終端脫離關系的守護進程,這個信號用于通知它重新讀取配置文件。

比如,向 nginx 進程發送 HUP 信號就可以刷新配置。

SIGINT:程序終止 (interrupt) 信號, 在用戶鍵入 INTR 字符 (通常是 Ctrl-C) 時發出,用于通知前臺進程組終止進程。

SIGQUIT:和 SIGINT 類似, 但由 QUIT 字符 (通常是 Ctrl-\) 來控制. 進程在因收到 SIGQUIT 退出時會產生 core 文件, 在這個意義上類似于一個程序錯誤信號。

SIGTERM:

程序結束 (terminate) 信號, 與 SIGKILL 不同的是該信號可以被阻塞和處理。通常用來要求程序自己正常退出,允許進程做一些必要的清理工作后退出。

shell 命令 kill 缺省產生這個信號。如果進程終止不了,我們才會嘗試 SIGKILL。

SIGTERM 讓進程體面的結束,如果進程自己不體面,就用 SIGKILL 幫它體面。

SIGCONT:讓一個停止 (stopped) 的進程繼續執行. 本信號不能被阻塞. 可以用一個 handler 來讓程序在由 stopped 狀態變為繼續執行時完成特定的工作. 例如, 重新顯示提示符…

SIGSTOP:停止 (stopped) 進程的執行. 注意它和 terminate 以及 interrupt 的區別: 該進程還未結束, 只是暫停執行. 本信號不能被阻塞, 處理或忽略.

常用信號快捷鍵

ctrl-c 發送 SIGINT 信號給前臺進程組中的所有進程。常用于終止正在運行的程序。

ctrl-z 發送 SIGTSTP 信號給前臺進程組中的所有進程,常用于掛起一個進程。

ctrl-d 不是發送信號,而是表示一個特殊的二進制值,表示 EOF。

ctrl-\ 發送 SIGQUIT 信號給前臺進程組中的所有進程,終止前臺進程并生成 core 文件。

KeyFunctionCtrl-cKill foreground processCtrl-zSuspend foreground processCtrl-dTerminate input, or exit shellCtrl-sSuspend outputCtrl-qResume outputCtrl-oDiscard outputCtrl-lClear screen

以上就是關于“linux 的信號有哪些”這篇文章的內容,相信大家都有了一定的了解,希望丸趣 TV 小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注丸趣 TV 行業資訊頻道。

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-07-12發表,共計3178字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 教育| 宝山区| 平罗县| 海宁市| 那曲县| 读书| 阿拉尔市| 土默特左旗| 香格里拉县| 灵璧县| 四平市| 靖远县| 搜索| 大埔县| 开江县| 漳州市| 阿坝| 蓬溪县| 富宁县| 宁安市| 两当县| 固镇县| 山丹县| 陈巴尔虎旗| 略阳县| 利川市| 佛学| 滦南县| 郎溪县| 巩留县| 永清县| 望江县| 南召县| 浪卡子县| 浮山县| 安泽县| 恭城| 甘泉县| 托里县| 弥勒县| 沾化县|