编者按:针对传统操作系统内核大规模、不实时、缺乏安全性等问题,谷歌、华为等解决方案提供商认为物联网设备需要全新的操作系统。但Fuchsia会像Unix和Linux一样辉煌吗?一切还有待观察。上周,一群谷歌人做了一件奇怪的事:他们悄悄透露了一个理论上可以与谷歌自己的安卓操作系统竞争的新操作系统。开源操作系统目前正在开发中,代号为Fuchsia,可在从ATM和GPS装置等轻型单一用途设备到台式计算机的所有设备上运行。但与Android不同的是,Fuchsia不是基于Linux,也不是源自构成个人计算和通信基础的任何其他软件。相反,这是一次从零开始的尝试。Fuchsia仍处于开发的早期阶段。至于这个系统将如何使用,谷歌还没有发布任何重大公告。这只是一个实验的可能性也存在。尽管如此,谷歌仍有充足的理由重置数十年的软件历史。顽固的内核问题与您的手机、平板电脑和笔记本电脑有关,但您可能没有意识到:它们中的大多数都使用相当陈旧的软件“内核”。Android使用的Linux内核是1991年开发的。MacOSX和iOS等Apple平台是基于Unix的,Unix起源于1969年的贝尔实验室。Windows计算机所基于的WindowsNT内核可以追溯到1993年。目的内核是管理操作系统的最底层。它处理来自硬件设备(例如键盘)的请求、安排任务以及管理文件和内存。为此,它抽象掉了操作系统的复杂性,这很有帮助,例如,允许开发人员在不知道特定打印机型号的情况下进行打印。对于痴迷于最新技术的行业而言,Unix、Linux和WindowsNT等较旧内核的弹性似乎有些矛盾。但根据行业分析师HoraceDediu的说法,在最低水平上,计算与几十年前基本相同。例如,今天的Windows计算机使用的芯片是第一代IBMPC中英特尔处理器的直接后代。从这个意义上说,内核只不过是一种商品。“我们仍在使用完全相同的架构,我们仍在使用相同的计算概念——寄存器、门、晶体管——因此,没有必要制造更好的内核,”Dediu说。它消失了。”我们大概也是这么想的。这些天,我们一直在将传感器和计算能力融入更多事物中,例如,将日常家居变成智能家居,并且通常将一切连接得更紧密(行话称为物联网)。也许Fuchsia背后的想法是,像Linux这样老化的内核已经不足以应对这一波新设备。同样,创作者正在为现代想象一个新的核心。(内核本身称为Magenta,基于LittleKernel,这是Google最近的另一项实验。)ZachSupalla的公司Particle为物联网提供硬件套件和开发人员工具。他指出,对于这些小型计算设备,Linux存在几个问题。一是Linux对于这类应用程序来说太大了。尽管Linux内核是模块化的,允许开发人员删除不必要的部分,但它最终仍会占用数兆字节的空间。这意味着将Linux内核塞进便宜的微控制器变得更加困难,需要处理器,而处理器往往更大、更昂贵且更耗电。Supalla说:“这个鸿沟还没有被一条全新的供应链所跨越,这条供应链需要以更低的成本制造更高质量的产品。”另一个问题是Linux不是“实时的”。与用于ATM和医疗产品等单一用途设备的嵌入式系统不同,Linux使用调度机制来处理大量任务。虽然这可以最大限度地提高通用计算机的性能,但它也会给需要精确计时的设备带来问题,例如3D打印机或车内的许多电子控制系统。“为了确保这个东西在精确的微秒时刻运行,你不希望有一个进程来决定何时运行什么,”Supalla说。Supalla说,像Linux这样的通用操作系统对于物联网应用程序来说也可能不太安全。它的代码量更大,这意味着可能有更多的安全漏洞需要通过防火墙或VPN来处理或锁定。“运行实时操作系统或嵌入式系统的一个价值在于,这些系统不必锁定任何东西,”Supalla说:“它不必运行一堆你需要的东西。需要考虑一下。它只运行您编写的软件。“Supalla的推论是,Fuchsia试图结合两者的优点。Linux在让应用程序和硬件通过操作系统进行通信方面仍然做得更好,而今天的一些嵌入式操作系统,如FreeRTOS和ThreadX,则没有”前面提到的Linux的那些问题。“他们可能希望拥有Linux的抽象级别,但也希望获得RTOS的性能、小规模和实时性,”Supalla说:“这些都是非常有价值的东西,我认为这在理论上是可以实现的。只是避风港以前做过。“如果Fuschia只针对小型设备,那么垂直缩放可能不是一个问题。但Fuschia的开发人员有更大的野心,声称该操作系统可扩展到智能手机和台式电脑。从理论上讲,这将使Fuschia成为谷歌Android和Chrome操作系统的直接替代品。为什么会这样?根据Supalla的说法,有可能从头开始制作一个更高效的操作系统,进而可以支持更高效的服务器——谷歌一直对此很感兴趣。他还指出,桌面兼容性还可以模拟同时运行大量较小的设备,从而确保大规模运行。“每次同时运行同一个软件应用程序需要一千台服务器。比摆弄一百万个芯片更容易运行,因此它更适合测试。”Supalla说。Dediu的理论不同:一个新的操作系统可以让谷歌远离Android遇到的知识产权许可问题。IP)麻烦,”他说,“这可能是一个合理的假设,因为Linux确实存在一些棘手的IP问题。请记住,这可能只是学术上的。Fuchsia的开发人员说他们将完整记录并最终发布操作系统,但还有很长的路要走,目前还不清楚谷歌是否会放手一搏。它得到了全面支持。Android生态系统已经非常庞大(并且正在与Chromebook合并)。与此同时,谷歌也正在将Android的一个版本扩展到物联网设备,这个具有嵌入式功能的版本称为Brillo——见鬼去吧Linux的缺点,它正在成为一个成熟的平台,而不仅仅是一个简单的操作系统。另外,Unix一开始只是一个志愿者项目,并没有得到贝尔实验室的认可;LinuxTorvalds做Linux只是他自己的一个爱好。也许几十年后,我们会讨论Fuchsia在谷歌内部没有被重视的事情。
