谷歌为什么要打造全新操作系统Fuchsia?

谷歌开发Fuchsia 替代Andorid

上周,谷歌的一个团队做了一件奇怪的事:他们悄悄披露了一个新的操作系统,从理论上讲,这个系统和Android操作系统是直接竞争的。

谷歌的操作系统名叫Fuchsia,它是一个正在开发的开源操作系统,可以在众多产品上运行,包括轻量级、目的单一的设备,比如ATM、GPS,也支持台式计算机。和Android不同,Fuchsia不是根据Linux开发的,也不是用个人计算、通信领域的其它底层软件开发的。

相反,Fuchsia操作系统是完全从零开始开发的。

谷歌打算如何使用Fuchsia,公司并没有透露详情,操作系统仍然处在早期研发阶段,可能只是一个实验。尽管如此,谷歌仍然有许多的理由可以去颠覆几十年的软件历史。

内核太老了

关于手机、笔记本,平板,有一些东西你需要明白:大多时候,产品需要适应的软件“内核”已经相当陈旧。Android使用的是Linux内核,而Linux是1991年开始开发的。Mac OS X、iOS、其它苹果平台是基于Unix开发的,1969年AT&T贝尔实验室开发了Unix。Windows计算机是以Windows NT内核为基础的,而Windows NT内核可以追溯到1993年。

内核之所以存在,主要是为了管理操作系统的最深层级。例如,内核可以处理硬件设备(比如键盘、任务安排、管理文件和内存)的请求。为了达到目的,内核会摘取操作系统最复杂难懂的部分,这样做十分有用,开发者不需要发知道特殊打印机的型号就可以让程序执行打印命令。

一方面产业对老内核(比如Unix、Linux、Windows NT)顺从依赖,另一方面产业对尖端技术痴迷追求,二者似乎存在矛盾,产业专家贺拉斯•德迪认为,在最低层级,计算的本质与几十年前是一样的。例如,今天的Windows计算机使用的是英特尔处理器, 而英特尔处理器又源起于第一台IBM PC。从某种程度上讲,内核只是一件商品。

“我们仍然使用相同的架构,使用相同的计算概念(注册表,晶体管),正是因为这个原因,我们没有必要开发更好的内核。”德迪称,“内核问题已经解决了。”

今天,我们将传感器、计算力植入更多的设备,例如,我们会将普通家庭转变为智能家庭,还可以让一切东西更加互联(也就是所谓的物联网)。开发Fuchsia的背后理由可能是老内核(比如Linux)无法适应新设备浪潮的到来。正因如此,谷歌团队才会尝试创造一个新内核,适用于新时代。谷歌的内核名叫Magenta,它是以谷歌最近的实验项目LittleKernel为基础开发的。

扎克•苏帕拉(Zach Supalla)拥有的公司Particle提供互联网硬件装备和开发者工具,他认为,在小型计算设备上Linux存在一些问题。对于这类应用来说Linux太大了。虽然Linux的内核可以定制,开发者可以摘掉一些不需要的部件,但是占用的空间仍然达到了兆字节(megabytes)。换言之,我们很难将Linux内核植入便宜的微控制器,安装的处理器会更大一些、更贵一些、能耗更高一些。

Linux的缺陷

还有一个问题就是Linux无法支持“实时”功能。在ATM、医疗产品、其它目的单一的设备中,我们也安装了操作系统,但是Linux与这些操作系统不同,它通过“安排”来处理众多的任务。在具备通用目的的计算机中,Linux可以实现性能的最大化,但是如果用在需要精准定时的设备中就会产生问题,比如3D打印机,汽车内部的机械控制。

“如果你想要确保产品的运行精准到毫秒,肯定不希望系统存在一个流程,用它来确定什么任务先执行。”苏帕拉说。

苏帕拉还认为,在物联网应用中,如果安装的是通用目的的操作系统——比如Linux,它的安全性会降低。代码越多,潜在的安全漏洞也就越多,我们需要解决这些漏洞,或者通过防火墙、VPN来锁住漏洞。

“如果我们运行的是实时操作系统或者嵌入式操作系统就会有一个好处,没有漏洞需要锁住。”苏帕拉表示,“它没有运行一大堆让你担惊受怕的东西。除了你编写的软件,不会有任何其它的东西运行。”

苏帕拉猜测,Fuchsia希望能将两个世界的精华融为一体,一个是Linux世界,它可以允许程序、硬件通过操作系统更好地通信;还有一个世界就是嵌入式系统,比如FreeRTOS和ThreadX。

“谷歌可能会从Linux系统中抽取层级,但是性能、小尺寸、实时特性会从RTOS中引入。” 苏帕拉表示,“我认为,做这样的事情是很有价值的,从理论上讲可以完成,只是这样的事之前没有人做过。”

向上扩展

如果Fuschia瞄准的只是“小型”设备,操作系统本身可能并没有那么重要。Fuchsia开发者的野心实际上更加庞大,他们声称该系统可以装入智能手机、台式计算机。从理论上讲,Fuchsia可以直接替代Android或者Chrome OS。

为什么要这样做?苏帕拉认为,完全从零开始开发也许可以打造一个更有效率的操作系统,它可以提高服务器的效率,而提高服务器的效率正是谷歌感兴趣的事。苏帕拉指出,Fuchsia兼容台式机可以协助模拟大量小型设备同时运行的状态,确保工作可以规模化完成。

“让一百万颗处理器高负荷运行不够好,不如让一千台服务器运行,然后让每一台服务器在同一时间运行一千个软件程序复本,这样对测试更好。”苏帕拉认为。

避开知识产权问题

德迪有一套不同的理论:谷歌Android碰到了知识产权授权问题,全新的操作系统可以回避这一问题。德迪称:“因为新系统是全新设计的,不会使用其它人争相使用的知识产权。”

“这可能是一个合理的假设,因为Linux存在一些知识产权问题。”

请注意,谷歌开发操作系统可能完全是因为学术。Fuchsia的开发者曾经表示,最终他们会用文档完全记录操作系统,而且还会发布操作系统,但是时间可能很遥远,也不清楚谷歌是否会提供支持。Android生态系统已经很庞大了,它正在与Chromebook整合。

与此同时,谷歌还有一个嵌入式变体操作系统Brillo,它是Android的压缩版本,该系统正在朝全功能平台迈进,不再只是一个骨架操作系统。

最开始时,Unix只是一个自愿项目,是贝尔实验室的无组织团队开发的,在开发Linux时,林纳斯•托瓦兹(Linux Torvalds)只是将它当成一个爱好。再过几十年,我们也许会谈论Fuchsia在Googleplex内部非同寻常的起源。

添加微信公众号“爱玩手机网”评论:爱玩手机网 » 谷歌为什么要打造全新操作系统Fuchsia?

添加微信公众号“爱玩手机网”评论 0

文章评论已关闭!