天天看點

Linux作業系統的發展與演變(二)

  Unix于BSD發起了一場曠日持久的官司,把BSD告上法庭開始了内戰的第一階段。時間走到了1990年前後,BSD開始反擊了。BSD在與System v在打官司的時候已經把System v 的Unix中的相關代碼都清除殆盡。BSD與System v沒有瓜葛後,BSD這個組織他們認為當初創立的使命已經完整的完成了即推廣Unix的使用。

  在1990年BSD中一個叫Jolitz的家夥,這個家夥嘗試把BSD移植到x86系統上

(x86指的是英特爾公司所生産的CPU當然後來也有AMD的。他們都稱為相容PC架構x86系列)大概那個時候BSD嘗試運作在X86的非專用的小型機上。于是整個Linux迎來了第一縷曙光,不過在個項目是幾個商業公司支援下研發的,那幾家商業公司更期望以閉源的方式,以商業授權的方式将移植後的BSD向外發行。這個作者Jolitz對此極其不滿,一怒之下把自己研究一年多的成果完全給删除了并退出了這個項目。是以BDS移植項目夭折了在1991年。到1992年中期這個項目才再次啟動。

  在1991年前後8月份 當時還是默默無聞的芬蘭大學生Linus Torvalds宣布成立Linux項目。事實上早期這個項目并不叫Linux項目。不過據稱Torvalds最早開始研究Linux的主要原因是學校裡面的Uinx太貴了,如果那是早有BSD的386項目他壓根不會去研究Linux系統的。不過BSD的386項目在此啟動的時候是在1992年,Linux已經誕生了好幾個月了。但是不管怎麼講BSD-386系列在某些領域也在使用,在Linux成熟之前,像早期的網易,他的運維當中他們的WEB伺服器都是跑在BSD的系統之上的。

  在這個時候BSD和Linux還看不出來誰優誰劣。但到今天為止Linux有了壓倒性的地位。另外更重要的是在1991年前後或者是1990年Http協定誕生了。随着TCP/IP協定的成熟和Http協定的誕生網際網路呈現了大爆炸式的發展。而Linus正好在那個時候宣布成立Linux項目,在随後的幾年當中由于Linus遵循GPL協定任何人可以自由擷取自由修改不像早些時候的Minux作者那種古怪的想法。是以使得Linux誕生完以後網際網路上第一年,就有很多黑客級的專家擷取到源碼後給這個系統注入自己的活力。

  1993、1994年網際網路大爆炸時代Linux和開源的BSD,它的重要行才為行業所了解而且被整個Unix領域所正式面對但不幸的是對于BSD的支援者來講AT&T對BSD的訴訟耗費了大量時間,是以使得伯克利的一些關鍵開發者為了避免官司纏身都紛紛轉向了Linux陣營。是以BSD正式落寞了.

  Larray Wall這個作者曾經研發了一個工具,叫做patch。patch這個工具能夠使得源代碼在分發時不用整包進行,可以進行更新檔制作。利用diff制作更新檔,用patch進行打更新檔。是網際網路協同開發成為一種可能。借助這個工具Linux根植于網際網路,在網際網路大爆炸時代非常迅速的成長起來。

  我們作業系統是由幾個層次組成的,核心,應用軟體組成,但是我們狹義上的作業系統僅僅指的是核心是以我們說Linus在1991年8月份宣布成立Linux的時候,他僅僅提供了核心Kernel。而我們此前說過GNU組織有個飽受诟病的問題,就是他開發的程式都是基于UNix開發的,而不是基于硬體。GUN不得不依賴UNix但是GUN宣稱自己不是Unix,這不是一種莫大的諷刺嗎?是以大家都說我們趕緊研發一個核心吧,但是寫一個核心太困難了。于是Linnx和GUN組織二者就這樣相遇了,在GNU組織需要一個核心的時候,Linus的Linux橫空出世了,開啟了一新時代。Linux提供核心,GNU提供應用程式就這樣一個完整的OS(作業系統)出現了。當然也是由于GNU組織的運動和GPL協定我們才得以使用Linux。

  到了1994年的時候,才誕生3年的系統已經足夠穩定能夠在生産環境中得以使用,後來不久2.0誕生版本後不斷疊代。

  大型程式有兩種研發模式,一種是大教堂式的,把很多程式員集中到一個屋子内,然後一起研發。還有一種就是集市式的誰想來都可以。沒有嚴格的協作規範。但是即便如此Linux的發展速度很快,而且更為穩定。剛開人們認為這種研發方式怎麼可能會好呢?能麼可能會穩定呢?有多少人去支援他呢?

  當然後來發現把一個程式軟體置于大衆的目光之下,把源代碼開放出去任何BUG幾乎都無所遁形。是以Linux的更新速度非常快,不像Windows把各種東西都隐藏起來了。某一天使用起來了發現BUG給微軟一回報,對方慢吞吞的排上日程,讓程式員去修改。Linux不是這樣任何人都可以修改,并且再把修改後的代碼回報給社群。是以他的更新疊代速度非常快,反而短短的幾年迅速成長起來。

  但是Linux也是有缺點的,Linux在設計之初開始就是由一幫heike玩的,它壓根就不是為了終端使用者研發。是以不像Windows一樣簡單易用。這個阻礙了Linux成為一個在桌面鄰域流行的系統。