close

The FreeBSD DiaryFreeBSD
FreeBSD的起源

  BSD Unix使用 一個神話中的精靈形象作為其吉祥物,這個吉祥物標誌被FreeBSD、NetBSD繼續使用,但不同BSD系統的精靈 略有不同,右圖為FreeBSD的BSD精靈形象。當用戶瀏覽Internet時,會在很多與FreeBSD相關的網 站上看到這個可愛的精靈標誌。

1. 在電腦領域,Unix一直是作為高端平台而出現的。幾年以前,只有在大型機構的專用機房中才能接觸到它們, 甚至稍小一些的機構也負擔不起購買Unix工作站的費用。只有很少的使用者才有機會接觸和使用Unix,能管理和維護 Unix系統的電腦專業人員就更少了,這就使得Unix總是披著一層神秘的面紗,在普通使用者面前,Unix屬於一 種難於使用、十分昂貴的操作系統。然而,當運行在個人電腦上的自由Unix系統出現之後,這種情況已經改變了。
2. FreeBSD就是一種運行在Intel平台上、可以自由使用的Unix系統,它可以從Internet上免 費獲得。而它又具備極其優異的性能,使它得到了電腦研究人員和網路專業人士的認可。因此,不但專業科研人員把它用作 個人使用的Unix工作站,很多企業,特別是ISP(Internet服務提供商)都使用運行FreeBSD的高檔P C伺服器來為他們的眾多用戶提供網路服
3. 自從1969年AT&T Bell實驗室研究人員創造了Unix之後,Unix就不斷發展,逐漸成為 了主流操作系統。雖然目前Windows系列已經佔據了桌面電腦的領域,其中Windows NT伺服器也在網路服 務器領域得到了部分用戶的承認,但在高檔工作站和伺服器領域,Unix仍然具有無可替代的作用。尤其在用作Inter net伺服器方面,Unix的高性能、高可靠性、以及高度可擴展的能力仍然不是其他操作系統所能夠代替的
4. 雖然Unix由AT&T創造,但它如此流行卻並不能完全歸功於AT&T自己的功勞。現代Un ix不是一個廠家的單獨產品,在它長期的發展過程中形成了多種不同的版本。惟其豐富多樣,才使得Unix具有強大的生 命力。FreeBSD正是Unix眾多分支中相當優秀的一支,它的發展歷史也相當悠久,是著名的BSD Unix的一 個繼承者,因此要了解FreeBSD發展的歷史,首先就要了解Unix發展的歷程。
5.

 

Unix 發展圖表

