利用虚拟化简化Android迁移_678体育

来源:678体育作者:678体育 日期:2024-06-19 浏览:
本文摘要:在将近18个月的时间里,GoogleAndroid平台已从一名新生儿茁壮为全球移动市场乃至移动领域之外其他智能设备领域内的最重要成员。更加多的手执设备开始部署Android平台,到2010年末,预计还不会问世数十种使用Android的手机设计,除此以外,Android在其他领域的应用于也日益普遍。

678体育

在将近18个月的时间里,GoogleAndroid平台已从一名新生儿茁壮为全球移动市场乃至移动领域之外其他智能设备领域内的最重要成员。更加多的手执设备开始部署Android平台,到2010年末,预计还不会问世数十种使用Android的手机设计,除此以外,Android在其他领域的应用于也日益普遍。  Android平台具备两大吸引力:Android为OEM获取了一个功能丰富的开源移动操作系统,让设备不仅做开箱即用,而且需要反对第三方应用程序;AndroidMarket应用程序商店中第三方应用程序的产品组合大大减少,拉升了对基于Android的设备的市场需求,同时为整个生态系统带给了新的商机。

但另一方面,以Android为目标的设备硬件也为开发人员带给了一系列挑战:内核对CPU及SoC的反对、驱动程序研发、性能优化、与其他系统软件的统合等等。  本文将探究这些难题,并侧重描写移动/嵌入式虚拟化如何需要协助OEM及其他开发人员修改Android反对和迁入。尤其地,本文将融合用于风行的BeagleBoard与OKL4Microvisor。

