第一图书网

系统级编程

李丹程,朱志良 主编 西北工业大学出版社
出版时间:

2011-12  

出版社:

西北工业大学出版社  

作者:

李丹程,朱志良 主编  

页数:

217  

内容概要

   本书以Visual
C+十作为开发工具和平台,首先介绍了程序的调试、数据和方法的调用原理以及在计算机中数据的存储格式;其次介绍了存储空间的布局、分配和对于一般内存错误的处理办法;最后介绍了计算机操作系统的基本原理,主要涉及线程、进程及它们之间的调度等知识。
本书兼顾理论和实践两方面,让读者可以通过动手实践来掌握和理解知识要点。
本书既可作为高等院校计算机及其相关专业的教材,也可作为广大工程技术人员和自学者的参考用书。

书籍目录

第1章 编程初探
1.1 电脑的最小信息单位
1.2 程序转化成计算机能读懂的指令
1.3 处理器读并解释储存在存储器中的指令
1.4 信息的存储
1.5 操作系统的作用
第2章 计算机中的数据格式
2.1 位和位操作
2.2 整型数据
2.3 浮点数
2.4 结构化数据
2.5 非数值数据的表示
第3章 C语言编程模型
3.1 奇妙的程序
3.2 Visual C++调试器
3.3 变量和地址
3.4 数据和方法调用
3.5 代码
第4章 存储空间布局及分配
4.1 几种内存的使用方式
4.2 几种常见的内存错误
4.3 避免内存错误
第5章 性能测试和改进
5.1 度量和性能测试
5.2 热点
5.3 使用提示
5.4 实际项目中程序性能测试
第6章 存储操作与性能
6.1 存储系统
6.2 高速缓存
6.3 虚拟内存(VM)
第7章 计算机和操作系统的交互
 7.1 分时与进程
 7.2 线程
 7.3 线程使用中的关键问题
参考文献

章节摘录

版权页: 插图: 人们可能会注意到抽象是分层次的,每一个层次对应着不同级别的细节。一个C++类和一个机器代码的片段可能归属于一个程序。人们选择什么样的操作取决于人们要干什么,高层次的抽象(C++类)缺尘足够的细节,反之,低层次的抽象缺少透明。 设想一系列不同精度的地图:最大精度的也许是家里的平面图,最小精度的是世界地图。现在设想人们以不同精度制作世界地图,例如,家里的卧室以及地球上其他所有卧室都会出现在最高精度的地图上。 现在,假设人们想用这些地图寻找安道尔——一个在西班牙和法国之间的小国家。最低精度的地图,类似于学校挂在墙上的地图肯定过于粗糙,对于找到这样一个小国家来说是不够的。高精度的地图,又过于细化,人们不可能根据这个地图来指出哪个卧室是在安道尔,哪个是在法国,哪个是在西班牙。因为在如此详细的地图上,人们只能找出家里的围墙却找不到国家之间的分界。但是,假设不寻找安道尔,大家正在寻找一个合适的书架放到表兄的卧室。可以确定的是,人们不可能通过查看西欧的地图来完成这个工作。 就如人们所见,当使用C++编写程序的时候,人们是在一个比较高的抽象水平上进行的,不需要考虑计算机是如何处理代码的。但是还存在比C++更高级的抽象层次。一个站在大街上打电话的人很可能正在使用一个C++编写的电脑。但是对于这个人来说,使用的设备是电话而不是电脑,那么这个人是不知道其接了这个电话可能会调用上千个类和方法的。 为什么要研究抽象呢?抽象是无处不在的,但是人们不必对每一个抽象都解释清楚。然而大多数人欣然接受了抽象的优点,不是所有的人都考虑抽象的局限性。例如,在地图上区分两个国家的分界线可能会忽略很多细节问题,比如,忽略可能跨越国界的房子,在这个方面,这个地图可以被认为是不准确的,因为在界线上的房子,可以被认为是这个国家的也可以被认为是另一个国家的。这样的错误,通常并不重要。在某种场合,当处在一个高层次的抽象中时,人们必须保持警惕,必须了解人们抽象出来的类可能还存在很多不足之处。 3.1.3编译和调试 程序员用C,C++,Java编写代码,但是计算机可能不会执行它。进一步说,程序是人们希望硬件执行的大量结构模糊机器代码的抽象说明。对于计算机硬件来说,它并不明白什么叫类或什么是变量定义,计算机只能理解少量的数据类型和简单的结构。如果不这样,硬件设计师们永远都做不完他们的工作,他们将周旋在大量物理计算机的设计细节上。


编辑推荐

《系统级编程》既可作为高等院校计算机及其相关专业的教材,也可作为广大工程技术人员和自学者的参考用书。

图书封面

广告

下载页面


系统级编程 PDF格式下载



相关图书