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 未來研究。一九八零年十月,該細組發布了四 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 還係在學術機構,還有商業自由產品个高科技實驗當中,繼續分人用來試驗平臺,甚至在嵌入式裝置當中,使用也在增加。因為 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:嵌入式系統鏡像,使用 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 授權條款