
计算机系统
从应用程序到底层实现
¥41.00
加载中,请稍候……
作品简介
本书从程序员的角度来详细说明计算机系统的本质概念,并展示这些概念如何影响应用程序的正确性与性能,强调在实际系统的操作中发现问题、分析问题和解决问题,特别注意引导学生建立“计算机系统”的概念,将程序代码的编写、编译及运行与机器内部特性紧密结合起来。
本书将讲解计算机系统中的底层实现过程,引导读者编写更高效的程序,成为更有效率的程序员——能够更有效的找出并消除程序中的bug,能够更好的进行程序性能调忧,并为以后的计算机类“系统级”课程,如编译原理、操作系统、网络原理等的学习打好基础。
赵欢,湖南大学二级教授、博士生导师,岳麓学者领军岗,湖南省芙蓉教学名师,宝钢优秀教师特等奖、霍英东教育基金会首屈教育教学奖、教育部-华为“智能基座”优秀教师和高校计算机专业优秀教师奖励计划获得者。国家级一流本科专业、国家级一流本科课程、国家精品课程和国家级精品资源共享课负责人,牵头的教学成果获2022年国家级教学成果二等奖,主编国家级规划教材8本。带领团队长期致力于计算机系统能力培养教育教学改革,牵头的“鲲鹏计算机系统能力培养课程群虚拟教研室”获教育部虚拟教研室建设试点,负责的“计算机系统”课程获首批国家级一流本科课程。
杨科华,湖南大学副教授、博士生导师,长期致力于计算机系统能力培养教育教学改革,湖南省一流本科课程、华为智能基座金课负责人,首批华为开发者布道师,获湖南大学优秀教师、湖南大学教学优秀奖等奖项。开发了miniCC工具链、VSPM原型机等教学案例,入选教育部“101计划”实践平台成果手册。
作品目录
前言
第1章 概论
1.1 计算机系统的基本功能和基本组成
1.2 程序的开发与执行过程
1.3 计算机系统的层次结构
小结
第2章 二进制以及信息的组织与表示
2.1 二进制及进制转换
2.2 信息的组织与表示
小结
习题
第3章 最小系统与原型系统
3.1 最小系统
3.2 原型系统
小结
习题
第4章 ATT汇编语言
4.1 机器指令、汇编语言与高级语言
4.2 ATT汇编语言基础知识
小结
习题
第5章 数的表示与处理
5.1 整数的表示
5.2 整数的运算
5.3 浮点数
小结
习题
第6章 程序的机器级表示
6.1 控制
6.2 过程
6.3 数组分配和访问
6.4 其他数据结构
6.5 存储器越界引用和缓冲区溢出
小结
习题
第7章 链接
7.1 不应忽略的链接
7.2 编译系统中的链接器
7.3 静态链接
7.4 目标文件
7.5 可重定位目标文件
7.6 符号表和符号
7.7 符号解析
7.8 重定位
7.9 共享库
小结
习题
第8章 存储器层次结构
8.1 存储技术
8.2 局部性
8.3 存储器层次结构
8.4 高速缓存
小结
习题
第9章 异常控制流
9.1 异常
9.2 进程
9.3 进程控制
9.4 信号
小结
习题
第10章 虚拟存储
10.1 地址空间
10.2 虚存的功能
10.3 从虚拟地址到物理地址
10.4 Linux的虚存系统
10.5 存储器映射
10.6 动态存储分配器
小结
习题
第11章 程序优化
11.1 计算机系统的功能与性能
11.2 编译器优化代码
11.3 程序性能的度量
11.4 一个程序的进化过程
11.5 计算机体系结构与处理器
11.6 循环展开
11.7 提高并行性
11.8 理解存储器性能
11.9 Amdahl定律与Gustafson定律
小结
习题
附录 VSPM-CPU的设计
A.1 目的
A.2 基本任务
A.3 数据格式与指令系统
A.4 VSPM-CPU结构
A.5 指令的执行
A.6 模型机的实现
A.7 模型机测试
推荐阅读