BSD
柏克萊軟體套件(英語:BerkeleySoftwareDistribution,縮寫:BSD;嘛予人號做柏克萊 Unix抑是 Berkeley Unix)是一个衍生自 Unix(類 Unix)的作業系統,一九七空年代由柏克萊加州大學的學生比爾 ・ 喬他開創,嘛予人用來代表其衍生出的各種套件。
BSD 授權條款非常的闊冗,所以 BSD 定定予人當做工作站級別的 Unix 系統,真濟一九八空年代成立的計算機公司攏對 BSD 中獲益,較出名的比如講 DEC 的 Ultrix,以及 Sun 公司的 SunOS。一九九空年代,BSD 大幅度被 System V 四 . x 版以及 OSF / 一系統所取代,毋過其開源版本予人用佇咧網際網路的開發。
歷史
PDP 鋪十一開始
上代先的 Unix 套件源自一九七空年代的貝爾實驗室,作業系統內面包含原始碼,按呢研究人員以及大學攏會當參加修改擴充。一九七四年,第一个柏克萊的 Unix 系統予人安裝佇咧 PDP 鋪十一機器上,計算機科學係了後會使用做擴展研究。
其他大學開始對柏克萊的軟體感興趣,佇一九七七年,柏克萊的研究生比爾 ・ 喬伊共程式整理到磁帶頂懸,做為 First Berkeley Software Distribution(一 BSD)發行。一 BSD 予人叫做是第六版 Unix 系列,毋是干焦單獨的作業系統。主要的程式包括 Pascal 編譯器,猶閣有比爾 ・ 喬他的 ex 行編輯器。
Second Berkeley Software Distribution(二 BSD)佇一九七八年發布,除了會對一 BSD 中的軟體進行升級,閣包括彼號比爾 ・ 撨伊寫的兩个新的程式:vi 文字編輯器(ex 的可視版本), 以及 C Shell。這兩个新添的程式,佇咧 Unix 系統當中到今猶原予人使用。
二 BSD 以後的版本沓沓仔對 PDP 鋪十一結構向 VAX 計算機徙栽。上新的二嬸一一 BSD佇咧一九九二年發布,更新維護一直繼續到二空空三年。
VAX 版本
一九七八年,柏克萊安裝矣頭一台 VAX 計算機,但是罔共 Unix 徙栽到 VAX 構架的 UNIX / 三十二 V,並無利用 VAX 虛擬記憶體的能力。柏克萊的學生重寫三十二 V 的大部份核心,以實現虛擬記憶體的支援。一九七九年,三 BSD誕生矣,這个新系統完整包括一个新核心、對第二 BSD 徙栽到 VAX 的工具,猶閣有三十二 V 原來的工具。
三 BSD 的成功予美國國防高等研究計劃署(DARPA)決定資助柏克萊的電腦系統研究小組(CSRG), 以開發一个 Unix 標準平台,供 DARPA 未來研究。一九八O年十月,該小組發布了四 BSD,這个版本對三 BSD 有足濟改進。
比較起來 VAX 機器的主流系統 VMS,使用者著 BSD 你有批評。一九八一年六月,四配一 BSD發布,比爾 ・ 喬伊大幅度提懸該版本核心的效能,之外佇咧濟个平台佮諸位 VMS 相輸予媠。為著避免佮 AT & T 的 UNIX System V(UNIX 第五版)透濫,這个版本無號名叫五 BSD。
四配二 BSD經過兩冬後才會當問世,實現幾若項重大改進。進前有三个中間版本相連紲推出:四配一 a 引入來 BBN 科技預試內面的 TCP / IP 協定棧的修改版;四配一 b 引入了由馬紹爾 ・ 克爾克 ・ 麥庫錫克實現的新型檔案系統(Berkeley Fast File System,FFS); 四配一 c 是四配二 BSD 開發最後幾個月的過渡版。
一九八三年八月,四配二 BSD正式發佈。這一九八二年比爾 ・ 喬伊離開小組、前去建立 Sun 公司後的頭一个版本,自彼陣開始馬紹爾 ・ 克爾克 ・ 麥庫錫克佮 Mike Karels 佮一直負責領導彼个項目。價值咧講的是,這改 BSD 小惡魔正式出場,上頭仔是馬紹爾 ・ 克爾克 ・ 麥庫錫克的畫作,出現佇列印好的文件封面上,由 USENIX 發行。
BSD 版本
一九八六年六月,四配三 BSD發布。該版本是主要是共四堵二 BSD 的真濟新貢獻作效能上的提懸,原來的四配一 BSD 無真好咧協調。佇該版本進前,BSD 的 TCP / IP 實現已經佮 BBN 的官方實現有較大的精差。經過數月測試了後,DARPA 認為四配二 BSD 閣較合,所以佇四配三 BSD 著作矣保留。(參見網際網路歷史)
四配三 BSD 後,BSD 沓沓仔共老式放捒 VAX 平台。Computer Consoles 有限公司開發的 Power 三十二分之六平台(代號做 " Tahoe "), 彼个時陣看起來有可為啥物,毋過無偌久就去予𪜶開發員所放捒。然後,一九八八年六月徙栽的四配三 BSD-Tahoe表現袂俗,BSD 會依賴佇機器佮無依賴佇機器的代碼分離,為未來系統的會當移植性拍落去真好的基礎。
為止喔,所有的 BSD 版本攏透濫矣專屬的 AT & T UNIX 代碼,按呢繼續使用就需要對 AT & T 得著授權條款。原始碼授權條款彼陣真貴參參,幾个其他組織對單獨的網路代碼版感興趣,完全獨立於 AT & T,按呢就會用得無受授權條款的支配。一九八九年六月,Networking Release 一(Net / 一)誕生矣,無咧 AT & T 授權嘛會使用,會當遵照 BSD 授權條款進行自由閣發佈。
一九九空年初,推出了四配三 BSD-Reno。該版本是四配四 BSD 早期開發的過渡版,使用該版本予人叫做是一種跋筊,因為乎 Reno 就是內華達州的筊城雷諾。
Net / 二猶閣有法律問題
Net / 一以後,Keith Bostic 提議,BSD 系統內底應該有閣較濟的非 AT & T 部份,以 Net / 一種協定發布。隨後,伊開始一个項目,下手閣重新實現一寡 Unix 標準工具,內底無咧使用原來的 AT & T 代碼。比如講,Vi,也就是因為上頭先 Unix 上 ed 的編輯器,受重寫為 nvi(new vi)。 十八個月了後,所有 AT & T 的工具予人替換,賰的只是留佇核心的一寡 AT & T 檔案。殘余檔案被戳掉後,一九九一年六月,Net / 二誕生矣,這是一个全新的作業系統,而且會當自由發布。
Net / 二成做 Intel 八堵空三百八十六構架仔頂頭兩種移植版的主要組成部份,包括由威廉 ・ 喬利茨負責,自由的三百八十六 BSD;以及專屬的 BSD / OS,由 Berkeley Software Design(BSDi)負責。三百八十六 BSD 本身雖然短命,但是無偌久了後變成是 NetBSD 和 FreeBSD 原始代碼的基礎。
BSDi 足緊就佮 AT & T 的 Unix 系統實驗室(Unix System Laboratories,USL)附屬公司產生了法律糾紛,後者就共有 System V 著作權,以及 Unix 商標。一九九二年,USL 正式的著 BSDi 提起訴訟,這致使著 Net / 二發布被中止,一直到其原始碼會當予人鑑定做符合 USL 的著作權。
因為最後判決懸而無決,這層法律訴訟將 BSD 後裔,特別是自由軟體後裔的開發,延遲兩冬,這致使著無法律問題的 Linux 核心得著極大的支援。Linux 共三百八十六 BSD 的開發差不多仝時起步,其作者林納斯 ・ 托瓦茲捌講,彼陣若有基於八堵空三百八十六平台的自由類 Unix 作業系統,伊就可能袂創造 Linux。就算講無法度按算這予以後的軟體業到底造成啥物款的影響,但有一點仔會使肯定,Linux 更加豐富囉這塊塗壤。
四四 BSD 佮其後裔
這層訴訟佇一九九四年一月矣結,閣較濟地滿足矣柏克萊的利益。柏克萊套件的十八 , 零个檔案中,干焦三个檔案予人要求刣掉,另外有七十个檔案被要求修改,並顯示 USL 的著作權說明。這項調解另外要求,USL 不得對下跤的四堵四 BSD 提起訴訟,不管是使用者抑是柏克萊代碼的分發者。
一九九四年六月,四四 BSD這兩種形式發布:會當自由閣發布的四四 BSD-Lite,無包括 AT & T 原始碼;另外有四四 BSD-Encumbered,佮較早的版本仝款,遵照 AT & T 的授權條款。
柏克萊的最終版本是一九九五年的四四 BSD-Lite Release 二,而後 CSRG 解散,佇柏克萊的 BSD 開發告一段落。佇這了後,幾種基於四配 BSD 的套件(比如講 FreeBSD、OpenBSD 和 NetBSD)閣繼續維護。
另外咧,因為 BSD 授權條款的寬容,真濟其他的作業系統,不管是自由抑是專屬,攏採用矣 BSD 的代碼。比如講,Microsoft Windows 佇咧 TCP / IP 的實現上引入了 BSD 代碼;經過重新編譯,佇咧當前 Windows 版本內底,閣採用真濟 BSD 命令列落去的網路工具。
技術
BSD 率先包括了支援網際網路協定棧(Stack)、 柏克萊通訊端(sockets)的函式庫。通過共通訊端佮 Unix 作業系統的檔案描述子相整合,庫使用者通過計算機網路讀寫數據,佮直接佇磁盤懸頂操作仝款。AT & T 到尾仔嘛發布𪜶的 STREAMS 庫,佇咧軟體棧內底引入類似的功能,雖然結構層有所改進,猶毋過這个時陣通訊端庫已經廣泛使用。因為 STREAMS 傷少矣著開放通訊端的輪詢功能(類似於柏克萊庫內底的 select 調用), 予得共軟體徙栽來到這个新的 API 真困難。
時到今仔日,BSD 猶是佇學術機構,乃至濟濟商業抑是自由產品的高科技實驗中,繼續予人用做試驗平台,甚至佇咧1875入式的裝置,其使用嘛咧增加。因為 BSD 設計出眾,代碼編寫予清楚,包括伊的文件(特別是參考文件,定予人稱做「man pages」), 予這款的系統,差不多成做程式員眼中的樂土。
濟濟公司攏使用 BSD 衍生出的代碼,遮爾仔便會當支持𪜶的智慧財產權。真濟自由軟體,如 Linux、GNU 工程攏遵照 GNU GPL 協定,佮之相比並,BSD 許可協定愛閣較活跳的。當然喔,這嘛致使著咱的機器頂懸運行一寡 BSD 軟體,家己煞並毋知影情。若是有興趣,會當試看覓揣符號「University of California , Berkeley」,比如講佇這个文件內底,二進制代碼內底的靜態數據段,抑是講 ROM 中,閣有通過一寡產品的使用者介面看覓「about」(關於著)內容。
有意思的是講,通過一个二進制相容層(compatibility layer), 佇咧 BSD 作業系統上,會當運行仝款構架下其他作業系統上的原程式。這比模擬器就愛緊予濟,通過這个方法,針對 Linux 的應用程式,嘛會當閣 BSD 全速運行。所以乎,BSD 毋但適合作為侍服器,嘛會當做工作站來使用,眾所周知,這馬針對 Linux 的商業抑是封閉原始碼軟體愈來愈濟。管理員嘛會當共一寡原本干焦用佇商業 Unix 變種的專屬軟體,轉移到 BSD,按呢咧保持原有功能的同時,作業系統更加現代,會當繼續使用遮的軟體,一直到閣較好的替代。
結末,當前的 BSD 作業系統變種支援各種通用標準,包括講 IEEE、ANSI、ISO 以及 POSIX,同齊保持傳統 BSD 的良好風範。
BSD 家族
進前衍生自 BSD 的類似 Unix 作業系統會當應用真濟種硬體構架。
- BSD / OS(已經倒擔)
- FreeBSD
- Debian GNU / kFreeBSD
- DragonFly BSD,一个由 FreeBSD 四-STABLE 分支出來的項目
- FireflyBSD
- DesktopBSD
- TrueOS
- GhostBSD
- PicoBSD,是佇單張一爿四四 MB 軟碟執行而設計的 FreeBSD 精簡版本
- TrustedBSD,非作業系統,是為著 FreeBSD 和 Darwin 構件擴展的一个項目
- ClosedBSD
- pfSense
- FreeNAS,一个是因為 FreeBSD 的輕量級 NAS 侍服器
- FreeSBIE 項目,提供 FreeBSD 各个發行版本的 Live CD,類似基於 Linux 的 Knoppix 項目
- Frenzy LiveCD,是因為 FreeBSD 的 Live CD 項目,主要針對俄語使用者
- BSDeviant,一个 FreeBSD 的 Live CD 項目,產生會當存在一張迷你 CD-R 上的系統
- m 零 n 零 wall 是一个是對 FreeBSD 的防火牆項目
- NetBSD
- Debian GNU / NetBSD
- OpenBSD
- ekkoBSD(已經倒擔)
- MicroBSD
- MirOS BSD
- HPBSD(已經倒擔)
- RedBSD:1875入式系統鏡像,使用 BSD 和 Ruby 核心
結構
佮 AT & T Unix 仝款,BSD嘛用單核心,這意味對核心內的裝置驅動,佇核心態下運行,對啊若做為作業系統的核心部份。BSD的早期版本予人用做組建 Sun 公司的 SunOS,造就了 Unix 工作站的第一波的熱潮。
注釋
參考文獻
外部連結
- BSD . org 組織
- DragonFlyBSD 官方網站
- FreeBSD 官方網站
- NetBSD 官方網站
- OpenBSD 官方網站
- BSD 認證小組
- BSD 以及 UNIX 研究年譜
- UNIX 和 BSD 的歷史(圖表描述)
- Google 著 BSD Unix 的搜尋專頁
- 搝脫維亞的頭一个 BSD 使用者群組
延伸閱讀
- Marshall Kirk McKusick,《 Open Sources : Voices from the Open Source RevolutionOpenSources》(影印版)
- 柏克萊 Unix 二十年—— 對 AT & T 獨有,到會當自由發布《Twenty Years of Berkeley Unix-From AT & T-Owned to Freely Redistributable》(O'Reilly & Associates,二空空三年,ISBN 七陽三百空二四六千五百九十一石八
參見
- Bill Joy
- Marshall Kirk McKusick
- Keith Bostic
- 三百八十六 BSD
- bug . lv
- BSD 授權條款