出版社:机械工业出版社
年代:2008
定价:36.0
书籍简介整理中
第1章 虚拟机导论
1.1 计算机体系结构
1.2 虚拟机基础
1.3 进程虚拟机
1.4 系统虚拟机
1.5 一种分类方法
1.6 总结:虚拟机功能的多样性
1.7 本书的其他部分
第2章 仿真:解释和二进制翻译
2.1 基本的解释
2.2 线索解释
2.3 预译码和直接线程解释
2.4 解释一个复杂的指令集
2.5 二进制翻译
2.6 代码发现和动态翻译
追踪源程序代码
例子
其他问题
2.7 控制转移优化
2.8 指令集问题
2.9 案例研究:SHADE和模拟过程中的仿真角色
2.10 总结:性能折衷
译码-分派解释
间接线索解释
带有预译码的直接线索解释
二进制翻译
第3章 进程虚拟机
3.1 虚拟机实现
3.2 兼容性
3.3 状态映射
3.4 内存结构仿真
3.5 指令仿真
3.6 异常仿真
3.7 操作系统仿真
3.8 代码CACHE管理
3.9 系统环境
3.10 案例研究:FX!32
3.11 本章小结
第4章 动态二进制优化
4.1 动态程序的行为
4.2 剖析
4.3 优化翻译块
4.4 优化框架
4.5 代码重排
4.6 代码优化
4.7 相同-ISA优化系统:特殊的进程虚拟机
4.8 小结
第5章 高级语言虚拟机结构
5.1 PASCAL P-CODE虚拟机
5.2 面向对象高级语言虚拟机
5.3 JAVA虚拟机结构
5.4 完善平台:APIS
5.5 微软公共语言基础:一个灵活的高级语言虚拟机
5.6 总结:虚拟ISA的特点
第6章 高级语言虚拟机实现
6.1 动态类加载
6.2 实现安全
6.3 垃圾收集
6.4 JAVA本地接口
6.5 基本的仿真
6.6 高性能仿真
6.7 案例研究:JIKES RVM
6.8 总结
第7章 协同设计虚拟机
7.1 存储器和寄存器的状态映射
7.2 自修改与自引用代码(SELF-MODIFY AND SELF-REFERENCEING CODE)
7.3 代码CACHE的支持(SUPPORT FOR CODE CACHING)
7.4 实现精确异常(IMPLEMENTING PRECISE TRAPS)
7.5 输入输出
7.6 协同设计虚拟机的应用
7.7 实例研究:TRANSMETA CRUSOE
7.8 实例研究:IBM AS/400
7.9 总结
第8章 系统虚拟机
8.1 关键概念
8.2 资源虚拟化——处理器
8.3 资源虚拟化——存储器
8.4 资源虚拟化——输入/输出设备
8.5 系统虚拟机的性能提升方法
8.6 实例研究:VMWARE虚拟平台
8.7 实例研究:INTEL的VT-X(VANDERPOOL)技术
8.8 总结
第9章 多处理器虚拟化
9.1 多处理器系统的划分
9.2 物理划分
9.3 逻辑划分
9.4 实例研究:CELLULAR DISCO系统虚拟机――基于划分技术
9.5 不同主机与客户ISA的虚拟化
9.6 总结
第10章 新兴应用
10.1 安全
10.2 计算环境的迁移
10.3 网格:虚拟的组织结构
10.4 总结
本书的作者从计算机体系结构研究者的角度,以计算机系统接口抽象层次中两个最重要的接口——应用的二进制接口(Application Binary Interface,ABI)和应用程序接口(Application Program Interface,API)为边界,将计算机系统资源的各种虚拟化技术划分为进程虚拟机和系统虚拟机两大类展开讨论,清晰地展现了虚拟化技术各种方法的各个层面和各类应用。
本书可以作为讲授计算机系统结构研究生课程《虚拟机技术》的教材或教学参考书。工作在虚拟机技术领域的专业人士可以用于自学这些领域的前沿技术。本书还可以作为一本计算机系统软硬件参考资料。
纵观历史,操作系统、编程语言和编译器、计算机体系结构等多个领域都发展了各自的虚拟机技术,但没有从统一的角度搭建这些技术的基本关系。现代计算机系统的硬件结构正朝着片上多核。系统多级并行处理的方向发展,并且通过Innternet互联起来,构成功能更强大、应用更广泛的系统。在系统的物理资源大大增加的同时,系统的物理实现也变得极为复杂,系统在可扩展性、可靠性。可用性,可管理性和安全性等方面都遇到了难以用单点体系结构技术来解决的一系列问题。虚拟机技术在应对这一系列问题上越来越显现出前所未有的重要性。本书总结了各种不同的虚拟机技术,为计算机各个领域的学者和研发人员提供了一个新的交叉研究领域,便子以更好的组织方式来研究、设计和实现虚拟机。
本书特色:
·结构清晰。本书以计算机系统接口抽象层次中两个最重要的接口——应用的二进制接口和应用程序接口为边界,将计算机系统资源的各种虚拟化技术划分为进程虚拟机和系统虚拟机两大类展开讨论,清晰地层现了虚拟化技术各种方法的各个层面及各类应用。
·全面系统。作者从学术和工业应厨两个方面对虚拟机技术几十年的研究和发展历史进行了综述,从体系结构、程序设计语言和编译、操作系统及系统安全等多个专业领域深入探讨了虚拟机技术的应用。
·理实交融。本书提供了大量实际虚拟机系统的原理说明及翔实的参考文献,包括Shade模拟系统、FX!32系统、Dynamo/RIO、Java和CLI等流行语言虚拟机、Jikes RVM、Transmeta Crusoe处理器、IBM的AS/400和z/VM系统、VMware的主机虚拟机。Intel的VT-X虚拟技术以及多处理器虚拟系统——Cellular Disco,微软、惠普及其他工业研究团体韵本领域研究人员对全书进行了审阅。
·面向未来。本书在最后一章专门讨论了一些新兴的虚拟机应用,包括安全领域(讨论入侵检测系统的原理以及虚拟机在系统攻防方面的应用潜力)、移动计算环境(讨论商业上的应用:VMware的vmotion)以及计算网格(展示典型的系统虚拟机对新兴网格系统出现的重要作用)方面的应用。
硬件是借助微电子工具构建起来的缺乏灵活性的东西。虚拟机用一层软件将硬件包裹起来,从而使得计算机灵活可变。正在发展的一些新技术,能够实现在同一个硬件上运行多个操作系统、执行多套指令集,允许程序在执行过程中切换机器,甚至排斥不安全的代码。虚拟机正改变着计算机和操作系统的设计方法、编程语言的实现方法,以及安全专家对计算机和计算的认知。Smith和Nair的这本书是迄今为止仅有的对虚拟机及其众多应用的综述。
——Jim Larus, 微软研究院 虚拟机已经无处不在。
Jim Smith和Ravi Navi极为清晰地阐明了虚拟机技术对现代计算机体系结构、程序设计语言、操作系统以及安全技术的深刻影响。对未来计算机系统感兴趣的人有必要研读本书,我极力推荐本书!
——Michael D. Smith, 哈佛大学