说起虚拟化技术,可能大部分非技术从业者都会一头雾水,其实这门技术只是听起来略显晦涩,实际上早已影响我们的生活很多年,虚拟内存、虚拟光驱、云计算等服务都属于虚拟化技术的衍生品,但是由于在普通人生活中出现的频次不高,虚拟化技术似乎已经变成了一个过时的名词,今天不妨从安卓模拟器这个与用户最接近的虚拟化技术衍生品入手,简单回顾一下这项技术的发展史,然后共同展望一下它将会对我们的生活带来哪些新的影响。
安卓模拟器问世之初,虚拟化技术的震荡阶段
安卓模拟器在成为大众级产品之前,已经出现了很多年。2007年,PC虚拟化技术领头羊InnoTek公司以“GNU通用公共许可证”(GPL)发布自由软件VirtualBox,并提供二进制版本及开放源代码版本的代码,最强大的免费虚拟机软件宣告诞生,同期能与VirtualBox进行对抗的,也只有另一个王牌VMware,而VMware是不开源的。从此,全球无数开发者和工程师都在不同的阶段通过使用VirtualBox满足特殊需求,而在那个时候,VirtualBox就已经完全支持Linux的安装和执行了,这比基于linux开发的Android发布源代码,早了将近一年。也就是说,适用的“安卓模拟器”几乎与安卓系统同时问世。
21个月之后,第一部安卓手机诞生,以VirtualBox作为工具在PC平台调试安卓系统的工程师们还并未萌生将虚拟机推向大众的想法,同样,那个时候的我们连安卓都还没见过,更遑论在PC上运行安卓系统了。随后,安卓模拟器的发展进入停滞阶段,就在第一部安卓手机问世的同年,InnoTek软件公司由太阳微系统公司所并购,随后在2010年,甲骨文公司完成了一笔74亿美元的大收购,被收购方就是拥有VirtualBox的太阳微系统公司(Sun),于是,最强大的免费虚拟机软件投入了全球最大的企业级软件公司甲骨文(Oracle)的怀抱。
安卓模拟器坎坷发展阶段,虚拟化技术不仅成就了云计算
然后时间就到了2011年,由于甲骨文调整了发展战略以及忙着跟谷歌撕逼(Android侵权Java),VirtualBox的开发进度几乎完全停滞,而面向企业又不开源的VMware实在无法替代VirtualBox,而在同年4月,Android因其巨大的前瞻性和性能优势首次超越塞班系统,成为全球先进移动操作系统,广大APP开发者都面临着没有顺手的Android调试工具,于是,技术上并无突破的大众级安卓模拟器bluestacks诞生了,但这个最早的安卓模拟器却由于技术上的落后,并未彻底走向大众(bluestacks的原理是把Android底层API接口翻译成Windows API,但由于需要翻译的接口数量巨大,在性能和兼容性上非常差),而另一款更接近开发工具的安卓模拟器(其实是虚拟机)GenyMotion诞生于2013年,一经问世就受到了开发者的青睐,但由于过于高端,也不具备全面大众化的条件。
与此同时,广义的虚拟化技术却成就颇丰,游戏玩家常用的虚拟光驱、PC常见的虚拟内存、翻墙党最爱的VPN以及全球掀起的云计算、云服务热潮都是虚拟化技术的杰作,相比之下,安卓模拟器的发展称得上是不思进取,不信看看Intel和AMD,他们都在2005就先后从CPU层面支持了PC虚拟化技术(VT),然而都2013年了,市面上连一款大众级的安卓模拟器都没有。
中国安卓模拟器技术探索,或将影响世界
时间转到2014年,随着安卓手机在全球超过10亿台以及目前为止最经典的Android4.4系统的问世,不仅是全球开发者需要一个更易用的安卓模拟器,连广大玩家都已经开始需要一款能在PC上体验最潮流安卓游戏的模拟器了。就在此时,Droid4X应运而生。这是一款以VirtualBox为容器进行深度开发的模拟器,无论是易用性还是兼容性都达到了全球顶尖,最重要的是,它是一个中国开发团队开发出来的,中文名字叫“海马玩模拟器”。
从那之后,国内的安卓模拟器厂商开始了追逐的步伐,无论是推出助手类模拟器打包各种内核,还是模仿海马玩模拟器走二次编译的老路,整个规模从寥寥几家极速发展到了数十家,一时间,全球安卓模拟器市场几乎充斥了中国产品,然而从一开始就占据领先地位的海马玩模拟器却并未在这段时间内充分发挥他们的技术优势与国内其它模拟器拉开距离,反而进入了一段时间的沉寂期。
近日,有内部人员向笔者爆料,海马玩模拟器的技术团队在推出产品之后,立即认为安卓模拟器的下一步并不是如今呈现的样子,而是另外一种或多种表现形式,而从那之后,不仅整个团队投入到了新形态的模拟器开发当中,甚至挖来了虚拟机巨头VMware的技术高管,时至今日,海马玩的技术团队已经获得了重大突破——让浏览器变成手机。
据悉海马玩的这一技术真正上线或在今年下半年,届时,每一个用户都可以在浏览器上无缝运行任何安卓APP,这将彻底改变目前的安卓生态环境。另外,这个国内顶尖的技术团队还在开发在PC、Android平台模拟iOS应用的技术,据称已经有了突破性的进展。
在维基百科上,虚拟化的定义是“抽象计算资源”,而在部分工程师心里,虚拟化的定义是“抹除一切软硬件之间的依赖”,而在安卓模拟器领域,虚拟化的定义却是“打破一切平台桎梏”,其实这三个定义基本上是同样的意思,也并不高深。时至今日,既有把云计算搞得声势宏大的“阿里云”,也有依靠虚拟化技术,用10个人管理10000台服务器数据量的“游族网络”,虚拟化技术依旧在不断应用和突破,而最贴近我们生活的安卓模拟器这一次没有放慢脚步,他们也在努力着,试图改变我们的生活。
这就是技术的美好之处。