- 本笔记基于中国大学Mooc 《计算机系统基础(一):程序的表示、转换与链接》课程,由 南京大学袁春风教授授课。
- 教材《深入理解计算机系统》
课程总目标:理解计算机是如何生成和运行可执行文件的
强化理解而不是记忆!
我们衷心感谢伟大的技术作家Brian Kernigam以及后来的W.Richard Stevens,他们向我们证明了技术书籍也能写得如此优美。
三个主题,两大部分:
表示(Representation) 转换(Translation)
执行控制流 (Control Flow)
一、系统思维分析问题
1.1 知其所以然——千万不能想当然,必须动手实践!
1.2 语法和语义都是骗人的
1.3 临界值容易存在溢出漏洞
1.4 指令层面理解——01序列
二、计算机系统抽象层次结构
软件与硬件的交界面——ISA指令集体系结构(Instruction Set Architecture)
规定软件如何使用硬件
三、计算机历史
3.1 冯诺依曼结构的主要思想——存储+程序,自动完成
3.2 总线结构
四、后PC时代特点
4.1 大规模 分布式 多粒度并行
4.2 并行——培养系统的软硬件贯通人才