(计算机科学与技术专业论文)基于虚拟化技术的智能手机软件平台.pdf_第1页
(计算机科学与技术专业论文)基于虚拟化技术的智能手机软件平台.pdf_第2页
(计算机科学与技术专业论文)基于虚拟化技术的智能手机软件平台.pdf_第3页
(计算机科学与技术专业论文)基于虚拟化技术的智能手机软件平台.pdf_第4页
(计算机科学与技术专业论文)基于虚拟化技术的智能手机软件平台.pdf_第5页
已阅读5页,还剩51页未读 继续免费阅读

(计算机科学与技术专业论文)基于虚拟化技术的智能手机软件平台.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

浙江大学硕十学位论文摘要 摘要 随着i n t e m e t 的发展,越来越多3 g 商用网络的丌通以及丰富的移动数据业务 的开展,对手机终端的要求也越来越高,智能手机也越来越被大家所熟知。而高 端智能手机需要有强大的操作功能,因此必须配备强大的操作系统,而且系统还 要具备高容量、高质量、宽带、智能、多媒体等特征。因此智能手机操作系统成 为当前r r 产业的焦点之一,呈现了巨大的市场需求。而目前的智能手机操作系 统功能单一,不同的应用软件在不同的系统上互不兼容,难以满足智能手机的发 展需要。本文将介绍一种采用虚拟化技术的智能手机软件平台。虚拟化技术是计 算领域的一项传统技术,最早应用于大型服务器领域,随着计算机硬件技术的不 断进步,在各大软硬件厂商的大力推动下,虚拟化技术在个人电脑领域和嵌入式 领域的发展也得到了长足的进步。本论文利用最新的虚拟化设计思想,设计和实 现一个面向智能手机领域的软件平台。使得智能手机领域软件的发展走向模块 化,标准化。同时使智能手机满足多样化的应用需求。 本文首先介绍了智能手机的概念,现状和发展趋势,然后介绍了虚拟化技术 的背景和发展现状。接下来主要分析了智能手机的硬件平台以及软件平台的设计 原理和方法,同时对整个系统的主要接口的设计做详细介绍。然后是对整个平台 各个子模块的具体实现进行分析。最后是分析了采用虚拟化架构技术特点以及优 势。 关键字:智能手机虚拟化a r m 处理器控制平台 浙江大学硕j :学位论文a b s t r a c t a b s t r a c t w i l ht h ed e v e l o p m e n to fi n t e m e ta n d3 gt e c h a o l o g y , t h er o c l u i r c m c n tf o rt h em o b i lp h o n ei s h i 曲e r , a n dr i ow ea r cg e t t i n gm o r ef a m i l i a rw i t hi n t e l l i g e n tc e l l p h o n e u n d o u b t l yi tw i l lh a v ea h u g em a r k e ta l lo v e rt h ew o r l d a n dt h ei n t e l l i g e n tc e l l p h o n ei sp o w e r f u l l 8 0i tn e e d sp o w e r f u l o p e r a t i n gs y s t e m , t h eo sm u s th a v eah i g hv o l u m n , h i g hq u a l i t y , h i g hi n t e l l i g e n c e m u l t i m e d i a f u r l c t i e n a l i t y s ot h ei ti n d u s t r yw i l lf o c u so l li n t e l l i g e n tc e l l p h o n es o f t w a r ep l a t f o r m b u tt h e o p e r a t i n gs y s t e m so ni n t e l l i g e n tc e l l p h o n en o w s d a y sa r en o tg o o de n o u g h ,t h e i rf u n c t i j o n sa r e p o w e r l e s s , a n dd i f f e r e n ta p p l i c a t i o n so l ld i f f e r e n ts y s t e m sa i n c o m p a t i b l e t h i sd i s s e r t a t i o nw i l l i n t r o d u c eu s i n gt h ep a r a - v i r t u a l i z a t i o nt e c h n o l o g yt ob u i l dt h ei n t e l l i g e n tc e l l p h o n es o f t w a r e p l a t f o r m v i r t u a l i z a t i o ni sat r a d i t i o n a lt e c h n o l o g yi nc o m p u t e rs c i e n c ef i e l d w i t ht h er a p i d p r o g r e s sa n di n n o v a t i o no nt e c h n o l o g yo fe n m p u t e rh a r d w a r ea n ds o f t w a r e , v i r t u a l i z a t i o n t e c h n o l o g ys t r e n g t hg r o w sf a s t t yi nd e s k t o pa n de n a h a d d e ds y s t e m s r o g h a tw ef o c u so l lt h i st h e s i s i st h et o p i co fh o wt od e s i g na n di m p l e m e n tt h es o f t w a r ep l a t f o r mf o ri n t e l l i g e n tc e l l p h o n eb a s e d o l lp a r a v i r t u a l i z a t i o nt e c h n o l o g y i tc a l lm a k et h ei n t e l l i g e n tc e l l p h o n es o f t w a r ei n d u s t r yt o b e c o m em o d u l a r i z a t i o na n ds t a n d a r d i z a t i o n , a n dm e e td i f f e r e n tk i n d so f n e e d sf o re v e r y d a yl i f e i nt h i sd i s s e r t a t i o n , w ed i s c u s s e dt h ec o n c e p to fi n t e l l i g e n t c e l l p h o n ea n dv i r t u a l i z a t i o n t c c h n o l o g y t h e nw es t a r t e dt oa n a l y z et h ed e s i g np r i n c i p l 岱a n di m p l e m e n tm e t h o d so fo u a i n t e l l i g e n t c e l l p h o n e s o f t w a r e p l a t f o r m w e a n a l y z e d t h e i m p l e m e n t a t i o n o f e v e r y m o d u l e a t l a s t , w ed i s c u s s e dt h ea d v a n t a g ew h e nw et a k et h i sp a r a - v i r t u a l i z a t i o nt e c h n o l o g y k e y w o r d :i n t e l l i g e n tc e u p h o n e , v i r t u a l i z a t i o n , a r m ,c o n t r o lp i a t f o r m i i 浙扛大学硬士学位论文 圈目录 图目录 图2 1 虚拟机模型。7 图2 - 2 硬件仿真 图2 - 3 完全虚拟化1 2 图2 4 部分虚拟化 图2 - 5 服务器级的虚拟化1 4 图3 - 1 系统架构 :1 7 图4 1v m u i 直接映射区 3 3 图4 之v m u i 虚拟地址内存分布一3 5 图4 3 分级保护机制 3 6 图4 4 页表保护3 7 图4 5v m u l 堆栈3 9 图4 6 系统调用示意图4 l 图”设备管理模型。 z l :! 图5 - 1 智能手机价值链4 5 图5 - 2 安全隔离示意图 v 4 7 浙江大学硕士学位论文表目录 表目录 表1 1 当前主流操作系统的比较4 表2 - 1 虚拟技术的典型系统比较1 4 表3 - 1p x a 2 5 5 芯片硬件对应表 表3 - 2 异常向量2 2 表3 3 异常响应优先级 表3 _ 4 数据处理指令 :! :! :! z i 表3 - 5 乘法与乘加指令2 5 表3 - 6 移位指令2 5 表3 7 协处理器指令 表3 - 8 跳转指令 ,:1 6 表3 - 9 虚拟化软件平台的接口2 9 表4 - 1 模块的上下文定义一3 7 v 浙江大学硕士学位论文 第一章导论 第一章导论 智能手机是个人电脑之后,又一个新兴的发展热点由于智能手机体积小、 功能强、携带方便的突出特点,目前已经得到世界上各大手机生产商的商度重视, 智能手机将成为后个人电脑时代的集计算、娱乐和消费于一体的主流产品,开发 支持智能手机的软件平台就显得非常重要。手机软件已经成为手机制造商获得产 品差别化竞争优势的关键因素。 随着系统级芯片技术的发展,手机处理器的架构r 趋复杂,多样化的应用需 求正迅速集成到同一个设备中,例如3 ( 3 智能手机需要支持实时基带通信、多媒 体处理、网络数据业务等,还要求支持升级和添加新的功能。手机软件的设计方 案还要考虑如开发周期和制造成本等很多因素。随着越来越多的智能手机连接到 因特网,对潜在的安全漏洞进行防护也成为越来越重要的问题。这些问题向智能 手机操作系统提出了新的挑战。 采用虚拟化技术以后,可以很好的解决面临的这些问题。虚拟化技术一直是 计算机领域研究的热点。根据传统的操作系统技术,应用软件与特定服务器和存 储设备是固定在一起的,但是虚拟化技术能够使应用软件和数据在一台计算机中 切换,提高系统的可靠性和运行效率。虚拟化能使用户在一台服务器上同时运行 多个操作系统,这与多任务技术有些类似。不过多任务技术只允许用户在同一机 器的同一操作系统中运行多个程序,而虚拟化则可让用户在同一机器中同时运行 多个操作系统。这样使得用户能够更灵活高效地配用计算机资源,并且由于隔离 性更有助于提高安全性能。 另一方面,随着计算机硬件技术的不断进步,虚拟技术的实际应用也能够从 原来的大型服务器扩展到智能手机,使得基于虚拟化技术的智能手机软件平台成 为新一代智能手机操作系统的发展趋势。 1 1 智能手机的现状 随着信息技术的不断发展,以及无线网络的普及,无线通讯技术由普通的可 以打电话发短信的手机演化出具有丰富功能的带有操作系统的智能手机。智能手 机除了具备手机的通话功能外,还必须具备无线接入互联网的能力,即需要支持 g s m 网络下的g p r s 或者c d m a 网络下的c d m a 或者3 g 网络。同时具备了 p d a 的大部分功能,特别是个人信息管理以及基于无线数据通信的浏览器和电 子邮件功能。智能手机为用户提供了足够的屏幕尺寸和带宽,既方便随身携带, 又为软件运行和内容服务提供了广阔的舞台,很多增值业务可以就此展开,如: 浙江大学硕上学位论文 第一章导论 天气、交通、商品、股票、新闻、应用程序下载、视频电视,音乐图片下载等等。 融合3 c ( c o m p u t e r 、c o m m u n i c a t i o n 、c o m s u m e r ) 的智能手机必将成为未来 手机发展的新方向。 智能手机通常由智能手机硬件、智能手机操作系统以及其他应用软件等几大 部分组成。 1 1 1 智能手机硬件设备 智能手机就是一个完整的嵌入式系统【5 l ,由这几大部分组成: c p u :板载处理器,一般用主频1 0 0 左右的低功耗处理器,各大手机厂商 均有自己的手机处理器。 天线:收发信号。 放大芯片:把微波基站的信号放大。 电源芯片:负责提供手机主板的电源控制。 音频i c :负责电话的声音输出以及转换。 字体以及字库,供显示文字。 内存:手机内部储存数据的设备,有的手机提供外接口可扩展。 摄像头:有镜头以及感光芯片,有很多手机的摄像头是可以外接的,就是摄 像头处理光信号然后把数据转储到手机的内存里。 外部显示设备,从早期的灰度显示到现在多达6 5 万色的液晶显示都是。 未来手机的附加应用将不局限于多媒体应用。w - f i 、u w b 、a - g p s 、蓝 牙、红外、3 d 游戏、电子支付、安全等应用需求都将大量出现。应用处理器也 是随着这些应用而出现的,并且开发单一用途的应用处理器是不合适的,手机的 体积决定手机的应用处理器必须对应手机绝大多数的应用。早期的应用处理器通 常是相机控制或照相后段信号处理,后来音乐应用、短片拍摄、电视应用接连出 现,应用处理器变为多种应用的处理器。同时,一些低端的应用被集成到基频处 理器中。 应用处理器设计上分三大流派,一大流派是单a r m 内核加阵列处理器,另 一大流派为a r m 内核+ d s p 。还有一大流派就是采用门级逻辑电路设计。还有 极少数厂家使用r i s c 结构【l 】。 a r m 是现在在嵌入式芯片领域占主导地位的体系架构,到目前为止,a r m 微处理器及技术的应用几乎已经深入到各个领域: 1 工业控制领域:基于a r m 核的微控制器芯片不但占据了高端微控制器市 场的大部分市场份额,同时也逐渐向低端微控制器应用领域扩展,a r m 微控制 器的低功耗、高性价比,是3 2 的r i s c 架构,和传统的8 位门6 位微控制器相 2 浙江大学硕士学位论文第一章导论 比具有明显的优势。 2 无线通讯领域:目前已有9 0 的无线通讯设备采用了a r m 技术,a r m 以其高性能和低成本,在该领域的地位日益巩固。 3 网络应用:因为现在宽带技术的不断发展,采用a r m 技术的a d s l 芯 片正逐步获得竞争优势。此外,a r m 在语音及视频处理上行了优化,并获得广 泛支持。 4 消费类电子产品:a r m 技术在目前流行的数字音频播放器、数字机顶盒 和游戏机中得到广泛采用。 5 成像和安全产品:现在流行的数码相机和打印机中绝大部分采用a r m 技 术。手机中的3 2 位s i m 智能卡也采用了a r m 技术。 目前的智能手机就大量采用了a r m 的体系架构。 1 1 2 智能手机操作系统 智能手机与一般手机的根本区别在于是否拥有操作系统。当手机拥有操作系 统之后,就可以具备强大的功能,例如商务处理,在线网络游戏,多媒体娱乐, 移动电子邮件,手机电视等等。 现在国内智能手机的市场一直比较集中,国外的手机厂商占据了超过6 0 的智能手机市场份额【3 1 1 。对于在智能手机当中具有核心作用的操作系统,呈现 出多元化趋势,各手机厂商都采用了使用多种操作系统的策略。 现在主要的手机操作系统有s y m b i a n 、w i n d o w s m o b l i l e 、p a l m 以及l i n u x 。 在当前的移动终端系统市场中,s y m b i a n 阵营的s y m b i a no s 居统治地位,但 s y m b i a n 正面临着来自w i n d o w sm o b i l e 和l i n u x 的强力挑战,可以先比较一下 三大移动终端操作系统各自的优劣势【9 】 w m d o w sm o b i l e 系列操作系统是在微软的w i n d o w s 操作系统上变化而来 的,包括s m a r t p h o n e 和p o c k e tp cp h o n e 两种平台。w m d o w sm o b i l e 系列操作系 统具有功能更强大,具备了音频、视频文件播放、上网冲浪、网上聊天、电子邮 件收发等功能。p o c k e tp cp h o n e 主要用于掌上电脑型的智能手机,而s m a r t p h o n e 则主要为单手智能手机提供操作系统。另外,采用该操作系统的智能手机在其它 硬件配置上也较采用其它操作系统的智能手机要高出许多,因此性能比较强劲, 操作起来速度会比较快。但是,这种操作系统也有一些缺点,如非常占用手机的 硬件资源,耗内存,而且开发周期长,升级比较慢,也容易出安全漏洞。 s y m b i a n 操作系统提供了灵活的应用界面( u i ) 框架,不但使开发者得以快 速掌握必要的技术,同时还使手机制造商能够针对同一个系统设计出完全不同的 界面。s y m b i a n 系统手机的几种应用界面形式:一类在设计上很类似当前最常见 浙江大学硕t 学位论文第一章导论 的手机,即主要通过键盘进行输入的手机:另一类是使用手写笔进行操作;还有 一类是既有键盘又有触摸屏的手机,它具有较大的屏幕和较小的键盘。因此对于 s y m b i a n 操作系统,手机制造商和第三方开发者就可以为上述各类手机开发出各 种各样风格的应用界面。 p a l m 9 1 是3 c o m 公司的p a l mc o m p u t i n g 部开发的一种3 2 位的嵌入式操作 系统,p a l m 智能手机所用的队l 】操作系统又与队u 掌上电脑所用的操作 系统非常相似,因此,基于该操作系统的手机拥有的第三方软件较多,以前用惯 了p a l m 掌上电脑的用户能非常快速地掌握这类的智能手机。由于p a l m 一直 遵循l e s si sm o r e ( 少就是多) 这一理念去设计,所以,与微软所推出操作系统 要占有大量的系统资源和储存容量不同的是,它本身所占的内存极小,基于 p a l m 操作系统编写的应用程序所占的空自j 也很小,通常只有几十k b ,所以基 于p a l m 操作系统的掌上电脑虽然只有几兆内存却可以运行众多的应用程序。 但是,它的功能就没那么多,无法满足客户的多种需要。这也成为p a l m 系统 的一种缺点。 l i n u x 手机操作系统【4 l 】是一种歼放源码的操作系统,它能够支持3 2 位和6 4 位处理器,在计算机领域中,主要用于配备i n t c lx 8 6 系列c p u 的计算机,l i n u x 具有稳定、可靠、安全等优点,有强大的网络功能。在相关软件的支持下,可实 现w w w 、f t p 、d n s 、d h c p 、e - m a i l 等服务。从应用开发的角度看,由于l i n u x 的源代码是开放的,有利于独立软件开发商( i s v ) 开发出硬件利用效率高、功 能更强大的应用软件,也方便用户开发自己的安全、可控认证系统。但是采用单 一内核的操作系统模式难以避免会在实时性,响应速度,安全性等方面都带来不 足。而且每种操作系统都需要手机厂家的硬件支持,这样就存在了较低的移植性。 这四种操作系统的比较如表1 1 所示。 表1 - 1 当前主流操作系统的比较 w l n d o w s s y m b l a n p a i m l i n i i x 配置要求较高一般较低般 应用功能丰富丰富较少丰富 是否开源否否否是 支持硬件平台3 2 ,6 43 23 23 2 ,6 4 软件复杂度较复杂较复杂较简单较简单 性能较差较好较好较好 开发周期较长一般较短较短 根据对目前的几种主流的智能手机操作系统的分析,不难发现满足网络业 4 浙江大学硕上学位论文第一章导论 务,实时计算,多媒体娱乐等多样化用户需求成为新一代智能手机操作系统的基 本要求,同时还要求更加开放,以便独立软件开发商针对不同的应用提供各俱特 色的第三方软件;还要有良好的移植性,减少对硬件的依赖,要能使现在各种不 同的手机硬件构架都能安装使用;同时因为手机的功能越来越强,对用户越来重 要,因此对安全性提出了更加严格的要求。 1 2 虚拟化技术介绍 虚拟化技术【l l l 是计算机领域黾的一项传统技术,起源于2 0 世纪6 0 年代。利 用这项技术,就能够在大型服务器上创建多个“虚拟”操作系统。虚拟机软件有 效的提高资源利用率,这样企业就能确保从巨额投资的数据中心中,得到更多利 益。虚拟机有着显著的技术优势,他们可以在单一服务器上支持不同的应用软件 和操作系统,而且还能够动态地将资源分配到最需要的地方,并且可以减少数据 处理过程中所需的服务器数量。有了虚拟机,企业在每次部署新的操作系统时, 就无需迁移现有的应用软件,从而还能延长那些虽然已经过时,但还非常重要的 应用软件。因为这些软件在开发初期做了大量投入,因此采用虚拟化技术后可以 最大限度的利用它们。而且,企业在部署新的软件之前,还可以采用虚拟机来开 发和测试软件,同时企业还可以通过虚拟机来备份计算机。所以说这种方式也能 够节约大量的成本。 现在,这种技术除了在原有的高端服务器领域发展之外,又发展到了个人电 脑以及嵌入式领域【5 1 。因为和以前相比,今天的硬件的技术突飞猛进,价格越来 越低,体积越来越低,功能越来越强大,使得虚拟机应用范围更为广泛,随着嵌 入式领域的快速发展,在高主频高性能的嵌入式专用c p u 支持下,虚拟化技术 可以应用在智能手机领域,并能够为智能手机的应用带来巨大的优点,必将成为 智能手机操作系统的发展趋势。 1 3 本文主要研究工作及章节安排 本文主要研究课题是基于虚拟机技术的在a r m 体系架构为硬件平台的智能 手机软件系统。利用最新的虚拟化设计思想,设计和实现一个面向嵌入式领域的, 基于l i n u x 为主控制模块的操作管理平台。本系统可以支持多种操作系统,包括 w i n d o w s ,s y m b i a n ,p a l m 等,在保证性能的前提下,可以同时运行多个虚拟化 实例。 和本课题相关的研究内容包括设计和实现一个虚拟机统一接口( v i r t u a l m a c h i n e u n i f o r m e d i n t e r f a c e ) ,以及运行在这个系统管理程序上各种虚拟化实例, 5 浙江大学硕l 学位论文 第一章导论 包括一个具有特殊权限的主控制模块( m a i nc o n t r lm o d u l e ) 和多个操作系统以 及其他模块。 第二章主要对现有的虚拟化技术进行综述,包括各种虚拟化技术的具体介绍 和实现机制,多种虚拟化技术的区别和特点,以及最新的虚拟化技术进展。从第 三章开始,主要介绍a r m 体系架构下的硬件平台,以及系统整体构架,包括 v m u i 和m a i nc o n t r o lm o d u l e 在内的系统各个子模块,还有虚拟化软件平台的 接口。第四章中则是对整个系统的详细设计,各种机制的设计。第五章介绍了采 用虚拟化软件平台后的实际应用特点。第六章对已完成的工作进行回顾和总结, 同时对下一阶段的工作提出设想和要求。 阅读本文的约定: 1 本文中将会分析一些图和表,用以表示出设计思路。 2 文中一些关键字的使用;虚拟机统一接口即为v m u i ,也可理解为系统 管理程序:在虚拟机统一接口之上,主控制模块即为m a i nc o n t r o lm o d u l e 。其他 模块则包括虚拟机操作系统( v m o s ) 以及应用模块( m o d u l e ) 。 6 浙江大学硕上学位论文第二章虚拟化技术简介 第二章虚拟化技术简介 c p u 的虚拟化技术可以单c p u 模拟多c p u 并行,允许一个平台同时运行 多个操作系统,并且应用程序都可以在相互独立的空问内运行而互不影响,从而 显著提高计算机的工作效率。因为本课题利用了虚拟化技术,因此有必要在这里 单独介绍虚拟化技术的相关背景知识和技术发展趋势等内容。在介绍虚拟技术的 发展现状和趋势的基础上,我们将举例说明国内外关于虚拟化技术的应用情况, 以此来说明虚拟化技术的重大影响。 2 1 虚拟化技术介绍 虚拟化是一个广义的术语【,在计算机方面通常是指计算元件在虚拟的基 础上而不是真实的基础上运行。虚拟化技术可以扩大硬件的容量,简化软件的重 新配置过程。c p u 的虚拟化技术可以单c p u 模拟多c p u 并行,允许一个平台 同时运行多个操作系统,并且应用程序都可以在相互独立的空间内运行而互不影 响,从而显著提高计算机的工作效率。见图2 1 。 图2 - 1 虚拟机模型 虚拟化技术与多任务以及超线程技术是完全不同的。多任务是指在一个操作 系统中多个程序同时并行运行,而在虚拟化技术中,则可以同时运行多个操作系 7 浙江丈学硕上学位论文第二章虚拟化技术简介 统,而且每一个操作系统中都有多个程序运行,每一个操作系统都运行在一个虚 拟的c p u 或者是虚拟主机上;而超线程技术只是单c p u 模拟双c p u 来平衡程 序运行性能,它们只能协同工作虚拟化技术能够取得非常明显的效果,是一个 巨大的技术进步,具体表现在减少软件虚拟机相关开销和支持更广泛的操作面。 2 1 1 早期的虚拟化技术 从6 0 年代开始,美国的计算机学术界就开始了虚拟技术的萌芽。1 9 5 9 年6 月在国际信息处理大会上,克里斯托弗的一篇计算机分时应用的论文,被认 为是虚拟化技术的最早论述。1 9 7 4 年美国计算机研发人员唐纳德说,在计算机 控制台上调试多个程序时需要对计算机的处理器和外设等资源进行合理安排,于 是就形成了运行在硬件之上的一种专门管理和调度硬件资源的特权程序代码,这 些代码主要关注硬件资源的时间调度安排,把硬件资源在逻辑上给用户的应用程 序以虚拟的形式呈现了出来。 1 9 6 0 年美国的a t l a s 计算机项目,以及1 9 6 5 年i b m 公司按照以上论述进行 的一些计算机项目试验,其中的 m 4 4 4 4 x 计算机项日,定义了虚拟内存管理机 制,用户程序可以运行在虚拟的内存中,对于用户来说,这些虚拟内存就好像一 个个“虚拟机”。为多个用户的程序提供了独立的计算环境。随后出现的i b m7 0 4 、 7 0 9 等系列计算机项目,以及在这些项目上应用的时分系统c t s s ,“超控代码( 上 段论文中提到的特权程序代码) ”直接控制着硬件资源的分配和回收,这些资源 包括前台后台工作,i ,o 接口资源等等。 2 1 2 虚拟化技术的现状 与过去相比,在服务器虚拟化技术方面,现在最大的不同就是参与者的队伍 大大扩充了一从处理器层面的a m d “i 和i n t e l 到操作系统层面的微软的加入,从 数量众多的第三方软件厂商的涌现到服务器系统厂商的高调,我们看到一个趋于 完整的服务器虚拟化技术生态系统在逐渐形成。 “虚拟化正在从一个小市场向主流市场转变,尤其是在m i c r o s o f t 进入该市 场之后”,当微软宣布了其v m u a ls e r v e r 2 0 0 5 计划之后,业内有这样的评价。 在介绍微软的这个虚拟化项目的时候,几乎所有的媒体都做了这样的描述一 与其他服务器虚拟化技术一样,v i r t u a ls e r v e r2 0 0 5 允许用户对服务器进行分区, 以使这些服务器能够支持多个操作系统和应用。 在大多数人看来,虚拟化就是分区。实际上,我们认为这是对虚拟化技术的 一种误解,所以有必要对这两者的关系进行进一步阐述。 早在2 0 0 5 ,英特尔就宣布了其初步完成的v a n d e r p o o l 技术外部架构规范 浙江大学硕上学位论文 第二章虚拟化技术简介 ( e a s ) ,并称该技术可帮助改进未来虚拟化解决方案。英特尔表示,将在2 0 0 6 年把v 锄d o r p o o l 应用于安腾架构平台,同时还计划在台式机处理器和芯片组产 品中采用该技术。 大家都知道,x 8 6 服务器可以通过、礓俩b 一2 0 】软件来将一台服务器划分成若 干个虚拟机。那么微软v i r t u a ls e r v 盯2 0 0 5 ”】与v i v v 嘶e 的虚拟化技术相比,有 什么异同呢? 很明确的一点是,v j t r t u a ls e r v g2 0 0 5 是基于w i n d o w s 操作系统的, 而v m 3 1 v 盯e 则是一款准操作系统产品,与操作系统是完全独立的,这样带来的 一个直接影响就是用户在使用v i r t u a ls e r v 盯2 0 0 5 创建虚拟机时,必然会或多或 少地占用c p u 资源,可能在性能上与使用小v a 会有一些差异。 另外,因为v m i e 是独立于操作系统的,所以如果操作系统出现问题虚 拟机应该不会受到影响,而使用v i r t u a ls o i - v c r2 0 0 5 时,保证操作系统的稳定性 则成为了保证虚拟机连续可用的一个重要因素。 早在p 6 9 0 服务器和a i x5 l 操作系统首次公布的时候,i b m 就宣稚在其动 态逻辑分区( l p a r ) 技术的支持下,一个系统内可独立的运行多个分区,每个 分区运行独立的操作系统。这时候的分区,是以c p u 为“颗粒”的。 到去年发布p 5 服务器时,i b m 大张旗鼓地扯出了虚拟技术的大旗。不过, 与以前相比,在虚拟化技术的帮助下,m m 最新的微分区技术打破了分区上以 c p u 为“颗粒”的限制,可以将单个c p u 划分为l o 个微分区,从而创建和运 行比物理处理器数量更多的分区。i b m 同时宣布,新版操作系统a i x5 3 可以 支持1 1 0c p u 颗粒的微分区。 2 1 3 虚拟化技术的未来 从用户角度来看,虚拟化设计的需求来源于他们对服务器整合和简化管理的 渴望。 在国内,企业数据中心都是根据需求随时添加服务器设备,这些设备基本上 都是分散的,不同品牌、不同配置甚至不同架构,最致命的是,在其上运行的应 用并不能够充分利用服务器所有的资源,占用到1 5 2 0 是一个普遍现象, 而利用服务器整合,将应用集中于更少数量的服务器上,可以将资源利用率提升 至6 0 ,这不仅仅是服务器资源的节省,其他方面也有节省,比如供电和物理 空间。用户们认为,服务器整合后可以管理较少的服务器,节省的空间可以放置 空调、制冷系统,这样又可以进一步提升服务器本身的可靠性。如何整合,当然 是让一台或数台服务器运行更多的任务,而虚拟化技术能够提供的硬件、软件分 区可以将这些任务分散在分区中,互不干扰的运行。 管理方面,全面的公用计算设想需要深层次的数据中心虚拟化、自动化,但 9 浙江大学硕t 学位论文第二章虚拟化技术简介 目l j f 的情况是管理工具并不完善,面向公用计算的数据中心管理工具必须扩展到 问题监测和解决之外,必须提供大量的虚拟化工具、服务配置以及自动化能力 目前在虚拟化市场上最叱咤风云的应该数v m w a r e ,它提供的管理工具能够使系 统部署、监控、自我修复、服务器维护更容易,但还不完美。v m w a r e 的一些合 作伙伴也在提供相关的管理工具,像s o f t t d c i 妒2 1 的s o f t g d d 3 7 1 ,它可以隔离 w i n d o w s 和运行在其上的应用,并提供对应用的部署和管理。还有a u r e m a ,它 推出的a r m t e c h 3 1 】产品通过定义为。基于业务的资源执行策略和部署”来控制业 务调度以提供对虚拟或者物理服务器的工作负载和性能管理。b m c 提供的p a t r o 网络管理系统可与虚拟服务器共同工作,它的产品包括基于虚拟服务器的p a t r o l p e r f o r m a n c ea s s u r a n c e ,可以为v m w a r e 系统提供容量、性能和动态作负载管 理。 2 2 虚拟化技术的种类 虚拟化技术已经完全成熟起来,已被广泛应用于商业领域以及科学研究上。 从技术角度看,主要分为硬件仿真,半虚拟化【2 8 l ( p a r a - v i r t u a l i z a t i o n ) 和完全虚 拟化【2 5 1 ( f u l lv i r t u a l 协i o n ) ,操作系统级的虚拟化几大类。 2 2 1 硬件虚拟化 毫无疑问,最复杂的虚拟化实现技术就是硬件虚拟化f 2 刁。因为这种方法需 要完全虚拟出所需要的硬件,可以在宿主系统上创建一个硬件v m 来仿真所想 要的硬件,如图2 2 所示。 1 0 浙江大学硕士学位论文第二章虚拟化技术简介 ; g u e s to sg u e s to sg u e s to sg u e s to s , h a r d w a r e ah a r d w a r ev mb ! ; 。 h a r d w a r e 一 。 i rr 氛i 。k 。j 。, 。j j 一# hd 。”,黛 图2 - 2 硬件仿真 正如您所能预见的一样,使用虚拟化硬件的主要问题是速度会非常慢。由于 每条指令都必须在底层硬件上进行仿真,因此速度减慢1 0 倍的情况也并不稀 奇。若要实现高度保真的虚拟化,包括周期精度、所仿真的c p u 管道以及缓 存行为,实际速度差距甚至可能会更多。 当然,硬件仿真也有自己的优点。例如,使用硬件仿真,您可以在一个a r m 处理器主机上运行为p o w e r p c 设计的操作系统,而不需要任何修改。您甚至可 以运行多个虚拟机,每个虚拟器仿真一个不同的处理器。 2 2 2 完全虚拟化 完全虚拟化【2 司( f u v i r t u a l i z a t i o n ) ,也称为原始虚拟化,是另外一种虚拟化 方法。这种模型使用一个虚拟机,它在客户操作系统和原始硬件之间进行协调, 如图2 3 所示在底层硬件之上运行了一个管理程序,被称为h y p e r v i s o r , 他能 够在客户操作系统和裸硬件之间提供协调。特定受保护的指令必须被捕获下来并 在h y p e r v i s o r 中进行处理,因为操作系统将运行在h y p e r v i s o r 之上,由操作系 统通过h y p e r v i s o r 共享。 浙江大学硕士学位论文第二章虚拟化技术简介 一一 嚆伊 i。 一 : ;a p p li c a t i o n i a p p l i c a t i o n : ,a p p l i c a t i o n; i ; v f ; g u e s t0 s ! g u e s to s , 、 g u e s to s “ t ih y p e r v i s o r ” jiardware 。,一。一。一。! 。一。: 。一j 。? 。j 图2 - 3 完全虚拟化 完全虚拟化的典型代表产品是v m 3 7 0 2 9 l 和v m w a r e t 2 0 1 。i b mv m 3 7 0 最先 使用了虚拟化技术以提供对早期代码的支持。v 1 v l w a l o 采用了将常用的p c 硬件 进行虚拟化的方法,允许多个操作系统在同一台主机上运行。所有这些例子都对 底层硬件( 至少是底层硬件的一个子集) 进行了完全虚拟化的实现,而并非是半 虚拟化的方法提供给g u e s to s 一个修改后的接口。完全虚拟化技术比硬件虚拟 技术要先进,但是性能也没有能够足够高。其他常见的完全虚拟化软件包括微软 推出的v k t u a ls e r v e r 和l i n u x 上的u m l ( u s 盯m o d e l i n u x ) 。 虽然完全虚拟化的速度比硬件仿真的速度要快,但是其性能要低于裸硬件, 因为中间经过了h y p e r v i s o r 的协调过程。完全虚拟化的最大优点是操作系统无 需任何修改就可以直接运行。惟一的限制是操作系统必须要支持底层硬件( 例如 p o w e r p c ) 。 2 2 3 部分虚拟化 它也被称为超虚拟化【2 田( p a r a v i r t u a l i z a t i o n ) ,是另外一种流行的虚拟化技 术,它与完全虚拟化有一些类似。它与完全虚拟化技术相似,也使用了一个 h y p e r v i s o r 来实现对底层硬件的共享访问,还将与虚拟化有关的代码集成到了 操作系统本身中,见图2 4 。它可以允许客户操作系统执行的部分指令直接在硬 件中运行。 1 2 浙江大学硕 = 学位论文第二章虚拟化技术简介 豁 。 、 “、。 a p p li c a t i o na p p l i c a t i o na p p l i c a t i o na p p l i c a t i o n m o d i f i e dg u e s tm o d i f i e dg u e s tm o d i f l e dg u e s t m o d i f i e dg u e s t o so so s0 s o ! i 。 : 二hypervisor “ m a r e w a r e : m + 。、。_ 。? 一一。i ? 。一, t 。? 。* 。j 。i * j i 图2 4 部分虚拟化 半虚拟化技术需要对操作系统的内核做一定的修改,这样虽然有效的提高了 虚拟机的效率,但是增加的一定的工作量,所幸的是,不需要修改操作系统上运 行的应用程序。这方面的典型代表就是d e n a l i 19 】和x e n l 2 引。 d e n a l i 是华盛顿大学的一个研究项目,目标是提供一个“轻量级的保护域” 机制,运行多个最小化资源、快速响应的虚拟机。 x 是在剑桥大学作为一个l i n u x 研究项目开发的,它已经在开源社区中得 到了极大的推动。 2 2 4 服务器级的虚拟化 服务器级的虚拟化使用的技术与前面所介绍的有所不同。这种技术在操作系 统之上实现服务器的虚拟化。这种方法适用于单个操作系统,并可以将独立的服 务器相互简单地隔离开来,如图2 5 。 1 3 浙江大学硕上学位论文 第二章虚拟化技术简介 匿“ 一” m p r i v a t es e r v e rp r i v a t es e r v e rp r i v a t es e r v e rp r i v a t es e r v e r i ; ” o p e r a t i n gs y s t e m “ i h a r d w a r e 图2 - 5 服务器级的虚拟化 服务器级的虚拟化要求对操作系统的内核进行一些修改,但是其优点是可以 获得原始性能。 2 3 虚拟技术的典型系统小结 综合前面几个小节所述,虚拟化技术的典型系统的比较如表2 1 所示。 表2 1 虚拟技术的典璋i 系统比较 系统名称技术类型 速度 备注 b o c h s仿真较慢开源 q e m u 仿宾快歼源 s k y e y e 仿鬟耗资源国瞻。开源 v m w a r e完金缝拟化慢嚣开源 影v m完全虚拟化较慢曹开源 x e n半虚拟化很快歼源,得剑备公司支持。 v i r t u a li r o n 半虚拟化 快1 f 开源 u m l半虚拟化耗资源开濂 l i n u x v s e r v e r服务器虚拟化慢歼源 o p e = n v z 服务器虚拟化较慢开源 1 4 浙江大学硕上学位论文 第二章虚拟化技术简介 2 4 本章小结 本章简要回顾了虚拟机技术的发展历史,然后阐述了虚拟化技术的发展现 状,并且设想了虚拟化技术的未来。接着对比分析了硬件仿真,完全虚拟化,半 虚拟化技术,以及操作系统级的虚拟化技术,总结了各种虚拟化技术的优缺点, 在此过程中阐述了虚拟化技术的优越性,说明了它在实际生产生活当中的有着广 阔的应用前景。 1 5 浙江大学硕士学位论文第三章智能下机虚拟化软件平台的设计 第三章智能手机虚拟化软件平台的设计 现在智能手机中的绝大多数都是用的英特尔系列的处理器,其中p x a 1 】系列 处理器是目前来说手机c p u 中应用最多的了p x a 系列处理器的前身是 s t r o n g a r m 处理器,后来经过一些技术的规范逐渐统一的规范。运行速

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论