⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sigall.c

📁 这个是LINUX下的GDB调度工具的源码
💻 C
📖 第 1 页 / 共 2 页
字号:
#include <signal.h>#include <unistd.h>#ifdef __sh__#define signal(a,b)	/* Signals not supported on this target - make them go away */#endif/* Signal handlers, we set breakpoints in them to make sure that the   signals really get delivered.  */#ifdef PROTOTYPESvoidhandle_ABRT (int sig)#elsevoidhandle_ABRT (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_HUP (int sig)#elsevoidhandle_HUP (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_QUIT (int sig)#elsevoidhandle_QUIT (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_ILL (int sig)#elsevoidhandle_ILL (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_EMT (int sig)#elsevoidhandle_EMT (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_FPE (int sig)#elsevoidhandle_FPE (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_BUS (int sig)#elsevoidhandle_BUS (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_SEGV (int sig)#elsevoidhandle_SEGV (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_SYS (int sig)#elsevoidhandle_SYS (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_PIPE (int sig)#elsevoidhandle_PIPE (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_ALRM (int sig)#elsevoidhandle_ALRM (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_URG (int sig)#elsevoidhandle_URG (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_TSTP (int sig)#elsevoidhandle_TSTP (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_CONT (int sig)#elsevoidhandle_CONT (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_CHLD (int sig)#elsevoidhandle_CHLD (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_TTIN (int sig)#elsevoidhandle_TTIN (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_TTOU (int sig)#elsevoidhandle_TTOU (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_IO (int sig)#elsevoidhandle_IO (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_XCPU (int sig)#elsevoidhandle_XCPU (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_XFSZ (int sig)#elsevoidhandle_XFSZ (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_VTALRM (int sig)#elsevoidhandle_VTALRM (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_PROF (int sig)#elsevoidhandle_PROF (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_WINCH (int sig)#elsevoidhandle_WINCH (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_LOST (int sig)#elsevoidhandle_LOST (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_USR1 (int sig)#elsevoidhandle_USR1 (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_USR2 (int sig)#elsevoidhandle_USR2 (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_PWR (int sig)#elsevoidhandle_PWR (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_POLL (int sig)#elsevoidhandle_POLL (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_WIND (int sig)#elsevoidhandle_WIND (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_PHONE (int sig)#elsevoidhandle_PHONE (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_WAITING (int sig)#elsevoidhandle_WAITING (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_LWP (int sig)#elsevoidhandle_LWP (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_DANGER (int sig)#elsevoidhandle_DANGER (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_GRANT (int sig)#elsevoidhandle_GRANT (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_RETRACT (int sig)#elsevoidhandle_RETRACT (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_MSG (int sig)#elsevoidhandle_MSG (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_SOUND (int sig)#elsevoidhandle_SOUND (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_SAK (int sig)#elsevoidhandle_SAK (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_PRIO (int sig)#elsevoidhandle_PRIO (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_33 (int sig)#elsevoidhandle_33 (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_34 (int sig)#elsevoidhandle_34 (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_35 (int sig)#elsevoidhandle_35 (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_36 (int sig)#elsevoidhandle_36 (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_37 (int sig)#elsevoidhandle_37 (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_38 (int sig)#elsevoidhandle_38 (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_39 (int sig)#elsevoidhandle_39 (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_40 (int sig)#elsevoidhandle_40 (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_41 (int sig)#elsevoidhandle_41 (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_42 (int sig)#elsevoidhandle_42 (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_43 (int sig)#elsevoidhandle_43 (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_44 (int sig)#elsevoidhandle_44 (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_45 (int sig)#elsevoidhandle_45 (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_46 (int sig)#elsevoidhandle_46 (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_47 (int sig)#elsevoidhandle_47 (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_48 (int sig)#elsevoidhandle_48 (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_49 (int sig)#elsevoidhandle_49 (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_50 (int sig)#elsevoidhandle_50 (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_51 (int sig)#elsevoidhandle_51 (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_52 (int sig)#elsevoidhandle_52 (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_53 (int sig)#elsevoidhandle_53 (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_54 (int sig)#elsevoidhandle_54 (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_55 (int sig)#elsevoidhandle_55 (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_56 (int sig)#elsevoidhandle_56 (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_57 (int sig)#elsevoidhandle_57 (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_58 (int sig)#elsevoidhandle_58 (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_59 (int sig)#elsevoidhandle_59 (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_60 (int sig)#elsevoidhandle_60 (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_61 (int sig)#elsevoidhandle_61 (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_62 (int sig)#elsevoidhandle_62 (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_63 (int sig)#elsevoidhandle_63 (sig)     int sig;#endif{}#ifdef PROTOTYPESvoidhandle_TERM (int sig)#elsevoidhandle_TERM (sig)     int sig;#endif{}/* Functions to send signals.  These also serve as markers.  */intgen_ABRT (){  kill (getpid (), SIGABRT);  return 0;}  intgen_HUP (){#ifdef SIGHUP  kill (getpid (), SIGHUP);#else  handle_HUP (0);#endifreturn 0;}  intgen_QUIT (){#ifdef SIGQUIT  kill (getpid (), SIGQUIT);#else  handle_QUIT (0);#endifreturn 0;}intgen_ILL (){#ifdef SIGILL  kill (getpid (), SIGILL);#else  handle_ILL (0);#endifreturn 0;}intgen_EMT (){#ifdef SIGEMT  kill (getpid (), SIGEMT);#else  handle_EMT (0);#endifreturn 0;}int x;intgen_FPE (){  /* The intent behind generating SIGFPE this way is to check the mapping     from the CPU exception itself to the signals.  It would be nice to     do the same for SIGBUS, SIGSEGV, etc., but I suspect that even this     test might turn out to be insufficiently portable.  */#if 0  /* Loses on the PA because after the signal handler executes we try to     re-execute the failing instruction again.  Perhaps we could siglongjmp     out of the signal handler?  */  /* The expect script looks for the word "kill"; don't delete it.  */  return 5 / x; /* and we both started jumping up and down yelling kill */#else  kill (getpid (), SIGFPE);#endifreturn 0;}intgen_BUS (){#ifdef SIGBUS  kill (getpid (), SIGBUS);#else  handle_BUS (0);#endifreturn 0;}intgen_SEGV (){#ifdef SIGSEGV  kill (getpid (), SIGSEGV);#else  handle_SEGV (0);#endifreturn 0;}intgen_SYS (){#ifdef SIGSYS  kill (getpid (), SIGSYS);#else  handle_SYS (0);#endifreturn 0;}intgen_PIPE (){#ifdef SIGPIPE  kill (getpid (), SIGPIPE);#else  handle_PIPE (0);#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -