本文经AI新媒体量子比特(公众号ID:QbitAI)授权转载,转载请联系出处。Plan9操作系统?没听说过……但事实是连Linux和Windows都得称呼它为“老大哥”!没错,这个由“C语言之父”在40年前开发的操作系统,至今仍深深地影响着Linux和Windows。最新消息是,拥有Plan9版权的美国贝尔实验室刚刚宣布,将向开发者社区开放版权。也就是说,Plan9这个在幕后默默影响业界40年的分布式操作系统,即将正式“复活”。Plan9系统有什么用?著名的贝尔实验室是C语言和Unix的发源地,Linux系统的前身。当然,诸如晶体管、激光器、太阳能电池、发光二极管、数字开关、通信卫星、电子数字计算机、蜂窝移动通信设备、远距离电视传输、人工语言、有声电影和立体声录音等重大发明都是在也诞生于此。至于Unix和C语言的核心开发者,大家并不陌生。肯·汤普森和丹尼斯·里奇都是赫赫有名的大腕,他们都因为这两项成就获得了图灵奖。但鲜为人知的是,他们还在1980年代在贝尔实验室开发了另一种操作系统Plan9。其实Plan9一开始并不是这个系统的名字,而是这个项目的代号。名字来源于因“烂到极点”而在影史上备受追捧的科幻电影《外星9号计划》。看来C语言之父也是铁杆科幻迷。之后,贝尔实验室因为种种原因停止了对该项目的投资。前期研发工作完成后,该项目被搁置。成为系统的名称。为什么要开发这样一个系统?当时,Ken和Dannis意识到分布式数据存储和调用方式将成为未来的主流,因此需要构建一个简单、优雅、实用的系统来满足这一需求。Plan9的开发没有依赖任何现有的Unix基础,而是完全从头开始。从当时的角度来看,Plan9非常先进和超前,其模式与传统操作系统完全不同。Plan9的结构是一组松散耦合的服务,可以托管在不同的机器上。设计的关键概念是每个进程的命名空间:即服务可以映射到固定的本地名称,这样即使当前服务被另一个提供相同功能的服务替换,使用这些服务的程序不变。Plan9是一个真正的分布式操作系统,而不仅仅是几个Unix功能的简单集成。您可以毫不费力地在网络上的多台主机上执行任何程序,使用网络上任何主机的任何资源,包括文件、进程、图形、网络和磁盘。如果Linux可以这样工作,那么就没有人需要Kubernetes了。通俗地说,如果在Unix或Linux中“一切都是文件”,那么Plan9就是“一切都是网络文件系统”。如果你有一台笔记本电脑和一台台式机,但只有台式机连接了打印机,你可以直接从笔记本电脑打印吗?在Linux中,您必须设置CUPS、打开网络端口、下载驱动程序并设置两台机器以与打印机通信。在Plan9中,您的笔记本电脑只需通过网络打开桌面上的打印机文件即可打印。九号计划有多先进?虽然他被贝尔实验室藏了起来,但Plan9中的很多经典设计和想法至今仍在沿用。Linux、Windows、5G都借鉴了Plan9,EricS.Raymond在书中分析了Plan9最终停产的原因。他认为,Plan9最终会失败,原因很简单,就是不够完善。当时,尽管Unix看起来破烂不堪而且明显缺失,但它仍然完成了工作,这足以让它保持原状。开创性的Plan9从未“起飞”,但其创新被许多商业操作系统采用。例如Linux中广为流行的通过文件系统提供操作系统服务的概念就来自于Plan9。此外,Plan9极简的窗口系统设计被无数系统借鉴,包括Windows:和常用的UTF-8字符编码今天在浏览器中使用的最初是为Plan9发明的,并在Plan9中首次实现。Plan9的分布式设计也在Nokia-BellLabs项目中得到延续,例如WorldWideStreams,一个流处理程序,今天部署在多个5G边缘云和核心云中的计算节点在地理上是分开的。可以说,今天流行的微服务架构就是几十年前Plan9提出来的。从这个角度来看,九号计划从未真正“退役”过。几十年来,民间爱好者自发组建了一个社区来开发Plan9。近日,贝尔实验室正式宣布Plan9彻底“复活”,直接将版权委托给开发者社区。Plan9复活后会做什么?贝尔实验室官方认可的开发者社区叫做Plan9Foundation。它是由自下而上的爱好者组织的。2020年9月刚刚成立,在基金会主页上仅表示未来将致力于Plan9的研发和应用,具体工作计划尚未发布。而贝尔实验室似乎不确定Plan9在未来会有多大用处。他们在一份官方声明中表示:贝尔实验室非常支持开源社区,Plan9可能会造福于全球软件开发社区。谁知道呢,也许Plan9将成为支持即将到来的工业革命的新兴分布式云基础设施的一部分。嗯,看来贝尔实验室打算彻底“放开”Plan9。只是不知道,如果未来Plan9真的能够大行其道,成为一个具有巨大影响力的操作系统,贝尔实验室会不会后悔今天的决定?