Linux Ðźűí
LinuxÖ§³ÖPOSIX±ê×¼ÐźźÍʵʱÐźš£ÏÂÃæ¸ø³öLinux SignalµÄ¼ò±í£¬Ïêϸϸ½Ú¿ÉÒԲ鿴man 7 signal¡£
ĬÈ϶¯×÷µÄº¬ÒåÈçÏ£º
Term ÖÕÖ¹½ø³Ì
ÐźÅ
È¡Öµ
ĬÈ϶¯×÷
º¬Ò壨·¢³öÐźŵÄÔÒò£©
SIGHUP
1
Term
Öն˵ĹҶϻò½ø³ÌËÀÍö
SIGINT
2
Term
À´×Ô¼üÅ̵ÄÖжÏÐźÅ
SIGQUIT
3
Core
À´×Ô¼üÅ̵ÄÀ뿪ÐźÅ
SIGILL
4
Core
·Ç·¨Ö¸Áî
SIGABRT
6
Core
À´×ÔabortµÄÒì³£ÐźÅ
SIGFPE
8
Core
¸¡µãÀýÍâ
SIGKILL
9
Term
ɱËÀ
SIGSEGV
11
Core
¶Î·Ç·¨´íÎó(ÄÚ´æÒýÓÃÎÞЧ)
SIGPIPE
13
Term
¹ÜµÀË𻵣ºÏòÒ»¸öûÓжÁ½ø³ÌµÄ¹ÜµÀдÊý¾Ý
SIGALRM
14
Term
À´×ÔalarmµÄ¼ÆʱÆ÷µ½Ê±ÐźÅ
SIGTERM
15
Term
ÖÕÖ¹
SIGUSR1
30,10,16
Term
Óû§×Ô¶¨ÒåÐźÅ1
SIGUSR2
31,12,17
Term
Óû§×Ô¶¨ÒåÐźÅ2
SIGCHLD
20,17,18
Ign
×Ó½ø³ÌÍ£Ö¹»òÖÕÖ¹
SIGCONT
19,18,25
Cont
Èç¹ûÍ£Ö¹£¬¼ÌÐøÖ´ÐÐ
SIGSTOP
17,19,23
Stop
·ÇÀ´×ÔÖն˵ÄÍ£Ö¹ÐźÅ
SIGTSTP
18,20,24
Stop
À´×ÔÖն˵ÄÍ£Ö¹ÐźÅ
SIGTTIN
21,21,26
Stop
ºǫ́½ø³Ì¶ÁÖÕ¶Ë
SIGTTOU
22,22,27
Stop
ºǫ́½ø³ÌдÖÕ¶Ë
¡¡
¡¡
SIGBUS
10,7,10
Core
×ÜÏß´íÎó£¨ÄÚ´æ·ÃÎÊ´íÎó£©
SIGPOLL
Term
Pollableʼþ·¢Éú(Sys V)£¬ÓëSIGIOͬÒå
SIGPROF
27,27,29
Term
ͳ¼Æ·Ö²¼Í¼ÓüÆʱÆ÷µ½Ê±
SIGSYS
12,-,12
Core
·Ç·¨ÏµÍ³µ÷ÓÃ(SVr4)
SIGTRAP
5
Core
¸ú×Ù/¶Ïµã×ÔÏÝ
SIGURG
16,23,21
Ign
socket½ô¼±ÐźÅ(4.2BSD)
SIGVTALRM
26,26,28
Term
ÐéÄâ¼ÆʱÆ÷µ½Ê±(4.2BSD)
SIGXCPU
24,24,30
Core
³¬¹ýCPUʱÏÞ(4.2BSD)
SIGXFSZ
25,25,31
Core
³¬¹ýÎļþ³¤¶ÈÏÞÖÆ(4.2BSD)
¡¡
¡¡
SIGIOT
6
Core
IOT×ÔÏÝ£¬ÓëSIGABRTͬÒå
SIGEMT
7,-,7
Term
SIGSTKFLT
-,16,-
Term
д¦ÀíÆ÷¶ÑÕ»´íÎó(²»Ê¹ÓÃ)
SIGIO
23,29,22
Term
ÃèÊö·ûÉÏ¿ÉÒÔ½øÐÐI/O²Ù×÷
SIGCLD
-,-,18
Ign
ÓëSIGCHLDͬÒå
SIGPWR
29,30,19
Term
µçÁ¦¹ÊÕÏ(System V)
SIGINFO
29,-,-
ÓëSIGPWRͬÒå
SIGLOST
-,-,-
Term
ÎļþËø¶ªÊ§
SIGWINCH
28,28,20
Ign
´°¿Ú´óС¸Ä±ä(4.3BSD, Sun)
SIGUNUSED
-,31,-
Term
δʹÓÃÐźÅ(will be SIGSYS)
˵Ã÷£º
һЩÐźŵÄÈ¡ÖµÊÇÓ²¼þ½á¹¹Ïà¹ØµÄ£¨Ò»°ãalphaºÍsparc¼Ü¹¹ÓõÚÒ»¸öÖµ£¬i386¡¢ppcºÍsh¼Ü¹¹ÓÃÖмäÖµ£¬mips¼Ü¹¹ÓõÚÈý¸öÖµ£¬ - ±íʾÏàÓ¦¼Ü¹¹µÄȡֵδ֪£©¡£
1. Ç°ÑÔ
ÒÔÌ«Í·ÖгýÁË6×Ö½ÚÄ¿µÄMACµØÖ·¡¢6×Ö½ÚÔ´MACµØÖ·Í⣬»¹ÓÐÁ½×Ö½ÚµÄÒÔÌ«Ö¡ÀàÐÍÖµ£¬ÈçIPv4Ϊ0x0800£¬ARPΪ0x0806µÈ£¬Íø¿¨Çý¶¯ÊÕµ½ÒÔÌ«Ö¡ºóͨ¹ý½Ó¿Úº¯Êýnetif_receive_skb()(netif_rxʵ¼Ê×îºóÒ²Êǵ÷ÓÃnetif_receive_skb)½»µ½Éϲ㣬¶øÕâ¸ö½Ó¿Úº¯Êý¾ÍÍê³É¶ÔÒÔÌ«Ö¡ÀàÐ͵ÄÇø·Ö£¬½»µ½²»Í¬µÄÐÒé´¦Àí³ÌÐò¡£Èç¹ûÏë×Ô¼º±àдijһ ......
×î½üÔÚ寫Driver時£¬³£³£Óöµ½ÐèÒª¡¸µÈ´ýÒ»¶Î時間¡¹ÔÙ處ÀíµÄ動×÷£¬ÒÔÍùÎÒ¶¼ÉµÉµµÄÓÃmsleep()»òmdelay()£¬Êâ²»Öª這種busy waiting會holdסcpu資Ô´£¬ÔÚ這¶ÎÆÚ間內¶¼無·¨讓給ÆäËûprocess執ÐУ¬時間¶Ì(10msÒ ......