6. 到80年代,個人電腦的出現,使得硬體的價格能被個人和小企業接受了,給擁有一個Unix系統的願望帶來了 一線曙光。但是使用8086芯片的個人電腦能力比較差,在其上不能實現真正正常工作的多用戶系統。進入九十年代之後 ,英特爾公司推出的80386芯片使個人電腦的計算能力大大提高,在個人電腦上構建一個可以真正使用的Unix也 成為了可能
7. 到了70年代末,在Unix發展到了版本6之後,AT&T認識到了Unix的價值,成立了Unix系 統實驗室(Unix System Lab,USL)來繼續發展Unix。因此AT&T一方面繼續發展內部使 用的Unix版本7,一方面由USL開發對外正式發行的Unix版本,同時AT&T也宣布對Unix產品擁有 所有權。幾乎在同時,加州大學伯克利分校電腦系統研究小組(CSRG)使用Unix對操作系統進行研究,因此他們的 研究成果就反映在他們使用的Unix中。他們對Unix的改進相當多,增加了很多當時非常先進的特性,包括更好的內存 管理,快速且健壯的檔案系統等,大部分原有的原始碼都被重新寫過,以支持這些新特性。很多其他Unix使用者,包括其 他大學和商業機構,都希望能得到CSRG改進的Unix系統。因此CSRG中的研究人員把他們的Unix組成一個完整 的Unix系統──BSD Unix(Berkeley Software Distribution),向外發行。
8. BSD Unix在Unix的歷史發展中具有相當大的影響力,被很多商業廠家採用,成為很多商用Unix的基 礎,而AT&T與其同時存在的Unix版本的影響就小得多。同時很多研究項目也是以BSD Unix為研究系 統,例如美國國防部的項目─ARPANET,ARPANET今天發展成為了Internet,而BSD Unix中最 先實現了TCP/IP,使Internet和Unix緊密結合在一起。
9. 雖然AT&T的Unix System V也是非常優秀的Unix版本,但是BSD Unix在Un ix領域內的影響更大。AT&T的Unix系統實驗室一直關注著BSD的發展,在1992年,Unix系統實 驗室指控BSDI── 一家發行商業BSD Unix的公司,違反了AT&T的許可權,發布自己的Unix版 本,並進一步指控伯克利電腦系統研究組洩漏了Unix的商業機密(此時的4.3BSD中來自AT&T Un ix的代碼已經不足10%)。這個官司影響了很多Unix廠商,使他們不得不從BSD Unix轉向Unix Sys tem V,以避免法律問題。以至於當今大多數商業Unix版本都是基於Unix System V的。
10. 這件有關Unix版權的案子直到Unix系統實驗室被AT&T賣給了Novell公司後才得以解決, Novell不打算陷入這樣的法律紛爭中,因此就採用了比較友好的做法。伯克利的CSRG被允許自由發布BSD,但是 其中來自於AT&T的代碼必須完全刪除。因此CSRG就對他們最新的4.4BSD進行了修改,刪除了那些來自 於AT&T的原始碼,發布了4.4 BSD Lite版本(該系統是不完整的,尤其對於英特爾386體系的計 算機系統)。由於這個版本不存在法律問題,4.4BSD Lite成為了現代BSD系統的基礎版本。
11. 回顧Unix的發展,可以注意到Unix與其他商業操作系統的不同之處主要在於其開放性。在系統開始設計時就 考慮了各種不同使用者的需要,因而Unix被設計為具備很大可擴展性的系統。由於它的源碼被分發給大學,從而在教育界 和學術界影響很大,進而影響到商業領域中。大學生和研究者為了科研目的或個人興趣在Unix上進行各種開發,並且不計 較金錢利益,將這些源碼公開,互相共享,這些行為極大豐富了Unix本身。很多電腦領域的科學家和技術人員遵循這些 方式,開發了數以千計的自由軟體,包括FreeBSD在內。正因為如此,當今的Internet才如此豐富多採,與其 他商業網路不同,才能成為真正的全球網路。開放是Unix的靈魂,也是Internet的靈魂。
12. 386BSD計劃由Bill Jolitz等研究人員發起,將4.3BSD Net/2移植到80386平台 上,並使用386BSD的名稱發布。但是移植工作是一個複雜的任務,直到386BSD 0.5版本,系統中仍然存在相 當多的問題沒有解決。於是在1993年,另一些研究者決定加入這個計劃,打算和Bill Jolitz一起修正系統中 存在的問題。但是這時計劃的組織者Bill Jolitz突然決定退出,使得386BSD計劃面臨停止的危險。Bil l Jolitz作為計劃的發起者和負責者並沒有對這個計劃以後該如何發展給出具體意見,因此386BSD計劃是到此 為止還是繼續發展,就取決於其他開發者的決定。幸運的是,該項目的另三個參與者Nate Williams, Rod Grimes和Jordan K. Hubbard決定繼續這項非常有意義的工作,他們採用由David Green man創造的名字FreeBSD作為系統的新名字,從此有了一種任何人都可以自由使用的Unix操作系統 ── Fr eeBSD。
13. 1993年12月對於FreeBSD來講是非常重要的日子,FreeBSD 1.0版本於這個月正式發布。這 次FreeBSD的開發者找到了一家出版商Walnet Creek提供支持,來發布FreeBSD的光碟和提供高速 Internet網路服務,使得任何人都可以通過購買光碟或者通過Internet下載的方法,自由獲得FreeBS D系統,使得FreeBSD取得了很大成功。而Walnet Creek也使用FreeBSD建成了Internet 上最大、最繁忙的匿名檔案伺服器──ftp.cdrom.com。
14. FreeBSD雖然可以自由獲得,然而BSD與AT&T的法律糾紛仍然威脅著FreeBSD系統的合 法性。就在FreeBSD得到相當多用戶歡迎的時候,Unix系統實驗室(此時已經賣給了Novell)與伯克利計算 機系統研究小組的法律紛爭有了結論。雖然最後不必進行賠償,但是BSD Unix系統中必須去除原來來自AT& T的源碼。伯克利電腦系統研究小組去除了這些不到10%源碼,發布了4.4BSD Lite,其他基於BSD的U nix,包括FreeBSD在內,都被要求立即轉換到4.4 BSD Lite上去。
15. 這對FreeBSD是一次相當嚴重的打擊,雖然4.4 BSD Lite只刪除了一小部分代碼,但尤其對於英 特爾80386平台,缺乏這些代碼,系統就不能正常運轉。FreeBSD小組必須解決兩個任務,首先是將FreeBS D從原本的4.3BSD遷移到4.4BSD上,再將刪除的源碼完全重寫。這些任務相當於將4.4BSD Lite重新 移植到80386上,因此這花費了FreeBSD核心小組很大的精力。因此直到1995年1月他們才發布了FreeB SD 2.0,這次就是一個完全的4.4BSD Lite的系統了。但是在大約一年時間之內,FreeBSD不能在原 有1.0基礎上進行改進並推出新版本,而這個時期正是Internet進一步發展的階段,FreeBSD錯過了一個發 展壯大的好時機。而其競爭對手,如Linux,則取得了巨大的成功。
16. 接下來,FreeBSD加快了開發節奏,2.1、2.2、3.0相繼推出,這個系統在Internet上的應 用也越來越多,尤其是對於要求高性能、高可靠性的網路伺服器系統,FreeBSD提供了一個極具誘惑的選擇。
17. 除了current和stable之外,還有另外兩個後綴用來修飾FreeBSD的二進制發行版本。一個是r elease,如FreeBSD 3.0-release,表示這是一個正式發行的FreeBSD版本,但這個版本可 以處於current分支或stable分支。但如果一個FreeBSD的current分支發布了release版 本,這將表示它離進入stable狀態不遠了,此後該版本實際上不會再作太大的改動,已經是一個完全可用、足夠穩定的 FreeBSD版本了。另一個後綴是snapshot,如FreeBSD 4.0-snapshot,表示這是一個預 覽版本,用於FreeBSD愛好者提前查看current分支目前的開發狀態,嘗試新特性用的。FreeBSD的光碟 發行版本常常使用這兩個詞進行修飾。
18.

