簡介
現今這個世界上,恐怕沒有誰比貝爾對作業系統更有發言權了,很久很久以前,貝爾的一群人創造了至今最為重要的網路作業系統-UNIX,曾有人形容:即使這是貝爾實驗室所做的唯一貢獻,也足以名垂千古了!如今的網路雖被稱為分散式計算的奇蹟,但事實卻並非如此,將許多互不兼容的硬體和協定捏合在一起,使得我們的網路既混亂又不可靠。正因如此,貝爾實驗室的Lucent開發組(包括一些極有影響力的人物如Dennis Ritchie和Ken Thompson,你不會不知這二位是誰吧)對這種趨勢十分不滿,決心依靠自己的經驗,超越UNIX,編寫出最完美的作業系統,這就是他們的Plan9。Plan9並不是UNIX,也不是它的變種。但假如安裝完它的演示版後,你或許會對此表示懷疑。初看起來它確實和UNIX極為相似(尤其是你進行目錄列表的時候),但Plan9是一個完完全全的新作業系統。正如貝爾實驗室的FAQ所述:“Plan9自身是一個作業系統;它並不是以一個應用程式的身份運行在另一個系統上。它的代碼是從底層寫起的,並沒有包含任何他人的代碼。儘管此作業系統的界面受了UNIX的很大影響,但它並不是UNIX的替代品,而是一種最新設計”。這些和UNIX的相似之處只是表面現象,二者在底層的工作方式是很不相同的。兩者的主要區別之一是Plan9對待對象(在此處對象是指目錄、檔案、進程等)的方式。在Plan9下,所有的對象皆以檔案對待。此技術在UNIX下也有利用(如UNIX將許多設備作為檔案對待),但遠沒有發展到Plan9的那種程度。儘管幾年來,Plan9仍作為一個“概念型”的系統存在,但以貝爾實驗室在技術領域的權威地位和創造力,Plan9也許會對未來一代作業系統和網路架構產生十分深遠的影響。
基本概念
Plan9從一開始就作為一個完全的網路作業系統被設計,所以,在Plan9背後的概念更多的是和網路而不是單個用戶的需要相關。它的主要特色是它處理網路的方式。請看如下有關Plan9的文章所述:“Plan9採用網路客戶-伺服器環境下的分散式計算概念,在整個分散式系統中應用程式可用的資源集合能被透明地訪問,因此應用程式在何處運行已無關緊要了”。為了理解Plan9系統和其他網路化的作業系統的不同之處,請看圖1:典型的網路配置(在辦公室最常見的一種)是使用一台檔案伺服器和若干的工作站,這裡的每一台工作站都配置了完整的硬體和軟體。但這種結構離完美的分散式處理仍有很大的距離,單純的將處理能力和工作檔案“分布”到網路上,確實給用戶的某些工作帶來了很大的方便,但這樣同時還使計算機資源受到浪費,使管理便得複雜,有形無形地增加著系統擁有成本。例如,財務部需要使用人事部的某些檔案,就需要賦予財務部使用這些檔案所需的權力,而一個公司可能有許多的部門,這種複雜的信任關係及其認證過程無疑是系統管理員最頭疼的問題之一,而且這很可能會在網路埋下非常隱蔽的漏洞。下面我們可以看看Plan9的設計思路:在Plan9中,單獨使用一台具有極強運算能力的計算機用來為遠程終端和工作站提供運算服務,即專門用來提供CPU處理能力,稱作CPU伺服器;同時另有一台專門的機器用來完成存儲所有工作檔案的任務,稱為檔案伺服器。具體的情形可以參看圖2所示。這樣設計解決了許多棘手的問題,如集中存儲檔案可以獲得管理上的便利和更高的安全性,無須再在客戶端配備複雜的備份和保護設施了;同時管理員在設計系統許可權的時候可以減少很多麻煩,因為這種集中使其思路變得更加清晰;另外,Plan9的登錄機制無須口令檔案在網路中飛來飛去,這無疑大大提高了系統的安全性……分散式計算的發展為我們帶來了“所向披靡”的客戶機-伺服器結構,在經過許多年的發展之後,已漸露疲態,越來越無法滿足飛速發展的網路環境,這時有許多人開始號召網路結構向集中式回歸,但事物的存在滅亡必然有其理由,老式的巨型機帶終端的方式當然不會重現,這時貝爾出色地為我們詮釋了未來網路的發展趨向,其間確實有許多方面值得我們作深入的思考。
安裝及使用
你可能很想嘗試一下Plan9,貝爾實驗室在Internet上發布了一個專用於PC系統的免費版本,如果你手裡還有一台閒置的舊PC(還好不是要舊的SUN工作站),那正好可以用來“試刀”,使用這一辭彙是因為和安裝任何新作業系統一樣,你應該思考一下可能出現的壞情況,包括從單純的安裝失敗到可怕的數據丟失甚至硬碟損壞,不是說笑,我的一塊wd硬碟還“歇”著呢。如果此類事件發生,最大的可能是Plan9不支持你使用的硬體,但是只要謹慎從事並遵循一些規則,情況並不那么“恐怖”。
用於安裝的機器
千萬記住,用於安裝的機器應該是不被使用和“乾淨”的。換句話說,你決不應該將此Plan9版本裝在你賴以生活的機器上,因為Plan9的安裝會徹底導致其他作業系統或分區無法引導(比如Linux)。除非你真的沒有機器可用且真的喜好精神刺激,否則,還是使用一直撇在牆角的那台DX66吧!如果你只有一台計算機但仍想嘗試一下,那想辦法找一個活動磁碟盒。使用這個設備你可以方便地將你平時使用的硬碟換成安裝了Plan9的硬碟。使用什麼樣的硬碟由你所想安裝的內容決定。如果你只是安裝PC版,使用40MB硬碟即可(如果你想從CD-ROM中安裝Plan9完全版,你將需要至少540MB的空間)
雖然用於安裝的計算機並不非要一顆非常強勁的心(如同一些UNIX系統一樣,Plan9可以運行在我們看來很“惡劣”的環境上),但我仍然推薦使用486/66以上CPU的機器,儘管使用奔騰機並不比486快很多,但在低於DX66的配置上運行Plan9還是有些吃力。
與CPU主頻相比,記憶體無疑更為重要,你至少需要8MB記憶體,有人認為Plan9在4MB的機器上也可以運行,但你試一下就知道那是不是能稱為“運行”了。另外,在低於8MB記憶體的機器上安裝Plan9,有時會導致安裝失敗,而加上一些記憶體就成功地完成了安裝。
安裝過程(PC版)
首先要得到安裝檔案,正確的做法是到貝爾實驗室的網站下載(因為這樣可以保證得到的是最新的版本),這四個檔案是:disk、disk2.vd、disk3.vd、disk4.vd,這些都是磁碟映像檔案,下載完成後將它們寫入軟碟中。接下來要做的是對將要安裝Plan9的硬碟進行分區,首先分出一個區,容量夠DOS系統“容身”即可(畢竟你不是想在這台機器上套用DOS),然後格式化此分區並將DOS安裝在這個分區上;也就是說,現在這塊硬碟應該有一個10M左右的DOS分區,其上安裝有DOS系統,硬碟的其他部分空空如也,不包含任何其他分區。
接下來可以開始安裝Plan9系統了,首先用Plan9的啟動盤(寫入disk1檔案的磁碟)啟動,經過一系列的檢測之後,將會出現藍色的螢幕,標題是“System Installation & Configuration”。鍵入回車後,螢幕上出現一些選項,如果這些條目沒有什麼問題的話,可以選擇安裝選項,開始安裝,這時螢幕上會滾過正在安裝的檔案的檔案名稱。此過程結束之後,安裝程式將詢問一些機器配置方面的問題,提供答案之後在選單中選擇Save Configuration(在保存之前你還有一次機會返回到選單中更改你認為有問題的選項)。保存選項之後,拿出啟動盤,重新啟動到DOS狀態。下面進入硬碟上的Plan9目錄,鍵入B裝載一個安裝程式,你需要定義一個目標盤,讓程式將Plan9檔案系統安裝在此盤上;如果你不是只有一個硬碟或者有許多的分區(而不是象以上這種狀況),在這裡需要特別注意,不要指定錯誤的硬碟或分區。選擇完分區之後,Plan9提示你插入第二張軟碟,直至最後一張軟碟,整個過程結束後,還會出現一個選單,選擇其中的Make the newly installed plan9 the default,至此所有的安裝過程都結束了,恭喜你,下面再次重新啟動計算機,我們可以開始使用Plan9了。
開始使用Plan9
計算機啟動之後,進入Plan9目錄並鍵入B,這會載入Plan9系統,這時所看到的情況與用第一張軟碟啟動時看到的是一樣的,檢測過程結束後,在root和user提示行中均回車,系統將詢問你是否進入視窗系統,選擇yes會進入Plan9名為8½的視窗系統,展現在你面前的是一個包含有時鐘的螢幕,其基本的命令與UNIX十分相似,如cd和ls等,現在可以在你的系統中盡情遊歷了!
關於Plan9的應用程式
目前,Plan9上的套用軟體還非常少,這是因為目前Plan9還不會成為商品化的作業系統,這使得只有那些極有求知慾的編程人員才願意花上數百美元購買完整的系統。目前,在Plan9平台上可以運行一些基本的文本處理程式、web瀏覽程式和xwindows系統等。
Plan9的視窗系統
Plan9的視窗系統被稱作8½,這個系統甚至可以以簡陋來形容,桌面上只有時鐘和一個終端視窗,你可以用滑鼠完成絕大部分操作(你最好找一個三鍵滑鼠,如果沒有中間的鍵你將無法使用一個系統選單)。如果你使用過Xwindows系統,你會發現它的使用方法與其十分類似(看來Bell的傢伙對UNIX的設計確實情有獨衷),而與微軟的Windows系統不太相同。