此外,文中还将以安全性VoIP作为应用于示例,展示hypervisor技术如何协助开发人员建构和部署更为务实的Android设备及运营于其上的软件和服务。  在BeagleBoard及其他硬件上反对Android  BeagleBoard(http://beagleboard.org)享有十分活跃的开发人员社区,为BeagleBoard硬件及在其上运营的软件获取反对。

基于ARMCortex-A8CPU架构的TIOMAP3530亦获益于强劲的开源社区和商业反对,从而使得该平台沦为专业人士及业余爱好者的理想测试环境。  Android和BeagleBoard汇聚了应用于普遍的软硬件技术,并且Android曾经被重制到BeagleBoard上,结果各不相同。尤其是OpenKernelLabs(OKLabs)团队找到了一系列的问题,如驱动程序反对受限、稳定性过于低、内核频密失调或几乎无法启动。这些故障不一定指出软硬件平台本身不存在问题,而是由于Android项目很快发展和研发精力集中所导致的。

  用于虚拟化作为迁入工具  在企业数据中心和桌面领域,虚拟化的应用于更加广泛,其反对的用于案例和应用于数不胜数,其中还包括硬件统合、负载平衡、安全性和沙箱、配备、多操作系统反对、交叉研发和原有软件迁入等。在嵌入式尤其是移动应用领域,虚拟化在研发和部署方面的应用于亦日益普遍。OKLabs公司为移动手执设备制造商(OEM)获取microvisor──OKL4,用作在某些情况下构建有些类似的镜像服务器及桌面虚拟化应用于,如CPU统合、多核反对、安全性分区和固件升级,反对多操作系统(实时操作系统和应用于操作系统,如Android、Linux和Symbian等),以及嵌入式/移动平台迁入。将microvisor(基于微内核的嵌入式hypervisor)引进到现有设计中时决不可影响该项设计的明确细节。

microvisor应当隔绝新旧的子系统,但同时让其需要像在完整环境中那样用于现有软件组件(例如Android),从而彰显系统设计人员灵活性。基于这一理念,一个结构较好的microvisor环境不应反对非常简单且必要的迁入流程:  1.Microvisor与目标硬件的构建  在BeagleBoard与OKL4的配上中,OKL4Microvisor已反对大多数常用的嵌入式/移动CPU,其中还包括TIOMAP3530,使构建更为便利。  2.Android与Microvisor的构建  对于构建了虚拟化反对(如IntelVT和AMD-V)的企业和桌面系统,对最重要资源(如中断掌控、MMU和高速缓存配备)的采访容许是通过硬件机制构建的。

由于缺少这些构件,Android(或其他客户操作系统)必需展开定虚拟化,即通过改动让microvisor截击并新的构建此类操作者。为修改Android反对,OKLabs获取了一种现成的Android定虚拟化构建──OK:Android。

  3.设备驱动程序迁入  似乎,应用于平台必需要与设备硬件展开交互。在最初的移动手执设备构建中,Android必需驱动LCD显示屏、触摸屏或键盘、音频输出/输入、USB、WiFi及3G网络接口、数字摄像头和加速器等。对于移动领域以外的应用于,如数字视频、家庭娱乐及其他领域,还必需研发高清电视、红外和无线电遥控器、以太网、家居自动化总线(如X10)等的驱动程序。

  将驱动程序迁入到虚拟化环境是一种投资回报率的问题──有多种自由选择,每种方案都有相对于其投资水平的优势:  原地:原有驱动程序以其完整设置保有在Host操作系统(Linux、实时操作系统等)中。这种情况下的迁入主要是构建和配备microvisor,以优化对客户操作系统环境的反对。

  原地虚拟化:现有驱动程序仍保有在其Host操作系统环境中,并利用额外的配备来让其他客户机需要通过OKL4Microvisor虚拟世界设备框架采访这些驱动程序。  独立国家:将原有驱动程序新的托管地到称为设备服务器的专用轻量级虚拟机(安全性单元)中,并必要在microvisor上运营。所有客户机皆用于虚拟世界设备,然后由microvisor强迫策略展开管理。因此,独立国家驱动程序是目前及未来客户操作系统中尤为安全性和最便携的驱动程序。

  4.通信栈  通信栈(3G、WiFi等)一般来说运营于原有实时操作系统之上,可以随同其完整Host操作系统原封不动地新的托管地到microvisor环境中。在移动应用于中,这种能力可避免必须新的提供网络运营商或其他监管机构的证书,而丧失抢占市场先机这一极大优势。

  5.其他原有组件  其他原有组件(中间件、实用程序、完整应用程序)可以利用OKL4相容库必要迁入至microvisor,并作为一个单元构建到最后系统中。一个典型应用于示例是自定义GUI/应用程序栈,可以原封不动地重制过来,一方面节约了时间,另一方面还保有了产品的多样化特性。  BeagleBoard上的虚拟化Android──软件架构  根据上述流程,我们可以搭起这样一种架构:在BeagleBoard上建构一个托管地Android的虚拟化环境,同时不具备安全性VoIP功能,如图1右图。

    图1:图中架构包括BeagleBoardOMAPCPU裸机上运营的OKL4Microvisor。启动时,系统引领转入OKL4,然后由OKL4读取并协商Android及其他客户机软件的继续执行。  在特定安全性单元(虚拟机)中,microvisor托管地:  Android。

该组件与其他应用于关键型组件几乎隔绝,以保证加到至该对外开放操作系统平台中的软件会影响到整个系统的稳定性或安全性。事实上,即使Android再次发生瓦解或乱序执行,OKL4仍可以新的读取/重新启动Android,而不影响其他安全性单元中正在运营的软件(如Linphone)。

  Linphone(或其他VoIP栈和应用程序)。在我们的参照设计中,我们重制了Linphone以便必要在OKL4Microvisor上运营,但如果资源容许的话,Linphone可以待命在安全性单元中的Linux实例上。

我们的设计无意地将Linphone与Android隔绝出去,以保证Linphone的稳定性和安全性;另一方面,将Linphone托管地在OKL4Microvisor之上还需要节约内存并提升性能。  音频及串口驱动程序。Android与Linphone分享音频驱动程序,即使用户停止使用了Android,该驱动程序仍需要为VoIP通话获取音频输出/输入。串口驱动程序是隔绝分享的,以支持系统控制器和调试。

  运营系统功能如下:Android作为主操作系统,通过BeagleBoard上的OMAP表明硬件获取标准的Android用户界面呈现出给客户。用户可以用于基于Android的VoIP电话号码应用程序或Android下运营的Linphone控制器服务器来启动安全性的VoIP通话。

通话启动后,用户可以运营其他Android应用程序(游戏、网页网页等),而不影响VoIP通话的质量或安全性。此时,即使Android转入睡眠中模式甚至死机,都会造成通话中断。


本文关键词:678体育,利用,虚拟化,简化,Android,迁移,678,体育,在

本文来源:678体育-www.nextbestmodels.com

0
无法在这个位置找到: foot.htm