FreeBSD 促進項目

本文出處: http://cnsnap.cn.freebsd.org/zh_CN/advocacy/myths.html
整理:  UNIX技術開發論壇 http://www.usenix.cn

隨着 BSD 項目 (DragonFlyBSD、 FreeBSD、 NetBSD, 以及 OpenBSD) 的規模不斷壯大,關於它們的迷思也在逐漸增加。 這其中有一部分是由於人們的誤解,而另一些則是有人故意散佈的謠言。
本頁旨在儘可能客觀公正地澄清這些迷思。
注意: 此頁中, “*BSD” 是指所有四個 BSD 項目。對於只針對某一計劃的迷思, 則會單獨說明。
如果您認爲這頁中存在疏漏或錯誤, 請與其維護人 Tom Rhodes <[email protected]> 聯繫。
目錄
迷思

*BSD項目採用“大教堂”式的封閉開發模式

在那篇頗有影響力的 《大教堂與集市》論文中,EricRaymond 以 Linux 的開發模式 (他用來開發fetchmail的模式) 爲例,說明了應當如何進行“開放”式開發。 與此相對應,*BSD的開發模式一般被定性爲封閉的。
這裏隱藏的價值判斷是:“集市”(開放)開發模式是好的,而“大教堂”(封閉)開發模式是壞的。
若有什麼區別的話,*BSD的開發模式很可能 比 Linux 和 fetchmail更像 Eric 描述的開發模式。
讓我們考慮如下事實:

  • 對於所有的 *BSD項目:當前, FreeBSD, NetBSD,以及 OpenBSD 釋出的源代碼,任何人都可以24小時全天候地從互聯網上下載。 你無需等待他人的釋出。
    FreeBSD, NetBSD:每 24小時製作一個可安裝的項目當前進展的快照。這些快照就像正常的 release版操作系統一樣可以安裝, 並且不需要安裝在現有的系統上。
    OpenBSD:可安裝的快照也是每天都產生的, 並且如果 Theo認爲快照足夠好的話,他會把它們上傳到 OpenBSD 的鏡像站點上。
    與之不同的是: Linux 的新內核發佈是隨心所欲的, Linux的發行頻率取決於不同發行版製造商心血來潮的行動。
    這裏沒有 Linux 新內核每次發佈時的炫耀號角聲, 因爲對於 *BSD 用戶來說,那是每天都在發生的事情。
  • 所有的*BSD項目都使用CVS來維護他們的源代碼。
    所有的*BSD項目:都製作了一棵可以 讓任何人24小時地瀏覽、下載的CVS樹。我們可以使用匿名CVS,CVSup,CVSupit,CTM(通過電子郵件), 或者通過FTP來獲取源代碼樹。
  • 任何人都可以使用安裝在他們*BSD系統上的名爲 send-pr程序,或者通過一個web界面來提交補丁、錯誤報告、文檔, 或者做出其他的貢獻。
    Pointers to this system litter the documentation.
  • 當然並不是每個人都可以把他對*BSD源代碼的修改提交到CVS樹的。爲此你需要先成爲committer。 一般來說,那些使用send-pr或者其他工具向項目提交了若干經過深思熟慮的修改的人才會被授予“commitprivs”,成爲committer。
    這與 Linux 的機制其實是一樣的。 理論上說只有一個人允許改變內核--- Linus。但對於一些特定領域(比如網絡部分的代碼)才委託給其他人。
    另外:Nik ([email protected]) 是一個典型的例子。當他對FreeBSD文檔項目和網頁做出了一定的貢獻之後, 雖然他從沒有要求成爲committer,他們大方地給與了“commit privs”以免他老是麻煩別的committer來把那些變更寫入CVS樹。
  •  

你不能製作你自己的發行版或者從*BSD派生出一些工作

