视频地址:
http://player.bilibili.com/player.html?aid=31289365&bvid=BV1iW411d7hd&cid=76899182&page=14
课件地址:
本章对应书本的8.1-8.4。
从系统加电到断点,程序计数器都假设一个值的序列 ,其中每个值是一个指令地址。这里将从 跳转到 的过程称为控制转移(Control Transfer),将控制转移序列称为物理控制流(Flow of Control或Control Flow)。当控制流中相邻指令地址在内存是相邻的,则称该控制流是平滑的,否则存在突变,比如分支跳转或方法调用。
系统会通过使控制流发生突变来对系统状态的变化做出反应,比如必须处理硬件定时器定期产生的信号、必须将到达网络适配器的数据包存放在内存等等,这种突变称为异常控制流(Exceptional Control Flow,ECF)。ECF存在不同的层次:
call
和return
模式。学习ECF的意义在于: