8.1异常
8.1.1异常处理
8.1.2异常的分类
1.中断
2.陷阱和系统调用
3.故障
4.终止
8.1.3Linux/X86-64系统中的异常
1.Linux/X86-64故障和终止
2.Linux/X86-64系统调用
8.2进程
8.2.1逻辑控制流
进程是轮流使用处理器的。每个进程执行它的流的一部分,然后被抢占,然后轮到其他进程,对于一个运行在这些进程之一的上下文的程序,它看上去就像是在独占地使用处理器。
8.2.2并发流
如果两个流并发地运行在不同的处理器核或计算机上,那么就称其为并行流。
8.2.3私有地址空间
8.2.4用户模式和内核模式
8.2.5上下文切换
8.3系统调用错误处理
8.4进程控制
8.4.1获取进程ID
8.4.2创建和终止进程
8.4.3回收子进程
8.4.4让进程休眠
8.4.5加载并运行程序
8.4.6利用fork和execve运行程序
8.5信号
8.5.1信号术语
8.5.2发送信号
1.进程组
2.用bin/kill程序发送信号
3.从键盘发送信号
4.用kill函数发送信号
5.用alarm发送信号
8.5.3接收信号
8.5.4阻塞和解除阻塞信号
8.5.5编写信号处理程序
1.安全的信号处理
2.正确的信号处理
不可以用信号来对其它进程中发生的事件计数
3.可移植的信号处理
8.5.6同步流以避免讨厌的并发错误
以某种方式同步并发流,从而得到最大的可行的交错的集合,每个可行的交错都能得到正确的结果。
8.5.7显式地等待信号
8.6非本地跳转