CSAPP
latest
计算机系统漫游
信息的表示和处理
程序的机器级表示
处理器体系结构
优化程序性能
存储器层次结构
链接
异常控制流
虚拟存储器
系统级I/O
网络编程
并发编程
CSAPP
Docs
»
Welcome to OS’s documentation!
Edit on GitHub
Welcome to OS’s documentation!
¶
Contents:
计算机系统漫游
信息就是Bits+上下文
程序被其他程序翻译成不同的格式
了解编译系统如何工作室大有益处的
处理器读取并解释存储在存储器中的指令
高速缓存
存储设备的层次结构
操作系统管理硬件
信息的表示和处理
信息存储
整数表示
整数运算
浮点数
程序的机器级表示
程序编码
数据格式
访问信息
算术和逻辑操作
控制
过程
数组的分配和访问
异类的数据结构
理解指针
存储器的越界引用和缓冲区溢出
处理器体系结构
Y86指令集体系结构
逻辑设计和硬件控制语言HCL
Y86的顺序实现
流水线的通用原理
Y86的流水线实现
优化程序性能
优化编译器的能力和局限性
表示程序性能
消除循环的低效率
减少过程调用
消除不必要的存储器引用
理解现代处理器
循环展开
提高并行性
确定和消除性能瓶颈
存储器层次结构
存储技术
局部性
存储器层次结构
高速缓存存储器
编写高速缓存友好的代码
高速缓存对程序性能的影响
链接
编译器驱动程序
静态链接
目标文件
可重定位目标文件
符号和符号表
符号解析
重定位
可执行目标文件
加载可执行文件
动态链接共享库
异常控制流
异常
进程
系统调用和错误处理
进程控制
信号
非本地跳转
操作进程的工具
虚拟存储器
物理和虚拟寻址
地址空间
虚拟存储器作为缓存的工具
虚拟存储器作为存储管理的工具
虚拟存储器作为存储器保护的工具
地址翻译
存储器映射
动态存储器分配
垃圾收集
C程序中常见的与存储器相关的错误
系统级I/O
Unix I/O
打开和关闭文件
读和写文件
共享文件
I/O重定向
我们该使用哪些I/O函数
网络编程
客户端-服务器编程模型
网络
全球IP因特网
套接字接口
Web服务器
并发编程
基于进程的并发编程
基于I/O多路复用的并发编程
基于线程的并发编程
多线程程序中的共享变量
用信号量同步线程
其他并发性问题