20145301《信息安全系统设计基础》第12周学习总结
教材学习内容总结
视频学习
指针和声明
- c语言中变量的声明:
- 类型
- 声明符
- 指针数组:是数组,数组里的元素是指针
int *daytab[13] - 数组指针:是指针,指向一个类型和元素个数都固定的数组
int (*daytab1)[13] - 指针函数:是函数,返回值类型是指针
int *comp() -
函数指针:是指针,指向函数的指针,函数名就是函数指针
int (*comp1)() -
右左右左法判断类型: 每次分析不要跨过括号,位于右边的小括号和中括号具有更高的优先级。
1.数组一定要告诉元素个数和数据类型
2.函数一定有形参和返回值类型
3.数组指针,函数指针,*和指针要括起来。
信号处理
- 信号是Linux系统响应某些条件而产生的一个事件,接收到该信号的进程会执行相应的操作。
信号的产生
- 由用户产生,如:Ctrl+C产生SIGINT信号等,可以通过stty -a查看哪些按键可以产生信号
- 由硬件产生,如:当前进程执行了除以0的指令
- 由进程发送,如:可在shell进程下,使用命令 kill -信号标号 PID,向指定进程发送信号。
- 由内核产生,如:闹钟超时产生SIGALRM信号。
信号的处理
- 信号是由操作系统来处理的,说明信号的处理在内核态。信号不一定会立即被处理,此时会储存在信号的信号表中。
- 信号的三种处理方式:
- 执行默认操作
- 忽略信号
- 捕捉信号:执行信号处理函数,切换到用户态
- 捕捉信号 利用命令man -k signal进行检索相关函数:
- 查看
SIG_IGN
宏变量: - 查看
SIG_DFL
宏变量:
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 4000行 | 24篇 | 400小时 | |
第一周 | 150/150 | 1/2 | 15/15 | 对Linux有了初步的认识 |
第二周 | 200/350 | 1/3 | 20/35 | vim的使用 |
第三周 | 250/600 | 1/4 | 20/55 | 各种信息的表示方法 |
第五周 | 250/850 | 1/5 | 25/80 | 汇编与反汇编 |
第六周 | 150/1000 | 1/6 | 25/105 | Y86 |
第七周 | 74/1074 | 1/7 | 25/130 | 各类存储器 |
第八周 | 0/1074 | 2/9 | 20/150 | 错题总结 |
第九周 | 109/1183 | 2/11 | 25/175 | 系统级I/O |
第十周 | 453/1636 | 2/13 | 25/200 | 测试代码 |
第十一周 | 912/2548 | 2/15 | 30/230 | 异常控制流 |
第十二周 | 0/2548 | 2/17 | 20/250 | 指针与声明 |