林鴻在MINIX平臺上重新編譯的CQCQ軟件版本沒有圖形化界面,相當于是專門給有一定技術基礎的用戶而準備的,要想查詢一些信息,必須使用命令進行查詢。
他使用命令查看了一下在線列表,發現此刻竟然有三人在線,一個是他自己,另外一個是菲麗絲,還有一個CQ號為10002的用戶,昵稱為露西。
看來,這個露西應該就是菲麗絲的姐妹了。
菲麗絲,改進后的版本感覺怎么樣?
選擇與菲麗絲通話,給她發了一條信息。
石頭大叔,你上線啦?新版本比之前的要好太多了,太方便了!我的好姐妹露西也在用,并且我都沒怎么教她,很快就上手了。
是嗎?那太好了。另外,我已經在里面加入了文件共享功能,你可以試用一下。
看到了,我剛剛還給露西傳了一個文件呢!我都用了這個軟件這么久了,有什么變化,立刻就會知道。還有一個聊天室功能對吧?要不我開一個房間,我們三個人一起在里面聊天吧?
我現在有點事情,下次吧。你可以多找幾個朋友來用用,如果他們有什么建議,你幫我都搜集起來,不管好的壞的都可以,回頭一起發給我。
這個完全沒有問題,現在的這個版本很容易使用,我相信她們會很愿意加入的!
那我先下了,還有點事情。
嗯!明天我會派人去接你,可別將這事給忘記了!
看到菲麗絲的反饋,林鴻心情也非常高興。
自己做的東西,能夠得到別人的認可,這種感覺的確不錯。黑客們不斷地探索著未知的世界,然后免費公布自己的成果,除了本身興趣的內在動力,有很大因素就在于想得到別人的認可。
從某種角度來看,這也是一種虛榮心。只不過技術宅們比較含蓄,他們以這種獨特的方式來滿足自己內心的虛榮心。可能連他們自己都沒有意識到這一點。
由于MINIX下還是沒有自己的郵件客戶端。林鴻并不能直接和LINUS進行聯系,不得不將編寫好的源代碼和程序一起打包。拷貝到軟盤當中。然后再切換到MSDOS系統下。使用EMAIL將CQCQ的軟件包一起發給了LINUS。
這樣,他們聯系起來就可以更方便了。
接著,林鴻便重新登錄到CQCQ上掛著,一邊研究著MINIX的源代碼,一邊時不時地刷新一下在線列表。
菲麗絲發消息過來詢問怎么又上了,邀請他一起加入聊天,林鴻只好進入菲麗絲創建的聊天室中聊了一會兒。
可以看得出來,那個露西的性格比菲麗絲還要更加活潑,一直旁敲側推地詢問林鴻的一些信息。問題顯得非常露骨,對方完全將林鴻當做是菲麗絲的男朋友在問話,搞得林鴻難以招架,只能敷衍說著一些模棱兩可的話。
再次看了一下在線人數之后,他的眼神不由一亮,因為看到線上突然出現了一個第四個在線成員,名為LINUS。
終于上了!
林鴻連忙和其他兩個女孩說了一聲,從聊天室中退了出來,然后主動和LUS打了一聲招呼。
STONE:你好,LINUS,我是STONE。
LINUS:你好,呵呵!你真是給了我一個驚喜,沒想到我剛剛才將GCC發給你,你轉身就在里面開發了一個即時通信程序!
STONE:代碼都是現成的,你知道,這并不是很難。
LINUS:在MINIX下直接和你對話的感覺真不錯!STONE,你給我的驚喜可不僅僅是這個。
LINUS:我還記得,在不久之前,你還是一個對計算機完全沒有概念的火腿,而現在,你所掌握的技術和知識,已經和我差不多了。
STONE:我要學習的東西還有很多。
LINUS:你還是那么謙虛!STONE,這個CQCQ軟件,是不是宣布你愿意正式加入這個操作系統項目?
LINUS:真是個不錯的注意!伙計,我現在有一個新的計劃,你知道,MINIX版權本身并不是完全開源的,作者對其還有所保留,所以我想重新重構這個操作系統的內核。
LINUS:你聽說過GNU項目嗎?
STONE:GNU?是不是GCC誕生的操作環境?只在書籍上看到過,似乎是一個自由軟件項目,但是具體情況并不是很了解。
LINUS:GNU是一個類UNIX的操作系統,由GNU計劃推動,目標在于建立一個完全相容于UNIX的自由軟件環境,也就是完全自由的操作系統。這個計劃,最早是由理查德斯托曼在1983年啟動的,它是自由軟件基金會最早致力的目標。
LINUS:雖然這些年來GNU雖然發展得不錯,在上面出現了很多非常優秀的軟件,但是它的重要組件,也就是操作系統的內核HURD卻因為過于復雜一直緊張緩慢。
LINUS:我上周去參加了一個自由軟件提倡者的演講,覺得他們所提倡的GPL協議非常有意思,我的一個朋友也強烈建議我加入GNU自由軟件的陣營……
接著,LINUS詳細給林鴻解說了一下開源協議GPL(GNU通用公共許可證)的詳細內容,并且咨詢林鴻的意見。
STONE:你是說想做一個任何人都可以并安裝使用的操作系統嗎?
LINUS:是的。雖然MINIX也非常不錯,但是這只能免費用于教育領域,你知道,當初我為了購買這套系統,可是花了不少錢和時間。
LINUS至今還對那個經歷耿耿于懷,他可是等了至少一個月的時間,花費了一百多美元才最終將MINIX安裝在自己的計算機上。
而市場上其他系統。都是商業系統,要想使用。必須付出不小的費用進行購買。
為全世界所有的技術愛好者編寫一個完全可以免費使用。但是功能又非常強大的操作系統,這真是一個野心勃勃的想法。不過這非常酷。不是嗎?
林鴻對此自然能是表示強烈支持。
于是,他和LINUS在CQCQ軟件上討論了一下重新設計新的操作系統的一些細節。
在這方面,LINUS比林鴻要更有經驗,因為他在這一塊已經研究了很久了,再加上有MINIX的參考經驗,所以基本上都是他在給林鴻講述基本概念。
MINIX的內核采用的是微內核結構設計。
微內核結構由一個非常簡單的硬件抽象層和一組比較關鍵的指令或系統調用組成。這些指令,僅僅包括了創建一個系統必需的幾個部分,如線程管理,地址空間和進程間通信等。
簡單的說。就是內核非常小。這種設計思想的目的,是為了將系統服務和系統的基本操作完全分離出來,將他們之間的關系淡化到最低程度。
例如文件系統在微內核中也是作為一個進程,崩潰了也沒有關系,再像其他軟件一樣重啟一下就好了。
MINIX的作者塔能鮑姆本身就是一個操作系統設計方面的教授,在設計這個系統的時候就吸收了當時最先進的設計思想,微內核就是一種比較先進的內核結構。
但是LINUS似乎并不喜歡這個設計,他認為把很多系統結構和操作全部作為組建存在于內核之外,會導致安全性方面的漏洞,很容易受到攻擊。另外,微內核內部過于簡單,其進程管理和中斷管理的能力也非常有限,相對于MINIX這樣簡單的玩具來說,的確可以滿足要求,但是如果想要實現更加復雜的系統功能,就有點有心無力的感覺。
微內核結構,更適合單片機系統,這樣的系統甚至連文件管理系統都不需要,而且已經配置比較低,內核自然越小越好。
與微內核相對應的結構,就是宏內核。
MSDOS使用的就是宏內核架構,這個架構分為內核空間和用戶空間。
內核將硬件結構封裝起來,形成比較高級的虛擬接口,供用戶空間的程序進行調用。
LINUS:我比較傾向于使用宏內核架構,這樣操作系統中的程序代碼都是高度緊密結合在一起的,雖然可能會出現某個模塊有BUG而導致整個系統崩潰,但是如果經過精心設計和改善,這樣的問題是可以完全避免的。
LINUS:更重要的是,這樣的內核會讓操作系統的代碼在硬件的運行效率更高,安全性也更強。
林鴻聽他這么一說,也覺得有一定的道理。
其實在他看來,既然已經有案例證明兩種架構都是可行的,使用哪種內核都無所謂,關鍵看怎么去實現它。
因為剛開始的時候,這個項目是從MINIX開始啟動的,可能LINUS是想要徹底拜托MINIX籠罩的陰影,想要從根本架構上將重新設計的系統和MINIX區分開來。
STONE:那么,給這個系統取一個名字吧。
LINUS:我早就想好了,FREAX,來自英文單詞FREAK,有“異想天開”的意思,你覺得怎么樣?
STONE:聽上去不錯。末尾改為X是像MINIX那樣沿襲UNIX的習慣?
LINUS:是啊,X的發音聽起來更酷,不是嗎?
STONE:要不,干脆叫LINUX吧,就是你的名字的后一位字母改為X。我覺得這個名字比FREAX更好一點。
LINUS:這樣不好吧,太以個人為中心了。
STONE:我覺得這不錯啊,這只是一個代號。再說,這個項目本來就是你發起的,就用這個吧,“利納克斯”,讀起來也挺順口的。
LINUS:OK,聽你的,就叫LINUX!(