《虚拟机:系统与进程的通用平台》的作者从计算机体系结构研究者的角度,以计算机系统接口抽象层次中两个最重要的接口——应用的二进制接口(Application Binary Interface,ABI)和应用程序接口(Application Program Interface,API)为边界,将计算机系统资源的各种虚拟化技术划分为进程虚拟机和系统虚拟机两大类展开讨论,清晰地展现了虚拟化技术各种方法的各个层面和各类应用。
《虚拟机:系统与进程的通用平台》可以作为讲授计算机系统结构研究生课程《虚拟机技术》的教材或教学参考书。工作在虚拟机技术领域的专业人士可以用于自学这些领域的前沿技术。《虚拟机:系统与进程的通用平台》还可以作为一本计算机系统软硬件参考资料。
第1章 虚拟机导论
1.1 计算机体系结构
1.2 虚拟机基础
1.3 进程虚拟机
1.3.1 多道程序设计
1.3.2 仿真器和动态二进制翻译器
1.3.3 相同ISA下的二进制优化器
1.3.4 高级语言虚拟机:平台独立性
1.4 系统虚拟机
1.4.1 系统虚拟机的实现
1.4.2 全系统虚拟机:仿真
1.4.3 协同设计虚拟机:硬件优化
1.5 一种分类方法
1.6 总结:虚拟机功能的多样性
1.7 本书的其他部分
第2章 仿真:解释和二进制翻译
2.1 基本的解释
2.2 线索解释
2.3 预译码和直接线程解释
2.3.1 基本的预译码
2.3.2 直接线索解释
2.4 解释一个复杂的指令集
2.4.1 IA-32 ISA的解释
2.4.2 线索解释
2.4.3 一个高性能IA-32解释器
2.5 二进制翻译
2.6 代码发现和动态翻译
2.6.1 代码发现的问题
2.6.2 代码定位问题
2.6.3 增量式预译码和翻译
2.6.4 相同ISA仿真
2.7 控制转移优化
2.7.1 翻译链接
2.7.2 软件间接跳转预测
2.7.3 影子栈
2.8 指令集问题
2.8.1 寄存器结构
2.8.2 条件码
2.8.3 数据格式和运算
2.8.4 内存地址解析
2.8.5 内存数据对齐
2.8.6 字节序
2.8.7 寻址结构
2.9 案例研究:SHADE和模拟过程中的仿真角色
2.10 总结:性能折衷
第3章 进程虚拟机
3.1 虚拟机实现
3.2 兼容性
3.2.1 兼容性的级别
3.2.2 一个兼容性框架
3.2.3 实现依赖
3.3 状态映射
3.3.1 寄存器映射
3.3.2 内存地址空间映射
3.4 内存结构仿真
3.4.1 内存保护
3.4.2 自引用和自修改代码
3.5 指令仿真
3.5.1 性能权衡
3.5.2 分阶段的仿真
3.6 异常仿真
3.6.1 异常检测
3.6.2 中断处理
3.6.3 确定精确的客户机状态
3.7 操作系统仿真
3.7.1 相同操作系统仿真
3.7.2 不同操作系统仿真
3.8 代码cache管理
3.8.1 代码cache实现
3.8.2 替换算法
3.9 系统环境
3.10 案例研究:FX 1 32
3.11 总结
第4章 动态二进制优化
4.1 动态程序的行为
4.2 剖析
4.2.1 剖析的作用
4.2.2 剖析的类型
4.2.3 收集剖析
4.2.4 解释期间的剖析
4.2.5 剖析翻译后的代码
4.2.6 剖析开销
4.3 优化翻译块
4.3.1 提高局部性
4.3.2 踪迹
4.3.3 超块
4.3.4 动态超块的形成
4.3.5 树簇
4.4 优化框架
4.4.1 方法
4.4.2 优化和兼容性
4.4.3 一致的寄存器映射
4.5 代码重排
4.5.1 基元指令重排
4.5.2 实现一个调度算法
4.5.3 超块与踪迹
4.6 代码优化
4.6.1 基本的优化
4.6.2 兼容性问题
4.6.3 超块间的优化
4.6.4 特定指令集的优化
4.7 相同ISA优化系统:特殊的进程虚拟机
4.7.1 代码修补
4.7.2 案例:HPDynamo
4.7.3 讨论
4.8 总结
第5章 高级语言虚拟机结构
5.1Pascal P-code虚拟机
5.1.1 内存结构
5.1.2 指令集
5.1.3P-code总结
5.2 面向对象高级语言虚拟机
5.2.1 安全和保护
5.2.2 健壮性——面向对象编程
5.2.3 网络
5.2.4 性能
5.3 Java虚拟机结构
5.3.1 数据类型
5.3.2 数据存储
5.3.3Java指令集
5.3.4 异常和错误
5.3.5 二进制类
5.3.6Java本地接口
5.4 完善平台:APIs
5.4.1Java平台
5.4.2Java API
5.4.3 序列化和反射
5.4.4Java线程
5.5 微软公共语言基础:一个灵活的高级语言虚拟机
5.5.1 公共语言接口
5.5.2 属性
5.5.3 微软中间语言
5.5.4 隔离和应用域
5.6 总结:虚拟ISA的特点
5.6.1 元数据
5.6.2 内存结构
5.6.3 内存地址格式
5.6.4 精确的异常
5.6.5 指令集特点
5.6.6 指令发现
5.6.7 自修改和自引用代码
5.6.8 操作系统依赖
第6章 高级语言虚拟机实现
6.1 动态类加载
第7章 协同设计虚拟机
第8章 系统虚拟机
第9章 多处理器虚拟化
第10章 新兴应用
附录A 实际机器
参考文献
索引
First,businessesdiscoveredqualityasakeycompetitiveedge;nextcamescience.Now,Donal...
鲁奇克、凯兹所著,蒋晓等翻译的《NONOBJECT设计(精)》提出了一种全新的Nonobject设计方法。与符和用户普遍需求和感受的“以人为
《纸币史话》内容简介:本书从汉武帝时发行的“白鹿皮币”和唐宪宗时期的“飞钱”谈起,梳理了中国古代纸币历经宋、金、元、明、清
《Minecraft我的世界》内容简介:越玩越聪明! Minecraft我的世界是一款高自由度的沙盒建造游戏,玩家可以在游戏中的三维空间里创造
本书详细地讲解了JavaScript编程所用到的基本知识和常用技术。全书分为三大部分。第1、2章是JavaScript的简介和在HTML中用JavaSc
《1小时漫游量子世界》内容简介:我们所能感受到的世界,遵循着一套被称为宏观世界经典力学的规则;相对的,量子力学所研究的微观世
WhilethereareseveralbooksonprogrammingforMacOSX,AdvancedMacOSXProgramming:TheBig...
我依然记得目睹这一建筑的时候不断产生的疑问。我们当初所钟爱的空与留白的美为何不再存留在我们的城市,而是出现在遥远的异邦?
《幸福的重建:回归疗法入门(第2版)》内容简介:人人都试图追寻幸福,却往往被各种烦恼所羁绊,在人生中迷失方向,忘记初心。著名
《上帝的骰子:量子物理趣画》内容简介:量子力学是什么?量子理论跟我又有什么关系?它是现代科学的前沿阵地,研究比原子还小的微
社交媒体网络安全理论与技术 本书特色 张志勇、赵长伟、王剑等著的这本《社交媒体网络安全理论与技术》试图从信息技术和社会空间管理的多学科交叉视角,对媒体社交网络安...
《最美中国故事(和谐篇)》内容简介:本书是“社会主义核心价值观系列连环画”中的小学十二种图书之一。小学十二种图书,每种围绕
本书由国际著名设计大师EllenLupton出品,是一本以产品案例的展示和分析为主的图文并茂的工业设计类图书。全书篇幅虽然不长,但却
随着宽带数据和多媒体业务的迅猛发展,第三代移动通信原定目标规定的2Mbit/s的传输速率已经远远不能满足需求,加上WiMAX等宽带无
GPS卫星导航定位原理与方法 本书特色 本书是我国**本GPS教科书《全球定位系统原理及其应用》(刘基余主编, 北京测绘出版社于1993年10月**次出版发行)...
《Turbo与LDPC编解码及其应用》结合国际工业技术标准和国内工业技术标准中的Turbo码和LDPC码,系统、深入地给出了Turbo码和LDPC码
家用游戏机简史 本书特色 本书以时间为轴,重新厘清了30余年游戏主机的成长历程,梳理了游戏产业的发展脉络。从幕后开发、技术变革、游戏策略等多重角度,解读五次游戏...
《MySQL高可用实践》内容简介:MySQL数据库是现代软件系统基础应用的核心组成部分,如何保持MySQL的高可用性在系统应用中就变得极为
8086微机原理及接口技术-习题解答与实验指导 本书特色 本书是教材《80x86/Pentium微机原理及接口技术》的配套教材。全书共分两部分:**部分为学习指...
《VB语言程序设计实验教程》内容简介:本书是《VB语言程序设计教程(第2版)》一书的配套实验教程。全书共14章,前10章讲解程序设计