你可以這樣做。 你只需在文檔和源代碼中說明代碼源自何處。 有一系列派生項目存在着:
  • DragonflyBSD 脫胎於 FreeBSD 4.X的代碼分支, 但一直以來, 擁有自己的用戶社羣和發展目標。
  • TrustedBSD 對FreeBSD提供了一套可信擴展,目標是達到Common Criteria(CC)的信息技術安全評估。 該項目仍在開發中,並且它的很多代碼都已經反饋回 FreeBSD操作系統, 只是二者的開發是獨立進行的。
  • FreeSBIE 運行在CD-ROM上的完整的桌面操作系統,他也能被安裝, 但是對那些沒有硬盤的計算機極其有用。
  • Frenzy 另一個“live-CD“發行版,只是爲系統管理任務進行了定製。內含用於硬件測試、文件系統檢測、安全檢測、網絡設置和分析的相關軟件。
  • PicoBSD經過裁減定製的適應軟盤的FreeBSD發行版。 特別適合於把沒有硬盤的386PC機改造成一個路由器或者網絡打印機。 他是FreeBSD源代碼樹的一部分,參見/usr/src/release/picobsd。
  • NanoBSD又一個用於剪裁FreeBSD的項目, 它能對 FreeBSD 進行“瘦身”,以便放到閃存卡或者其他大容量存儲器中。 它是 FreeBSD 源代碼樹的一部分, 參見/usr/src/tools/tools/nanobsd。
  • TinyBSD shell腳本組成的工具包,以方便基於FreeBSD 5.x, 6.x的嵌入式開發。
  • ThinBSD 一個很小的基於FreeBSD的引導鏡像,允許標準PC作爲微軟windows RDP server 或者X 終端的無盤瘦客戶機。它完全通過DHCP(動態主機配置協議)來配置。
  • PC-BSD 面向桌面的 FreeBSD 衍生系統,試圖設計成爲易於安裝、受到社區良好支持的操作系統。
  • DesktopBSD 另一個繼承自FreeBSD,強調桌面易用性的操作系統。
  • Gentoo/FreeBSD是Gentoo項目爲了發揮FreeBSD的可信內核、userland長處 而將他們整套管理工具進行移植的成果。該項目非常不成熟, 是實驗性質的。
  • m0n0wall一個基於FreeBSD的具有很多昂貴防火牆才具有的特性 (比如 web 界面, 重設出廠默認值,帶狀態包過濾, NAT/PAT 重定向, DHCP 客戶端和服務器, DNS緩存和轉發, 等等)的防火牆系統。
  • pfSense 是一種派生自 m0n0wall 的開源防火牆系統,包含許多不同的目標和特性, 例如 OpenBSD 的 Packet Filter (PF)、 FreeBSD 6.1、用於提供高性能數據包隊列的 ALTQ 支持, 以及一套集成的包管理系統,用於爲該環境擴展新的特性。
  • Whistle Interjet: 可以作爲路由器、web服務器、mailhost(包括其他功能)的“網絡家電”,並且可以配置使用一個瀏覽器。 它基於 FreeBSD,並且在保持足夠私有權以保持商業生存的條件下向 FreeBSD項目回饋了大量增強代碼。
與DragonflyBSD,相似 ,OpenBSD不是一個單獨的項目, 他源自NetBSD項目,並且自分化出來那一天就形成了自己的獨特方式。


*BSD可以作爲一個很棒的服務器,但是是拙劣的(UNIX�)桌面

BSD 可以作爲一個很棒的服務器,同樣可以做爲很優秀的桌面。服務器的許多要求(迅速響應用戶請求,穩定性,系統資源的有效使用)對於一個桌面機器來說同樣是需要的。
*BSD 可以像 Linux 那樣使用相同的桌面工具,比如 KDE,GNOME,火狐瀏覽器,windowmanagers,並且 象OpenOffice套件等辦公應用程序在 *BSD 下也能使用。


TheBSD 的codebase已經過於陳舊、過時,並且正在死去。

雖然BSD的codebase 已經20多年了,不過他既沒有過時, 更沒有死去。很多專業使用者喜愛FreeBSD提供的久經考驗的穩定性。
技術方面的增強仍在不斷地被加入到*BSD系統, 這些包括但是不限於:
  • SMP: 對稱多處理器,用於多CPU的系統。
  • SoftUpdates: 使得BSD的文件系統至少像 Linux 的文件系統一樣快, 卻 無需引入 “異步寫” 以及與之相關的風險。
  • VM system:虛擬內存(VM)子系統仍在改進。 整合的虛擬內存/緩存設計幫助wcarchive.cdrom.com 這樣的系統承受住了成千上萬個併發連接。
  • 支持的平臺: FreeBSD 當前主要支持七種平臺: Alpha、 AMD64、 i386、 安騰、 PC-98、PowerPC 以及 UltraSPARC。 將該項目移植到其他平臺的工作仍在進行中。參見支持的平臺獲取更多信息。
  • MAC Framework: FreeBSD 支持強制訪問控制, 一般在昂貴的可信的操作系統才能見到的特性。FreeBSD爲你免費提供高級安全。參見 TrustedBSD項目 提供了更進一步的可信擴展。
  • GEOM classess: GEOM 是一個能讓你 concatenate,鏡像,條帶或者加密磁盤的模塊化磁盤框架。 具有豐富的功能又能保護你數據的安全。


