1. 产生信号的五种方式

    • 用户按某些终端键
    • 硬件异常
    • 进程调用kill函数
    • 用户使用kill命令
    • 检测到某种软件条件已经发生
  2. 处理信号的三种方式
    • 忽略(SIGKILL,SIGSTOP不能被忽略)
    • 捕捉(SIGKILL,SIGSTOP不能被捕捉)
    • 执行系统默认动作
  3. 大多数Unix系统调试程序用core文件检查进程终止时的状态
  4. exec函数将原先设置为要捕捉的信号都更改为默认动作,其他信号的状态不变(一个进程原先要捕捉的信号,当其执行一个新程序后就不能再捕捉了,因为信号捕捉函数的地址很可能在所执行的新程序文件中已无意义)
  5. 在signal函数使用中,不改变信号的处理方式就不能确定信号的当前处理方式
  6. 子进程继承父进程的信号处理方式,因为子进程复制了父进程的内存映像,所以信号捕捉函数的地址在子进程中是有意义的
  7. 不可重入函数
    • 使用静态数据结构
    • 调用malloc或free
    • 是标准I/O函数,标准I/O库的很多实现都以不可重入的方式使用全局数据结构
  8. 在信号处理程序中调用可重入函数时,应在调用前保存errno,调用后恢复errno
  9. 除非支持POSIX.1实时扩展,否则大多数UNIX并不对信号排队,而是只递送该信号一次
  10. 在信号产生(generation)和递送(delivery)之间的时间间隔内,称信号是未决的(pending)
  11. 如果是非超级用户,基本规则是发送者的实际用户ID或有效用户ID必须等于接收者的实际用户ID或有效用户ID;特例:被发送的信号为SIGCONT,进程可将其发给属于同一会话的任一其他进程
  12. 12.

APUE读书笔记-第十章-信号相关推荐

  1. APUE学习笔记——第十章信号中10.15节例程的运行结果与书本里的不一样

    1.程序 #include "apue.h" #include <setjmp.h> #include <time.h> static sigjmp_buf ...

  2. APUE读书笔记 之 进程关系

    这一章的内容在读第一遍的时候完全是在"看",当时还以为"看"的挺明白. 现在读第二遍,并准备写这篇读书笔记时,才发现,我第一遍读的时候,什么都没"看& ...

  3. apue读书笔记-第十二章

    1 可重入,线程安全,异步信号安全之间的区别? 可重入:可以重复进入,不会引起问题(这个概念最宽) 线程安全:被多个线程使用时,不会出问题,也就是可以被多个进程重入(新函数和被终端和被中断的函数不在同 ...

  4. APUE读书笔记-第14章-高级I/O

    14.1 引言 *高级I/O包括非阻塞I/O.记录锁.系统V流机制.I/O多路转换(select和poll函数).readv和writev函数以及存储映射I/O(mmap) 14.2 非阻塞I/O * ...

  5. APUE读书笔记-第15章-进程间通信

    15.1 引言 *进程之间交换信息的方法可以经由fork或exec传送打开文件,或者通过文件系统 *进程之间相互通信的其他技术--IPC(InterProcess Communication)包括半双 ...

  6. Java编程思想读书笔记——第十章:内部类

    第十章 内部类 将一个类的定义放在另一个类的内部,这就是内部类 内部类和组合是完全不同的概念,内部类了解外部类 10.1 创建内部类 创建就好,好像没啥可说的,直接来上练习: 练习1:(1)编写一个名 ...

  7. APUE读书笔记-第十一章-线程

    新创建的线程可以访问进程的地址空间,并且继承调用线程的浮点环境和信号屏蔽字,但是该线程的挂起信号集会被清除 新线程时调用pthread_self函数获取自己的线程ID,而不是从共享内存中读出,或者从线 ...

  8. APUE读书笔记-第十五章-进程间通信

    管道 创建管道(pipe函数) #include <unistd.h> int pipe(int fd[2); fd[0]为读打开,fd[1]为写打开 局限性 (1)管道是半双工的,数据只 ...

  9. 读书笔记-城市道路交通信号区域均衡控制方法及应用研发

    区域协调控制研究: 根据优化目标不同:基于时间-距离图的绿波带优化法.基于交通流模拟的效益指标优化法(如饱和度.停车次数.延误及行程时间) 根据适用的交通流状态的不同:面向非饱和交通流的区域协调控制. ...

最新文章

  1. C#开发Unity游戏教程之Scene视图与脚本的使用
  2. 20145226夏艺华 《Java程序设计》第3周学习总结
  3. Android开发之EditText限制输入中文以及字数长度限制的标准姿势
  4. 每日英语:Go Ahead, Hit the Snooze Button
  5. 145. Binary Tree Postorder Traversal
  6. Angular项目中核心模块core Module只加载一次的实现
  7. 苹果公司发布TestFlight Groups,放宽二进制版本提交限制
  8. C# 改变图片大小的功能代码片段 (wince5)
  9. 插件占坑,四大组件动态注册前奏(三) 系统BroadCast的注册发送流程
  10. axhline函数--Matplotlib
  11. js margin作用到父元素_子元素的 margin-top 传递给了父元素
  12. rename 命令批量修改后缀
  13. 高斯函数与高斯核函数
  14. 数据库——数据库练习题
  15. 看完这篇,轻松解决FastReport合并单元格!
  16. 推荐几个常用的Python扩展工具包
  17. 微信小程序一定要设置服务器域名,微信小程序 设置域名 必须是https么
  18. meta是什么意思中文_Meta 的意思是什么?
  19. 跨境电商o2o模式的表现形式有哪些?
  20. 易班自动打卡+钉钉机器人消息提醒

热门文章

  1. RabbitMQ内存消耗
  2. 献给那些浮躁的职场人(转)
  3. 【珠穆朗玛峰编程练习题】
  4. Android 面向切面编程(AOP)
  5. 十一假期,我在头等舱里,看到了自已贫穷的真相!
  6. 【camera】数字成像系统—初识
  7. java短信接口-单条短信接口
  8. 数据指标拆解(一)社区团购--美团优选
  9. windows流氓软件卸载
  10. C语言规定 定义符号常量时必须用大写字母,C语言规定,定义符号常量时必须用大写字母()...