Plan 9操作系統?沒聽說過….
但事實是,連Linux、Windows都得叫它一聲“老大哥”!
沒錯,這套40年前由“C語言之父”開發的操作系統,如今仍然在深刻影響著Linux、Windows,
最新消息的消息是,擁有Plan 9版權的美國貝爾實驗室,剛剛宣布下放版權給開發者社區。
就是說,Plan 9這個在幕后默默影響行業40年的分布式操作系統,要正式“復活”了。
Plan 9系統是干什么的?
大名鼎鼎的貝爾實驗室,是C語言,以及Linux系統的前身Unix誕生地,
當然,這里也誕生了晶體管、激光器、太陽能電池、發光二極管、數字交換機 、通信衛星、電子數字計算機、蜂窩移動通信設備、長途電視傳送、仿真語言、有聲電影、立體聲錄音等等重大發明,
而Unix和C語言核心開發者,大家肯定不陌生,Ken Thompson和Dennis Ritchie,都是如雷貫耳的big name,且都獲得因為這兩項成就獲得圖靈獎。
但是外界鮮有人知的是,他倆80年代在貝爾實驗室還開發了另外一套操作系統Plan 9,
其實,Plan 9一開始并不是這個系統的名字,只是這個項目的代號,名字來源于電影史上因為“爛到極致”而備受追捧的科幻片《外星9號計劃》。
看來,C語言之父們,也是骨灰級科幻影迷~
之后,貝爾實驗室因為種種原因停止了對這個項目的投資,早期研發工作完成后,這個項目就擱置了起來,“Plan 9”漸漸就變成了這個系統的名字。
為什么要開發這樣一套系統?當時,Ken和Dannis意識到,分布式的數據存儲調用方式日后會成為主流,所以需要做一套簡潔優雅實用的系統來服務這種需求。
Plan 9的開發,沒有依賴任何Unix已有的基礎,而是完全另起爐灶,
以當時的眼光來看,Plan 9十分先進超前,模式與傳統操作系統完全不同。
Plan 9的結構是一個松散耦合的服務集合,這些服務可能被托管在不同的機器上,
設計的關鍵概念是每個進程的名稱空間:即服務可以映射到固定的本地名稱上,因此,即使當前的服務被提供相同功能的其他服務所取代,使用這些服務的程式也不用改變,
Plan 9是真正的分布式操作系統,而不僅僅是集成了幾個Unix功能這么簡單。你可以毫不費力地在網路上的多臺主機上執行任何程式,可以使用網路上任何主機的任何資源,包括文件、進程、圖形、網路、磁盤。
如果Linux也能這樣工作,那么就沒人需要Kubernetes了。
通俗的說,如果Unix或Linux中 “一切都是文件”,那么Plan 9則是 “一切都是網路文件系統”,
如果你有一臺筆記本和一臺臺式機,而連接了列印機的卻只有臺式機,那使用筆記本能不能直接列印?
在Linux中,你必須設置CUPS,打開網路端口,下載驅動程式,設置兩臺機器都能和列印機通信,
而在在Plan 9中,你的筆記本電腦只需要通過網路打開桌面的列印機文件就可以列印了,
Plan 9到底有多先進?盡管他本身被貝爾實驗室雪藏起來,但是,Plan 9中的很多經典設計和思路,一直沿用至今。
Linux、Windows、5G,都借鑒Plan 9
Eric S. Raymond在他的著作中分析了為何Plan 9最終下馬。
他認為,Plan 9最后會失敗單純只是因為它的完善程度不夠大。當時,雖然Unix看來破破爛爛又有明顯缺失,但是它還是能把工作完成,這就足以保住它的地位了,
開創性的Plan 9最終沒能“起飛”,但它的創新卻被許多商業操作系統所采用,
比如,Linux中廣泛普及的通過文件系統提供操作系統服務的概念就出自Plan 9。
此外,Plan 9極簡主義窗口系統設計已經被無數系統借鑒,包括Windows:
而今天在瀏覽器中普遍使用的UTF-8字符編碼,最初就是為Plan 9發明的,并在Plan 9中首次實現。
Plan 9的分布式設計也在諾基亞-貝爾實驗室的項目中得以延續,比如World Wide Streams,這套流處理程式今天部署在地理上相隔甚遠的多個5G邊緣云和核心云的計算節點上,
可以說,今天流行的微服務架構,早在幾十年前,Plan 9就已經提出了。
從這個角度來看,Plan 9其實從來沒有真正“隱退”過。
幾十年來,一直有民間的愛好者自發組成社區對Plan 9進行開發,而最近,貝爾實驗室則官宣完全“復活”Plan 9,直接將版權下放給開發者社區,
Plan 9復活后要做什么?
獲得貝爾實驗室官方認可的開發者社區,名字叫Plan 9基金會,是愛好者們自下而上組織起來的,2020年9月剛剛成立。
基金會的主頁上,只寫明了將來會致力于Plan 9的開發和應用,具體的工作計劃還沒有出臺。
而貝爾實驗室對于Plan 9能日后能發揮多大作用似乎也沒有把握,
他們在官方聲明中說:
貝爾實驗室十分支持開源社區,而Plan 9可能使全球軟體開發社區受益,
誰知道呢,也許Plan 9會成為新興的分布式云基礎設施的一部分,支撐著即將到來的工業革命。
好吧,看來貝爾實驗室打算徹底“放生”Plan 9。
只是不知道,假如日后Plan 9真的能成氣候,變成有巨大影響力的操作系統,貝爾實驗室會不會后悔今天的決定呢?
最后,獻上彩蛋一枚,
Plan 9的開發者之一,同時也是C語言最主要的發明者Dennis Ritchie,是一個十分傳奇的計算機科學家。
有多傳奇?在一眾計算機大佬中,他是獨一份沒有博士學位的,
并且,他是出于一個“十分任性”的原因,自己放棄了博士學位,
想看他的故事,在后臺回復“想看”,我們馬上安排!