Structured Computer Organization - 结构化计算机组成(第6版)
基本信息
- 作者: Andrew S. Tanenbaum, Todd Austin
- 版本: 第6版(2013年)
- 出版社: Pearson/Prentice Hall
- 页数: 801页(含索引)
- ISBN: 978-0-13-291652-3
核心思想
本书采用分层抽象方法讲解计算机系统,将计算机视为多个层次结构,每一层实现特定的功能,对上层隐藏实现细节:
- 数字逻辑层(Digital Logic Level)— 门电路、触发器、寄存器
- 微架构层(Microarchitecture Level)— 数据通路、微指令
- 指令集架构层(ISA Level)— 指令格式、寻址模式
- 操作系统机器层(Operating System Machine Level)— 虚拟内存、文件I/O
- 汇编语言层(Assembly Language Level)— 宏、链接加载
主要内容章节
第1章:引言
- 计算机历史里程碑:从机械计算机(1642-1945)到第五代低功耗隐形计算机
- 计算机类型谱系:从一次性计算设备到大型机
- 三大示例架构:Intel Core i7、TI OMAP4430(ARM)、Atmel ATmega168(AVR)
第2章:计算机系统
- 处理器:RISC vs CISC、指令级并行、处理器级并行
- 主存:位、字节序、纠错码、缓存
- 次级存储:磁盘、IDE/SCSI、RAID、SSD、光存储
- I/O设备:总线、终端、鼠标、打印机、数码相机
第3章:数字逻辑层
- 门电路与布尔代数
- 基本数字逻辑电路:集成电路、组合电路、算术电路、时钟
- 存储器:锁存器、触发器、寄存器、RAM/ROM芯片
- CPU芯片与总线:PCI、PCI Express、USB
第4章:微架构层
- 示例微架构与数据通路
- IJVM(Java虚拟机)指令集与实现
- 设计原则:速度vs成本、预取、流水线(Mic-1到Mic-4)
- Core i7、OMAP4430、ATmega168的微架构比较
第5章:指令集架构
- 数据类型(数值、非数值)
- 指令格式与扩展操作码
- 寻址模式(立即、直接、寄存器、寄存器间接、基址变址等)
- 指令类型:数据移动、算术、比较跳转、过程调用
- IA-64/Itanium架构介绍
第6章:操作系统
- 虚拟内存:分页、请求分页、页面置换、分段
- 硬件虚拟化
- OS级I/O指令与文件系统
- 并行处理的OS级指令
- Windows 7、UNIX示例
第7章:汇编语言
- 汇编语言基础与格式
- 宏定义与展开
- 汇编过程(两遍汇编器)
- 链接与加载
第8章:并行计算机架构
- 片上并行:指令级并行、多线程、多核
- 协处理器:网络处理器、GPU、密码处理器
- 共享内存多处理器:UMA、NUMA、COMA
- 消息传递多计算机:MPP、集群、网格计算
关键概念总结
| 概念 | 说明 |
|---|---|
| 分层抽象 | 计算机系统由多个抽象层构成,每层为上层提供服务 |
| RISC vs CISC | 精简指令集 vs 复杂指令集设计哲学 |
| 虚拟内存 | 分页机制实现内存抽象,支持多任务隔离 |
| 流水线 | 指令执行重叠以提高吞吐量 |
| 缓存局部性 | 空间局部性与时间局部性是缓存有效性的基础 |
| NUMA | 非均匀内存访问,多处理器架构中的内存层次问题 |
适用对象
- 计算机科学专业本科生/研究生
- 需要了解硬件底层原理的软件工程师
- 嵌入式系统开发者(ATmega168/AVR部分)
本笔记基于pdf-inspector文本提取生成,书籍为教材性质,内容全面但页数较多,建议按需查阅特定章节。