可以看到,FreeBSD的版本使用current或stable後綴進行修飾,其中使用stable修飾的 版本是一個穩定的版本,它不是FreeBSD的最新版本,主要關心系統的性能和使用的連續性,同一個stable分支 中的下一個版本主要是修訂系統問題,因此stable分支得到很多商業用戶的歡迎。current表示這個版本是正在 開發的版本,還不成熟,它更關心新特性,每種可能的特性都被開發者嘗試加入進FreeBSD中,但並不保證以後的正式 發布版本會支持所有的特性,一些特性會因為不成熟或對大部分用戶無益,即使曾經加入也可能從正式版本中去除。通常Fr eeBSD的愛好者和開發者使用這個分支,或者一些需要某些FreeBSD的新特性的用戶,就必須使用這個分支。

19. FreeBSD選用current和stable來修飾FreeBSD不但是因為FreeBSD是一個不斷發 展、更新的系統,而且FreeBSD還是一個由Internet上的用戶參與開發、使用Internet交流開發工作 的系統。這與商業軟體不同,商業軟體的開發工作在公司內部,外界不能訪問正在開發的版本,不能對要開發的軟體發表意見 和提出建議。而FreeBSD則相反,任何人只要通過Internet,都可以訪問到FreeBSD的源碼,並且Fr eeBSD開發者鼓勵別人訪問目前正在開發的源程序,鼓勵提建議和進行自己的FreeBSD開發計劃,如果這個計劃的 確不錯,那麼這個開發者就能被邀請進入FreeBSD開發組,他的計劃就能被合併到正式的FreeBSD開發中去。但 是,如果一個系統老是處於不斷開發的過程,沒有一個穩定的版本,顯然得不利於希望將FreeBSD用在日常業務處理任 務的普通用戶。因此FreeBSD並存著兩個同時發展的版本,stable版本為穩定版本,相當於商業軟體中的對外發 行的版本,current版本為正在開發的版本。當一個current版本已經足夠穩定,這個版本就轉變為stabl e版本,而FreeBSD開發組將轉入下一個current版本的開發工作。
20. 因此對於FreeBSD用戶,需要根據情況選擇使用不同的版本。對於正式使用,應該選擇stable版本,而 對於進行學習、研究、開發FreeBSD,可以考慮使用current版本。
 
 
  Jordan K. Hubbard
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 Bluelove1968 的頭像
    Bluelove1968

    藍色情懷

    Bluelove1968 發表在 痞客邦 留言(0) 人氣()