分类: 系统运维
2012-03-30 18:40:00
信号是软件中断。多数不平凡的应用程序需要处理信号。信号提供了一种处理异步事件的方式:终端的一个用户敲入中断键来停止一个程序,或管道的下一个进程过早地终止。
信 号自从UNIX系统的早期版本就被提供,但如版本7的系统提供的信号模型是不可靠的。信号可能会丢失,而且进程当执行代码的临界区域时很难关闭选定的信 号。4.3BSD和SVR3都改变了信号模型,加入了被称为可靠的信号。但是这种改变使用Berkeley和AT&T不能兼容。幸运的 是,POSIX.1标准化了可靠信号例程,这也是我们在这描述的。
在这章,我们从信号的总览和每个信号通常用来做什么的描述开始。然后我们看到更早的实现的问题。在看如何正确做事前,了解某个实现的问题,是很重要的。本章包括了不完全对的许多例子和缺陷的讨论。