首页 > 其他分享 >第六章学习心得

第六章学习心得

时间:2022-10-30 15:33:43浏览次数:57  
标签:信号处理 学习心得 catch Unix 信号 第六章 signal define

知识点归纳


信号和信号处理;
信号和中断的统一处理
将信号视为进程中断,将进程从正常执行转移到信号处理
信号的来源,包 括来自硬件、异常和其他进程的信号
信号在Unix/Linux中的常见用法
Unix/Linux中的信号处理
信号类型
信号向量位
信号掩码位
进程 PROC结构体中的信号处理程序
信号处理步骤
Unix/Linux支持31种不同的信号,每种信号在signal.h文件中都有定义。

#define  	SIGHUP  	1
#define  	SIGINT  	2
#define  	SIGQUIT  	3
#define  	SIGILL  	4
#define  	SIGTRAP  	5
#define  	SIGABRT  	6
#define  	SIGIOT  	6
#define  	SIGBUS  	7
#define  	SIGFPE  	8
#define  	SIGKILL  	9
#define  	SIGUSR1  	10
#define  	SIGSEGV  	11
#define  	SIGUSR2  	12
#define  	SIGPIPE  	13
#define  	SIGALRM  	14
#define  	SIGTERM	        15
#define  	SIGSTKFLT	16
#define  	SIGCHLD    	17
#define  	SIGCONT	        18
#define  	SIGSTOP      	19
#define  	SIGTSTP	        20
#dpfine  	STGTTTN	        21
#define  	SIGTTOU	        22
#define  	SIGURG	        23
#define  	SIGXCPU	        24
#define  	SIGXFSZ    	25
#define  	SIGVTALRM	26
#define  	SIGPROF  	27
#define  	SIGWINCH	28
#define  	SIGPOLL  	29
#define  	SIGPWR	        30
#define  	SIGSYS	        31

问题与解决思路


这应该和信号处理的具体实现有关,其数据结构是位图,而不是链表或者数组

当一个信号产生时,对应的位就会翻转成1,信号处理后,该位翻转回0

也就是说,如果在信号处理期间,多次Ctrl+c,只是多次让该信号对应的位变成1,其效果和一次Ctrl+c的效果一样

实践内容

signal函数

  1 #include <stdio.h>
  2 #include <signal.h>
  3 void sig_catch(int signo){
  4     printf("catch you : %d\n",signo);
  5     return ;
  6 }
  7 
  8 int main(){
  9     signal(SIGINT,sig_catch);
 10     while(1);
 11     return 0;
 12 }

标签:信号处理,学习心得,catch,Unix,信号,第六章,signal,define
From: https://www.cnblogs.com/zhou-huilin/p/16841387.html

相关文章

  • 20201208史逸霏第六章学习笔记
    6.1~6.3信号和中断中断:中断是I/O设备发送到CPU的外部请求,将CPU从正常执行转移到中断处理。信号:信号是发送给进程的请求,将进程从正常执行转移到中断处理。中断的类型:......
  • 《Unix&Linux系统编程》第六章学习笔记
    第6章信号和信号处理6.1信号和中断中断是从I/O设备或协处理器发送到CPU的外部请求,将CPU从正常执行转移到中断处理。信号是发送给进程的请求,将进程从正常执行转移到中断......
  • 《Unix/Linux系统编程》第六章学习笔记
    第6章信号和信号处理摘要本章讲述了信号和信号处理;介绍了信号和中断的统一处理,有助于从正确的角度看待信号;将信号视为进程中断,将进程从正常执行转移到信号处理;解释了信......
  • 第六章学习笔记
    一、梗概本章讲述了信号和信号处理;介绍了信号和中断的统一处理,有助于从正确的角度看待信号;将信号视为进程中断,将进程从正常执行转移到信信号处理;解释了信号的来源,包括......
  • 第六章信号与信号处理
    第六章信号与信号处理6.1信号和中断由I/O设备或者协议处理器发送到外部请求,它将CPU从正常执行转移到中断处理。(1)人员中断,人员再次上线后能够继续之前的事项(2)进程中断,......
  • 10月学习心得体会
    1、主要精力是在学习2门慕课,其中大数据技术完成第3-7章学习,实践练习只是完成部分。Spark基础编程,学习第2章部分内容。比预期进度慢,在搭建大数据开发环境上,在笔记本和台式机......
  • 20201220蔡笃俊《信息安全系统设计与实现》第六章学习笔记
    一、任务内容自学教材第6章,提交学习笔记(10分)知识点归纳以及自己最有收获的内容(3分)问题与解决思路(2分)实践内容与截图,代码链接(3分)...(知识的结构化,知识的完整性等,提交m......
  • 学习心得 HDFS读数据过程
    HDFS读数据过程   第一步:打开文件。用Fliesystem先申明一个对象,然后生成一个子类DistributedFileSystem,这个时候生成FS的实例对象,其实是分布式文件系统HDFS的实例对象......
  • 《STM32MP1 M4裸机HAL库开发指南》第六章 新建MDK工程
    第六章新建MDK工程​本教程所有例程都是在MDK下编写、编译和调试的,因此首先要学习的就是如何新建MDK工程,本章就来讲解一下最基本的MDK工程创建方法,工程创建成功以后用汇编......
  • 第六章 函数
    6.1函数基础调用函数:函数的调用将完成两项工作,一是实参初始化函数对应的形参;二是控制权从从主调函数转移到被调函数,主调函数的执行被中断,被调函数开始执行。当函数遇到ret......