第一章   温故而知新
 
1     计算机硬件结构
原理结构依然是经典的CPU、内存、IO的基本结构。后来发展为北桥南桥互联结构,北桥负责CPU与内存和PCI总线等高速设备的互联,而南桥负责连接USB等低速设备。
 
2     SMP与多核
SMP与多核其实可以统一,SMP是在memory层级进行共享。而多核是在Cache层级进行共享。
 
3     中间层
计算机科学领域的任何问题都可以通过增加一个间接地中间层来解决!每个层次通过接口进行通信,如应用程序接口、系统调用接口、硬件规格。
 
4     操作系统
操作系统管理所有的硬件资源。操作系统开发者为硬件生产厂商提供了一套接口和框架,凡是按照这个接口和框架开发的程序都可以运行在该操作系统上。
 
5     内存
没有内存管理,应用程序直接访问物理地址会有三个弊端:
第一:地址空间不隔离。应用程序可能会破坏其他程序地址中的数据。
第二:内存使用率低下。应用程序在内存中是整出整进,影响效率。
第三:程序运行的地址不确定。每次装入时地址都不同,需要进行重地位。
解决方法:增加中间层,即虚拟地址空间。
分段:将一段程序所需要的内存空间大小的虚拟空间映射到某个物理空间。这样就实现了地址空间隔离,而且不需要重定位。
分页:将内存划分为一个一个大小相同的页,同时将进程的虚拟地址空间按页分割。提高了内存的使用效率。页映射需要硬件MMU来实现,CPU面对的是虚拟地址。
 
6     线程