The *BSD 諸項目彼此在鬥爭,每星期都分化出不同羣體

不!除了各自的用戶者偶爾的激烈的爭論以外, *BSD的開發者仍舊在彼此合作的工作着。比如FreeBSD的alpha平臺的移植最初就是高度基於NetBSD團隊的工作的。NetBSD, OpenBSD都使用FreeBSD的ports來管理各自的移植軟件庫。 FreeBSD,NetBSD都把OpenBSD團隊的安全修正集成到自己的系統中了
FreeBSD和NetBSD“分家”十年多了, OpenBSD與DragonflyBSD是過去的十年中僅有的分化出來的項目。
*BSD諸項目在各個領域都合作的非常好。 比如,每月一次的出版物DaemonNews 就是四大項目成員合作的成果。



你不能使用*BSD作集羣系統 (並行計算)

如下的網址給出了反證;
需要指出的是: 如果要進行FreeBSD在集羣方面的深入討論, 可以使用郵件列表 freebsd-cluster


*BSD沒有商業支持

FreeBSD:FreeBSDCommercial Vendors Page 列出了給FreeBSD 提供商業支持的公司
FreeBSD Mall 也提供商業支持,以及襯衫、帽子、書籍、軟件,宣傳品等等。
培訓方面,你可以試試BSDMall.com,他們也賣其他的東西,比如襯衫、帽子、書籍、軟件等等。相當值得一看。
OpenBSD: OpenBSD CommercialConsulting Page 列出了給OpenBSD提供商業支持的公司


*BSD沒有應用程序

自由軟件都可以在SunOS以及類似的主流的BSD上系統運行。*BSD用戶一般情況下可以無需作任何修改即可編譯那些爲此類 系統編寫的軟件。
另外,每一個BSD項目都使用ports系統來管理軟件, 使得編譯移植軟件庫中軟件極其簡單。
  • FreeBSD: 當前 FreeBSD ports 中有16000多個應用程序可以下載和安裝。 在 i386 和AMD64 平臺上, 提供了 Linux 模擬層能夠運行絕大多數 Linux 應用軟件。 而在 AMD64 和安騰(Itanium) 平臺上, 則提供了用於運行 32 位 FreeBSD 二進制程序的兼容層。
  • NetBSD: Linux 模擬層可以運行大部分 i386平臺 Linux 的應用程序,並且大部分SunOS4應用程序能在SPARC工作站上運行。
  • OpenBSD: 當前 OpenBSD ports 中大概有3700多應用程序可以下載與使用。 Linux模擬層可以運行大部分 i386平臺的 Linux 應用程序,並且大部分SunOS4應用程序能在SPARC工作站上運行。

用戶只需很少的努力, NetBSD與OpenBSD就能夠運行FreeBSD的移植軟件庫的程序。他們很少的移植程序也說明了這一點。
大部分公司把它們的工作遷移到PC Unix平臺時最先選擇 Linux, 這是事實。 幸運地是, *BSD的 Linux 模擬層能夠運行這些程序 (Acrobat, StarOffice,Mathematica, WordPerfect, Quake,Intel ICC compiler, Compaq's Alpha compiler ...) 即使出了問題,也容易解決。
作爲一個有歷史意義的註記: 曾在 FreeBSD 下運行的帶有 Java 支持的第一版 NetscapeNavigator是 Linux 版的。 不過,現在你可以使用帶有本地版 Java 插件的本地版 Mozilla 的,那都可以很方便地從 ports 編譯!


*BSD比(另一個系統)更好

這僅是用戶的觀點。


(另一個系統)比*BSD更好

這僅是用戶的觀點。


貢獻者FreeBSD, NetBSD, 以及 OpenBSD 項目的一些成員對該文有所貢獻;
Nik Clayton <[email protected]> Jordan Hubbard <[email protected]>
Ian F. Darwin <[email protected]>
Adrian Filipi-Martin <[email protected]>
Tom Rhodes <[email protected]>
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章