图书介绍

深入理解计算机系统PDF|Epub|txt|kindle电子书版本网盘下载

深入理解计算机系统
  • (美)Randal E. Bryant,(美)David OHallaron著;龚奕利,雷迎春译 著
  • 出版社: 北京:中国电力出版社
  • ISBN:7508321758
  • 出版时间:2004
  • 标注页数:830页
  • 文件大小:71MB
  • 文件页数:853页
  • 主题词:计算机系统-高等学校-教材

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

深入理解计算机系统PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章计算机系统漫游1

1.1信息就是位+上下文2

1.2程序被其他程序翻译成不同的格式4

1.3了解编译系统如何工作是大有益处的5

1.4处理器读并解释储存在存储器中的指令6

1.5高速缓存9

1.6形成层次结构的存储设备10

1.7操作系统管理硬件11

1.8利用网络系统和其他系统通信15

1.9下一步17

1.10小结17

第1部分程序结构和执行21

第2章信息的表示和处理21

2.1信息存储23

2.2整数表示42

2.3整数运算54

2.4浮点66

2.5 小结81

第3章程序的机器级表示103

3.1 历史观点105

3.2程序编码107

3.3数据格式112

3.4访问信息113

3.5算术和逻辑操作119

3.6控制124

3.7过程143

3.8数组分配和访问152

3.9异类的数据结构161

3.10对齐(alignment)168

3.11综合:理解指针169

3.12现实生活:使用GDB调试器173

3.13存储器的越界引用和缓冲区溢出174

3.14浮点代码178

3.15在C程序中嵌入汇编代码188

3.16小结194

第4章处理器体系结构217

4.1 Y86指令集体系结构219

4.2逻辑设计和硬件控制语言HCL231

4.3 Y86的顺序(sequential)实现239

4.4流水线的通用原理262

4.5 Y86的流水线实现270

4.6小结304

第5章优化程序性能321

5.1优化编译器的能力和局限性323

5.2表示程序性能325

5.3程序示例327

5.4消除循环的低效率329

5.5减少过程调用333

5.6消除不必要的存储器引用334

5.7理解现代处理器336

5.8降低循环开销347

5.9转换到指针代码350

5.10提高并行性353

5.11 综合:优化合并(Combing)代码的效果小结360

5.12分支预测和预测错误处罚362

5.13理解存储器性能364

5.14现实生活:性能提高技术371

5.15确认和消除性能瓶颈372

5.16小结377

第6章存储器层次结构387

6.1存储技术388

6.2局部性406

6.3存储器层次结构410

6.4 高速缓存存储器414

6.5编写高速缓存友好的代码430

6.6综合:高速缓存对程序性能的影响435

6.7综合:利用程序中的局部性446

6.8小结446

第2部分在系统上运行程序461

第7章链接461

7.1编译器驱动程序462

7.2静态链接464

7.3 目标文件464

7.4可重定位目标文件465

7.5符号和符号表466

7.6符号解析469

7.7重定位476

7.8可执行目标文件481

7.9加载可执行目标文件482

7.10动态链接共享库483

7.11 从应用程序中加载和链接共享库485

7.12与位置无关的代码(PIC)487

7.13处理目标文件的工具490

7.14小结491

第8章异常控制流501

8.1异常503

8.2进程508

8.3系统调用和错误处理513

8.4进程控制514

8.5信号528

8.6非本地跳转545

8.7操作进程的工具548

8.8小结548

第9章测量程序执行时间559

9.1计算机系统上的时间流561

9.2通过间隔计数(interval counting)来测量时间565

9.3周期计数器568

9.4用周期计数器来测量程序执行时间570

9.5基于gettimeofday函数的测量583

9.6综合:一个实验协议586

9.7展望未来586

9.8现实生活:K次最优测量方法586

9.9得到的经验教训587

9.10 小结587

第10章虚拟存储器593

10.1物理和虚拟寻址595

10.2地址空间596

10.3虚拟存储器作为缓存的工具597

10.4虚拟存储器作为存储器管理的工具601

10.5虚拟存储器作为存储器保护的工具604

10.6地址翻译604

10.7案例研究:Pentium/Linux存储器系统614

10.8存储器映射622

10.9动态存储器分配627

10.10垃圾收集648

10.11 C程序中常见的与存储器有关的错误652

10.12扼要重述一些有关虚拟存储器的关键概念656

10.13小结657

第3部分程序间的交互和通信669

第11章系统级I/O669

11.1 Unix I/O670

11.2打开和关闭文件671

11.3 读和写文件673

11.4用Rio包进行健壮地读和写674

11.5读取文件元数据679

11.6共享文件681

11.7 I/O重定向684

11.8标准I/O685

11.9综合:我该使用哪些I/O函数?686

11.10小结687

第12章网络编程691

12.1 客户端-服务器编程模型692

12.2网络693

12.3全球IP因特网697

12.4套接字接口704

12.5 Web服务器712

12.6综合:Tiny Web服务器719

12.7小结726

第13章并发编程731

13.1基于进程的并发编程733

13.2基于I/O多路复用的并发编程736

13.3基于线程的并发编程744

13.4多线程程序中的共享变量749

13.5用信号量同步线程752

13.6综合:基于预线程化的并发服务器762

13.7其他并发性问题765

13.8小结772

附录A处理器控制逻辑的HCL描述783

A.1 HCL参考手册784

A.2 SEQ788

A.3 SEQ+792

A.4 PIPE796

附录B错误处理805

B.1 Unix系统中的错误处理806

B.2错误处理包装函数808

B.3 csapp.h头文件809

B.4 csapp.c源文件813

热门推荐