当前位置: 首页 > news >正文

通州网站制作免费的舆情网站app下载

通州网站制作,免费的舆情网站app下载,外链seo软件下载,哈尔滨短视频制作公司一#xff0c;信号概念 信号是进程之间事件异步通知的一种方式#xff0c;属于软中断#xff1b; 系统定义的信号 每个信号都有一个编号和一个宏定义名称#xff08;可在signal.h查看#xff09;#xff1b;编号34以上的为实时信号#xff1b; [wz192 Desktop]$ kill -… 一信号概念 信号是进程之间事件异步通知的一种方式属于软中断 系统定义的信号 每个信号都有一个编号和一个宏定义名称可在signal.h查看编号34以上的为实时信号 [wz192 Desktop]$ kill -l1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP6) 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) SIGRTMIN1 36) SIGRTMIN2 37) SIGRTMIN3 38) SIGRTMIN4 39) SIGRTMIN5 40) SIGRTMIN6 41) SIGRTMIN7 42) SIGRTMIN8 43) SIGRTMIN9 44) SIGRTMIN10 45) SIGRTMIN11 46) SIGRTMIN12 47) SIGRTMIN13 48) SIGRTMIN14 49) SIGRTMIN15 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 //vim /usr/include/bits/signum.h /* Signals. */ #define SIGHUP 1 /* Hangup (POSIX). */ #define SIGINT 2 /* Interrupt (ANSI). */ #define SIGQUIT 3 /* Quit (POSIX). */ #define SIGILL 4 /* Illegal instruction (ANSI). */ #define SIGTRAP 5 /* Trace trap (POSIX). */ #define SIGABRT 6 /* Abort (ANSI). */ #define SIGIOT 6 /* IOT trap (4.2 BSD). */ #define SIGBUS 7 /* BUS error (4.2 BSD). */ #define SIGFPE 8 /* Floating-point exception (ANSI). */ #define SIGKILL 9 /* Kill, unblockable (POSIX). */ #define SIGUSR1 10 /* User-defined signal 1 (POSIX). */ #define SIGSEGV 11 /* Segmentation violation (ANSI). */ #define SIGUSR2 12 /* User-defined signal 2 (POSIX). */ #define SIGPIPE 13 /* Broken pipe (POSIX). */ #define SIGALRM 14 /* Alarm clock (POSIX). */ #define SIGTERM 15 /* Termination (ANSI). */ #define SIGSTKFLT 16 /* Stack fault. */ #define SIGCLD SIGCHLD /* Same as SIGCHLD (System V). */ #define SIGCHLD 17 /* Child status has changed (POSIX). */ #define SIGCONT 18 /* Continue (POSIX). */ #define SIGSTOP 19 /* Stop, unblockable (POSIX). */ #define SIGTSTP 20 /* Keyboard stop (POSIX). */ #define SIGTTIN 21 /* Background read from tty (POSIX). */ #define SIGTTOU 22 /* Background write to tty (POSIX). */ #define SIGURG 23 /* Urgent condition on socket (4.2 BSD). */ #define SIGXCPU 24 /* CPU limit exceeded (4.2 BSD). */ #define SIGXFSZ 25 /* File size limit exceeded (4.2 BSD). */ #define SIGVTALRM 26 /* Virtual alarm clock (4.2 BSD). */ #define SIGPROF 27 /* Profiling alarm clock (4.2 BSD). */ #define SIGWINCH 28 /* Window size change (4.3 BSD, Sun). */ #define SIGPOLL SIGIO /* Pollable event occurred (System V). */ #define SIGIO 29 /* I/O now possible (4.2 BSD). */ #define SIGPWR 30 /* Power failure restart (System V). */ #define SIGSYS 31 /* Bad system call. */ #define SIGUNUSED 31ctrl c  此键盘输入将产生一个硬件中断被OS获取并解释成信号发送给目标前台进程此前台进程收到信号引起进程退出 ctrl c 产生的信号只能发送给前台进程如一个命令后加上可放入后台运行shell可同时运行一个前台进程和任意多个后台进程只有前台进程才可接收ctrlc产生的信号前台进程在运行过程中可随时按下ctrlc即该进程的用户空间代码执行到任何位置都有可能收到SIGINT信号而终止所以信号相当于进程的控制流来说是异步的 信号的产生 信号的阻塞 信号的捕捉 二信号的产生 通过终端按键产生信号调用系统函数向进程发送信号由软件条件产生信号硬件异常产生信号 1通过终端按键产生信号 SIGINT默认处理动作为终止进程SIGQUIT默认处理动作为终止进程并Core Dump Core Dump即当一进程异常终止时可选择把进程的用户空间内存数据全部保存到磁盘上文件名通常是core叫做core dump异常终止通常是因为bug如非法内存访问导致的段错误事后可调试器检查core文件以查清错误原因叫做事后调试Post-mortem Debug一个进程允许产生多大的core文件取决于进程的Resource Limit此消息保存于PCB中默认是不允许产生core文件的因为core文件可能包含用户密码等敏感消息在开发阶段可使用ulimit命令改变此限制允许产生core文件用ulimit命令改变shell进程的Resource Limit允许core文件最大1024Kulimit -c 1024 [wz192 ~]$ ulimit -a core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 7154 max locked memory (kbytes, -l) 64 max memory size (kbytes, -m) unlimited open files (-n) 1024 pipe size (512 bytes, -p) 8 POSIX message queues (bytes, -q) 819200 real-time priority (-r) 0 stack size (kbytes, -s) 8192 cpu time (seconds, -t) unlimited max user processes (-u) 4096 virtual memory (kbytes, -v) unlimited file locks (-x) unlimited[wz192 ~]$ ulimit -c 1024 [wz192 ~]$ ulimit -a core file size (blocks, -c) 1024 data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 7154 max locked memory (kbytes, -l) 64 max memory size (kbytes, -m) unlimited open files (-n) 1024 pipe size (512 bytes, -p) 8 POSIX message queues (bytes, -q) 819200 real-time priority (-r) 0 stack size (kbytes, -s) 8192 cpu time (seconds, -t) unlimited max user processes (-u) 4096 virtual memory (kbytes, -v) unlimited file locks (-x) unlimited#include stdio.h #include unistd.h int main(){ int count 0; while(1){ printf(%d,pid:%d\n,count,getpid()); sleep(1); } return 0; } //ctrl\终止进程并生成core文件 [wz192 Desktop]$ ./test 0,pid:44041 1,pid:44041 2,pid:44041 3,pid:44041 4,pid:44041 5,pid:44041 ^\Quit (core dumped) [wz192 Desktop]$ ll total 268 -rw-------. 1 wz wz 253952 8月 31 08:31 core.44041 -rw-rw-r--. 1 wz wz 60 8月 29 08:15 makefile -rwxrwxr-x. 1 wz wz 8464 8月 31 08:29 test -rw-rw-r--. 1 wz wz 157 8月 31 08:31 test.c[wz192 Desktop]$ gdb test GNU gdb (GDB) Red Hat Enterprise Linux 7.6.1-120.el7 Copyright (C) 2013 Free Software Foundation, Inc. License GPLv3: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type show copying and show warranty for details. This GDB was configured as x86_64-redhat-linux-gnu. For bug reporting instructions, please see: http://www.gnu.org/software/gdb/bugs/... Reading symbols from /home/wz/Desktop/test...(no debugging symbols found)...done. (gdb) core-file core.44041 [New LWP 44041] Core was generated by ./test. Program terminated with signal 3, Quit. #0 0x00007ff68f2e19e0 in __nanosleep_nocancel () from /lib64/libc.so.6 Missing separate debuginfos, use: debuginfo-install glibc-2.17-326.el7_9.x86_64 (gdb) 2调用系统函数向进程发送信号 //也可kill -11 51993 [wz192 ~]$ kill -SIGSEGV 51993 [wz192 Desktop]$ ./test 0,pid:51993 1,pid:51993 2,pid:51993 Segmentation fault (core dumped)kill命令是调用kill函数实现的该函数可给指定进程发送特定信号raise函数可给当前进程发送指定信号自己给自己发送信号abort函数使当前进程接收到信号而异常终止 3由软件条件产生信号 alarm函数可设定一个闹钟告诉内核在多少秒后给当前进程发送SIGALRM信号SIGALRM信号默认处理动作为终止当前进程 #include stdio.h #include unistd.h int main(){ int count 0; alarm(1); while(1){ printf(%d,pid:%d\n,count,getpid()); } return 0; } [wz192 Desktop]$ ./test ... 174838,pid:53084 174839,pid:53084 174840,pid:53084 174841,pid:53084 174842,pid:53084Alarm clock4硬件异常产生信号 即被硬件以某种方式检测到并通知内核然后内核向当前进程发送适当的信号如当前进程执行了除0的指令CPU的运算单元会产生异常内核将这个异常解释为SIGFPE信号发送给进程在如当前进程访问了非法内存地址内核将异常解释为SIGSEGV信号发送给进程 在C/C中除零、内存越界等异常在系统层面是被当成信号处理的 信号捕捉 #include stdio.h #include unistd.h #include signal.h void handler(int sig){ printf(catch a sig: %d\n, sig); } int main(){ signal(2, handler); int count 0; while(1){ printf(%d,pid:%d\n,count,getpid()); sleep(1); } return 0; } [wz192 Desktop]$ ./test 0,pid:53899 1,pid:53899 ^Ccatch a sig: 2 2,pid:53899 3,pid:53899 4,pid:53899 ^Ccatch a sig: 2野指针异常 #include stdio.h #include unistd.h #include signal.h void handler(int sig){ printf(catch a sig: %d\n, sig); } int main(){ //signal(SIGSEGV, handler); int *p NULL; *p 100; int count 0; while(1){ printf(%d,pid:%d\n,count,getpid()); sleep(1); } return 0; } [wz192 Desktop]$ ./test Segmentation fault (core dumped)所有信号的产生最终都是由OS进行执行的 信号不是立即处理的是在合适的时候才进行处理的
http://www.yutouwan.com/news/86968/

