概述
现在需要分析,按下Ctrl+c,整个shell的处理流程。
信号
首先看下trap结构体:
1272 typedef struct trap {
1273 const char *name; /* short name */
1274 const char *mess; /* descriptive name */
1275 char *trap; /* trap command */
1276 sig_t cursig; /* current handler (valid if TF_ORIG_* set) */
1277 sig_t shtrap; /* shell signal handler */
1278 int signal; /* signal number */
1279 int flags; /* TF_* */
1280 volatile sig_atomic_t set; /* trap pending */
1281 } Trap;
信号处理函数shtrap的赋值。
版权声明:本文为chengbeng1745原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。