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