相关文章:

  • 怎么做用来表白的网站做电商一个月能挣多少钱
  • 深圳求做网站宣传片制作公司有哪些公司
  • 德州市市政工程建设总公司网站陕西建省级执法人才库
  • 怎么做无货源电商wordpress优化nginx
  • 凡度网络北京网站建设公司全球搜 建设网站
  • 网站开发工具.枫子科技网站地图提交给百度
  • 在线阅读小说网站怎么做文山网站建设哪家好
  • wordpress搭建付费网站国外设计工作室
  • 中国网站域名备案管理系统定制化网站建设公司
  • 感叹号分销系统黑帽seo软件
  • 搜索引擎搜不到网站惠州百度seo哪里强
  • 为什么公司的网站打不开软件跟网站开发的区别
  • 好网站建设公司昆明seo关键词优化软件
  • 网站备案 资讯福田补贴每人9000元
  • 哪个网站上门做护肤网站建设公司销售
  • 微信微信做移动网站优化快速排名软件
  • 旅游电商网站开发wordpress hide
  • 怎样建立企业网站关于网站建设中原创文章的一些想法
  • 成都教育行业网站建设宜昌永东建设网站
  • 网站怎么换域名网页设计与网站建设期末考试试卷
  • 焦作网站建设如何在公司建网站系统
  • 品牌网站建设公司推荐什么网站可以做2.5D场景
  • 婚庆网站设计建设合同施工合同示范文本
  • 主机做网站服务器吗网站建设公司创业
  • 广西城乡和建设厅网站p2p网站建设多少钱
  • 琼海做网站wordpress仿内涵段子
  • 传统网站模板影视传媒网站源码
  • 北京企业建设网站公司教务系统管理
  • 建设学校网站前的需求分析vi设计应用部分有哪些
  • 机械产品做哪个网站优秀品牌vi设计公司