|
xf4fucpuviv6403894256.gif (60.41 KB, 下載次數(shù): 0)
下載附件
保存到相冊(cè)
xf4fucpuviv6403894256.gif
2024-9-4 09:45 上傳
$ w u. m& [+ R4 E0 M) _/ N
點(diǎn)擊上方藍(lán)色字體,關(guān)注我們
* U( Z/ s7 Y2 K4 _( v6 O信號(hào)是一種軟件中斷,用于通知進(jìn)程發(fā)生了某種異步事件。信號(hào)可以由用戶、其他進(jìn)程或操作系統(tǒng)內(nèi)核產(chǎn)生。進(jìn)程可以選擇捕獲并處理這些信號(hào),或者忽略它們,讓系統(tǒng)執(zhí)行默認(rèn)操作。6 n1 q+ B6 W- V3 D+ t4 O
# R/ Z0 r3 S6 {( n1 u$ |" `5 J" B
zgxxwxna3hd6403894356.png (76.48 KB, 下載次數(shù): 0)
下載附件
保存到相冊(cè)
zgxxwxna3hd6403894356.png
2024-9-4 09:45 上傳
! K6 `/ Q! A+ M3 o
; r5 G) l' a; T1 \% W1 L) `9 d& n不可靠信號(hào)(非實(shí)時(shí)信號(hào)):編號(hào)為 1~31 的信號(hào)。它們的行為可能因?qū)崿F(xiàn)而異,特別是在信號(hào)被阻塞或忽略的情況下。如果多個(gè)相同的不可靠信號(hào)在短時(shí)間內(nèi)連續(xù)到達(dá),它們可能會(huì)合并成一個(gè)信號(hào)。可靠信號(hào)(實(shí)時(shí)信號(hào)):編號(hào)為 34~64 的信號(hào)。它們的行為在所有 POSIX 兼容的系統(tǒng)上都是相同的?煽啃盘(hào)不會(huì)合并,即使它們?cè)诙虝r(shí)間內(nèi)連續(xù)到達(dá)?煽啃盘(hào)支持排隊(duì),這意味著如果一個(gè)可靠信號(hào)被阻塞,它將被存儲(chǔ)在隊(duì)列中,直到信號(hào)處理程序準(zhǔn)備就緒。
- ^" \: F! G% g1 ^3 j0 D2 d, r
常見信號(hào)的用途和系統(tǒng)默認(rèn)操作如下:# o9 C i: Y D
4 ]3 E8 z$ M: l9 u+ f$ m) ^( Q8 L. V/ W
1yrdwk1ux4k6403894456.png (436.59 KB, 下載次數(shù): 0)
下載附件
保存到相冊(cè)
1yrdwk1ux4k6403894456.png
2024-9-4 09:45 上傳
}# G, [2 ]+ G
! a2 v4 a* n1 o7 a; ?! U% q qSIGINT (2)) _' M; T, V M- K
觸發(fā)方式:當(dāng)用戶在終端按下中斷字符(通常是CTRL+C)。默認(rèn)操作:終止進(jìn)程。描述:用于中斷正在運(yùn)行的前臺(tái)進(jìn)程,是常用的終止命令。8 q" H) g Q8 R
% t U7 l3 Q5 k; t2 g% X5 y Y, Y. q8 I" _0 v
SIGQUIT (3)
6 Z5 t1 I' k% P) d' I( M$ s+ Z觸發(fā)方式:當(dāng)用戶在終端按下退出字符(通常是CTRL+\)。默認(rèn)操作:終止進(jìn)程并生成核心轉(zhuǎn)儲(chǔ)文件。描述:用于在程序進(jìn)入無(wú)限循環(huán)或不響應(yīng)時(shí)終止進(jìn)程,并生成調(diào)試用的核心文件。
0 x1 M$ A- t2 |% p. g
: U" g- }- z! H- e- r0 W6 ^& `% d8 X/ ~1 e2 o( [2 H
SIGILL (4)4 ~/ I4 p+ x. S# e* {& R
觸發(fā)方式:進(jìn)程嘗試執(zhí)行非法的機(jī)器語(yǔ)言指令。默認(rèn)操作:終止進(jìn)程。描述:用于指示程序執(zhí)行了無(wú)效的操作碼,通常表示程序代碼損壞或內(nèi)存越界。' Q6 C. ]+ h' D
3 U) @( h! ~! H, l- c
& A# S# |4 U, Y* wSIGABRT (6); f. O1 h; ^( a" c
觸發(fā)方式:當(dāng)進(jìn)程調(diào)用abort()系統(tǒng)調(diào)用。默認(rèn)操作:終止進(jìn)程并生成核心轉(zhuǎn)儲(chǔ)文件。描述:用于指示進(jìn)程自身發(fā)現(xiàn)了嚴(yán)重錯(cuò)誤,并請(qǐng)求自我終止。, B3 b% A) `) G) K& Q
6 Q/ F6 N: K8 u4 T, x/ {6 M0 R3 ]& p; Y3 q# _
SIGBUS (7)( s+ B7 y/ w* X. A
觸發(fā)方式:發(fā)生總線錯(cuò)誤(例如錯(cuò)誤的內(nèi)存訪問(wèn))。默認(rèn)操作:終止進(jìn)程。描述:指示內(nèi)存訪問(wèn)沖突,通常與硬件有關(guān)。
7 @( _7 R e; h& x+ j0 @
! Y2 J( r: w+ c2 A: [# P6 H- G$ q6 v8 G% o
SIGFPE (8), G/ z+ \ I( n/ `' `
觸發(fā)方式:特定類型的算術(shù)錯(cuò)誤(例如除以零)。默認(rèn)操作:終止進(jìn)程。描述:用于表示浮點(diǎn)運(yùn)算錯(cuò)誤或其他算術(shù)異常。
j9 d& u6 I2 `; B! i+ r% z1 V2 W2 S$ H/ S+ n# B9 F0 y3 F" a
7 p" e3 T# D$ ?5 F* w0 B0 ?1 B
SIGKILL (9), C) V" v# W/ r1 z" I/ c
觸發(fā)方式:通過(guò)kill -9命令或系統(tǒng)直接發(fā)送。默認(rèn)操作:立即終止進(jìn)程。描述:是無(wú)法被捕獲或忽略的“必殺”信號(hào),用于強(qiáng)制終止進(jìn)程。
% [: i3 V: v- R( m1 Z, a" p8 R- j0 |) j: y$ Z7 \
. C7 I$ f! x$ p, T3 jSIGUSR1 (10)( z8 m3 T% X; [: g" P! P
觸發(fā)方式:用戶定義的信號(hào),供程序員自定義使用。默認(rèn)操作:終止進(jìn)程。描述:用戶程序可以使用此信號(hào)進(jìn)行進(jìn)程間通信或事件通知。* G% G6 c3 D. V6 I
7 Q Q6 _5 O) d( w3 X0 j' l L
E, _9 W) M5 Z0 `6 DSIGSEGV (11)" e& t3 I% m1 D* l0 t
觸發(fā)方式:進(jìn)程嘗試訪問(wèn)無(wú)效的內(nèi)存地址。默認(rèn)操作:終止進(jìn)程。描述:常見于指針錯(cuò)誤或無(wú)效內(nèi)存訪問(wèn)操作,通常會(huì)導(dǎo)致程序崩潰。
, j, h& ^! E7 c0 [* ]4 [1 ^
, ~& k! Z/ d5 @2 W# E& @" d
+ ~$ s5 n* @$ ~9 W$ F0 b( F7 b4 o! pSIGUSR2 (12); q8 h8 Q$ F1 X$ l; Z. x/ |# d3 i) ^
觸發(fā)方式:與SIGUSR1類似,供用戶自定義使用。默認(rèn)操作:終止進(jìn)程。描述:供程序員自定義,用于進(jìn)程間通信或自定義處理邏輯。& l* u0 b! f0 E" f/ r2 }# d
; U1 L- k' N0 A2 v1 i0 `4 i n6 o
SIGPIPE (13)
3 ~7 D, `7 u1 k4 J" k% H+ r觸發(fā)方式:進(jìn)程向已關(guān)閉的管道或套接字寫入數(shù)據(jù)。默認(rèn)操作:終止進(jìn)程。描述:當(dāng)嘗試向無(wú)效的通信通道寫入數(shù)據(jù)時(shí)觸發(fā),通常用于通知進(jìn)程通信失敗。# z. n& G* D) W" q6 U. s" o
% N8 h3 C5 { t3 z1 i: A, _7 v p, k5 t* j. Y# o* J1 a E% f ?6 j9 Q1 D
SIGALRM (14)8 q4 O) r& p* P% x }- ^
觸發(fā)方式:定時(shí)器到期(由alarm()或setitimer()設(shè)置)。默認(rèn)操作:終止進(jìn)程。描述:常用于定時(shí)操作,信號(hào)觸發(fā)后通常終止程序或進(jìn)行某種處理。. x* X% }" m4 j- c2 ~. J7 w/ |: T
. @" b, L! B! m/ A5 ~/ i# z
; o7 {8 d' }5 X5 F
SIGTERM (15)
& @: [- |, O5 t* O% M' M觸發(fā)方式:通過(guò)kill命令(不帶-9選項(xiàng))。默認(rèn)操作:終止進(jìn)程。描述:用于請(qǐng)求進(jìn)程正常終止,通常用于優(yōu)雅地關(guān)閉應(yīng)用程序。
" t0 u7 |6 @5 H+ S" i7 e1 G5 M3 I7 a& E6 M3 m
+ S. J6 y5 a3 ]$ l, c9 R; P) T5 WSIGCHLD (17)7 Y& @6 C2 v% X% m( g
觸發(fā)方式:子進(jìn)程終止或狀態(tài)改變。默認(rèn)操作:忽略信號(hào)。描述:父進(jìn)程用來(lái)得知子進(jìn)程終止或狀態(tài)改變,默認(rèn)忽略,父進(jìn)程可選擇處理。
' ?2 M1 Z6 z& Z1 B+ A* G2 ?) O8 z
) N( Z+ U) v; K0 p' V1 U8 ~( Z6 pSIGCONT (18)) f( [- c$ |! o
觸發(fā)方式:恢復(fù)已停止的進(jìn)程。默認(rèn)操作:繼續(xù)運(yùn)行進(jìn)程。描述:發(fā)送給已停止的進(jìn)程,使其恢復(fù)執(zhí)行。
+ j3 L! l6 W& }6 `+ \' Q' U
% p8 d$ Q3 _/ B i* c; E- O% n$ `
# y0 }* M( b$ RSIGSTOP (19)' \. }0 |2 t7 t% p
觸發(fā)方式:強(qiáng)制停止進(jìn)程。默認(rèn)操作:停止進(jìn)程。描述:無(wú)法捕獲或忽略的“必!毙盘(hào),用于暫停進(jìn)程執(zhí)行。( Z9 Y4 Y3 |2 \( ]! @# m* U5 l
# n6 \0 B- I! o6 Y! ^( ?
5 w1 e3 T' B( O6 U( k
SIGTSTP (20)$ E6 h0 ?2 F+ ~" r' w/ C
觸發(fā)方式:用戶在終端按下停止字符(CTRL+Z)。默認(rèn)操作:停止進(jìn)程。描述:用于暫停前臺(tái)進(jìn)程組中的進(jìn)程,常用于暫停任務(wù)。
; O! Q r2 n2 p( W0 A' r) c5 s
; y* K1 H+ G( L3 n
$ h! k/ u" e \0 WSIGXCPU (24)
% ?: }; ~$ k/ }觸發(fā)方式:進(jìn)程CPU時(shí)間超出限制。默認(rèn)操作:終止進(jìn)程。描述:通常用于檢測(cè)進(jìn)程占用CPU過(guò)多時(shí)間,可能引發(fā)警告或終止進(jìn)程。
; g. l7 K% \1 d# \+ _8 _6 V
8 R. V: O9 _1 Y- T$ }2 d8 x% D; a; T7 H
SIGVTALRM (26)( E1 @4 \' I9 u& N, t/ S9 P
觸發(fā)方式:虛擬定時(shí)器到期(由setitimer()設(shè)置)。默認(rèn)操作:終止進(jìn)程。描述:用于虛擬定時(shí)器管理,定時(shí)器到期后觸發(fā)信號(hào)。' D0 f( S" O2 P" j7 k% N* n4 ?
( Z! v/ C/ `8 U& T" x
SIGWINCH (28), G% e% x; h2 X: E0 r e
觸發(fā)方式:終端窗口大小改變。默認(rèn)操作:忽略信號(hào)。描述:當(dāng)終端窗口調(diào)整大小時(shí),前臺(tái)進(jìn)程會(huì)接收到此信號(hào)。2 o' z* e. w" V0 l
6 Z& \- Z( ]) X- ~7 v
2 `* L1 Y! |. r' x/ k5 }
SIGPOLL/SIGIO (29)
+ u% B) [0 T* r1 O8 o( h; m( L/ ~觸發(fā)方式:異步I/O事件發(fā)生。默認(rèn)操作:終止進(jìn)程。描述:用于異步I/O操作,通知進(jìn)程文件描述符的I/O事件。5 j0 [; R4 r' u! T3 B. Z
7 o) X8 g) w/ r" u8 rSIGSYS (31)
* z5 H- `/ A* k U$ n9 Y觸發(fā)方式:進(jìn)程發(fā)起了無(wú)效的系統(tǒng)調(diào)用。默認(rèn)操作:終止進(jìn)程。描述:通常用于捕獲非法系統(tǒng)調(diào)用或程序錯(cuò)誤。
$ U7 i, }. C- k1 F Y- p6 i. e A! ?2 p% d
這些信號(hào)為L(zhǎng)inux進(jìn)程提供了豐富的控制和通信機(jī)制。了解這些信號(hào)及其默認(rèn)行為,有助于編寫更加健壯的程序,并能夠有效處理各種異常和中斷。' I+ N. L1 s% V8 F* Y
6 \! C# {. B( r* Q6 Q. n
dobdp1g01mo6403894556.jpg (71.14 KB, 下載次數(shù): 0)
下載附件
保存到相冊(cè)
dobdp1g01mo6403894556.jpg
2024-9-4 09:45 上傳
- L, M+ u5 Z1 l9 S/ L
yrkuokddsgw6403894656.gif (45.46 KB, 下載次數(shù): 1)
下載附件
保存到相冊(cè)
yrkuokddsgw6403894656.gif
2024-9-4 09:45 上傳
9 W5 d! e* Q$ @: z點(diǎn)擊閱讀原文,更精彩~ |
|