linus:雖然這些年來gnu雖然發展得不錯,在上面出現了很多非常優秀的軟體,但是它的重要元件,也就是cào作系統的核心hurd卻因為過於複雜一直緊張緩慢。
linus:我上週去參加了一個自由軟體提倡者的演講,覺得他們所提倡的gpl協議非常有意思,我的一個朋友也強烈建議我加入gnu自由軟體的陣營……
接著,linus詳細給林鴻解說了一下開源協議gpl(gnu通用公共許可證)的詳細內容,並且諮詢林鴻的意見。
stone:你是說想做一個任何人都可以免費下載並安裝使用的cào作系統嗎?
&ninix也非常不錯,但是這隻能免費用於教育領域,你知道,當初我為了購買這套系統,可是huā了不少錢和時間。
linus至今還對那個經歷耿耿於懷,他可是等了至少一個月的時間,huā費了一百多美元才最終將minix安裝在自己的計算機上。
而市場上其他系統,都是商業系統,要想使用,必須付出不小的費用進行購買。
為全世界所有的技術愛好者編寫一個完全可以免費使用,但是功能又非常強大的cào作系統,這真是一個野心勃勃的想法,不過這非常酷,不是嗎?
林鴻對此自然能是表示強烈支援。
於是,他和linus在cqcq軟體上討論了一下重新設計新的cào作系統的一些細節。
在這方面,linus比林鴻要更有經驗,因為他在這一塊已經研究了很久了,再加上有minix的參考經驗,所以基本上都是他在給林鴻講述基本概念。
&ninix的核心採用的是微核心結構設計。
微核心結構由一個非常簡單的硬體chou象層和一組比較關鍵的指令或系統呼叫組成。這些指令,僅僅包括了建立一個系統必需的幾個部分,如執行緒管理,地址空間和程序間通訊等。
簡單的說,就是核心非常小。這種設計思想的目的,是為了將系統服務和系統的基本cào作完全分離出來,將他們之間的關係淡化到最低程度。
例如檔案系統在微核心中也是作為一個程序,崩潰了也沒有關係,再像其他軟體一樣重啟一下就好了。
&ninix的作者塔能鮑姆本身就是一個cào作系統設計方面的教授,在設計這個系統的時候就吸收了當時最先進的設計思想,微核心就是一種比較先進的核心結構。
但是linus似乎並不喜歡這個設計,他認為把很多系統結構和cào作全部作為組建存在於核心之外,會導致安全xing(聖王txt下載)方面的漏dong,很容易受到攻擊。另外,微核心內部過於簡單,其程序管理和中斷管理的能力也非常有限,相對於minix這樣簡單的玩具來說,的確可以滿足要求,但是如果想要實現更加複雜的系統功能,就有點有心無力的感覺。
微核心結構,更適合微控制器系統,這樣的系統甚至連檔案管理系統都不需要,而且已經配置比較低,核心自然越小越好。
與微核心相對應的結構,就是單核心。
&nsdos使用的就是單核心架構,這個架構分為核心空間和使用者空間。
核心將硬體結構封裝起來,形成比較高階的虛擬介面,供使用者空間的程式進行呼叫。
linus:我比較傾向於使用單核心架構,這樣cào作系統中的程式程式碼都是高度緊密結合在一起的,雖然可能會出現某個模組有bug而導致整個系統崩潰,但是如果經過jing心設計和改善,這樣的問題是可以完全避免的。
linus:更重要的是,這樣的核心會讓cào作系統的程式碼在硬體的執行效率更高,安全xing(聖王txt下載)也更強。
林鴻聽他這麼一說,也覺得有一定的道理。
其實在他看來,既然已經有案例證明求魔最新章節兩種架構都是可行的,使用哪種核心都無所謂,關鍵看怎麼去實現它。
&ninix開始啟動的,可能linus是想要徹底拜託minix籠罩的yin影,想要從根本架構上將重新設計的系統和minix區分開來。
stone:那麼,給這個系統取一個名字吧。
linus:我早就想好了,freax,來自英文單詞freak,有“異想天開”的意思,你覺得怎麼樣?
stone:聽上去不錯。末尾改為x是像minix那樣沿襲unix的習慣?
linus:是啊,x的發音聽起來更酷,不是嗎?
stone:要不,乾脆叫linux吧,就是你的名字的後一位字母改為x。我覺得這個名字比freax更好一點。
linus:這樣不好吧,太以個人為中心了。
stone:我覺得這不錯啊,這只是一個代號。再說,這個專案本來就是你發起的,就用這個吧,“利納克斯”,讀起來也ting順口的。
linus:ok,聽你的,就叫linux!
……