Structured Computer Organization - 结构化计算机组成(第6版)

基本信息

  • 作者: Andrew S. Tanenbaum, Todd Austin
  • 版本: 第6版(2013年)
  • 出版社: Pearson/Prentice Hall
  • 页数: 801页(含索引)
  • ISBN: 978-0-13-291652-3

核心思想

本书采用分层抽象方法讲解计算机系统,将计算机视为多个层次结构,每一层实现特定的功能,对上层隐藏实现细节:

  1. 数字逻辑层(Digital Logic Level)— 门电路、触发器、寄存器
  2. 微架构层(Microarchitecture Level)— 数据通路、微指令
  3. 指令集架构层(ISA Level)— 指令格式、寻址模式
  4. 操作系统机器层(Operating System Machine Level)— 虚拟内存、文件I/O
  5. 汇编语言层(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文本提取生成,书籍为教材性质,内容全面但页数较多,建议按需查阅特定章节。