Linux 與 BSD 有什麼不同

2021-09-08 22:01:15 字數 2875 閱讀 8548

linux 與 bsd 有什麼不同?

這篇文章是別人寫的,並做了一點修改。

漢澳sinox就是基於bsd開發的,因此能夠理解為乙個bsd分支,可是由於sinox不開源,被排除在外。bsd不是商業軟體,是比較徹底的自由開源軟體。

漢澳sinox做server,作為pc桌面,都表現出色。

linux 和 bsd 都是免費的,開源的,類unix系統。他們甚至使用非常多同樣的軟體。他們看上去簡直就像是乙個作業系統,那麼,它們有什麼不同嗎?

事實上,兩者之間的不同,遠遠超出了我們以下提到的這些,尤其是在構建完整作業系統和許可授權的哲學思想上,更是相差甚遠。通過這篇短文將能夠簡單的了解它們之間的不同。

基礎很多人所稱的「linux」實際上不是 linux。linux 從技術上說僅僅是 linux 核心,典型的 linux 發行版則包含了 linux 核心和很多軟體。這是為什麼 linux 有時被稱為 gnu/linux。其實,很多在 linux 上使用的軟體相同也在 bsd 上使用。

linux 和 bsd 都是類 unix 作業系統。我們能夠通過閱讀類 unix 作業系統歷史發現 linux 和 bsd 有不同的譜系。linux 是由 linus torvalds 在芬蘭上大學的時候開發的。bsd 則代表「berkeley software distribution,伯克利軟體套件」,起初源於對加州大學伯克利分校所開發的貝爾實驗室unix的一系列改動,可是後來被at&t告了10年,bsd被迫改寫**又一次出現,不再侵權unix

, 它終於發展成乙個完整的作業系統,如今有多個不同的bsd分支。

核心 vs. 完整作業系統

嚴格的說,linux 是僅僅是乙個核心。製作 linux 發行版所要做的工作就是,匯集那些建立乙個完整 linux 作業系統所需的全部軟體,將它組合成乙個像 ubuntu、mint、debian、redhat 或者是 arch 這種 linux 發行版。有很多不同的 linux 發行版。

與此相反的是,bsd 這個名字則代表其核心和作業系統。比如,freebsd 提供了 freebsd 核心和 freebsd 作業系統。它是作為乙個單一的專案維護的。換句話說,假設你想要安裝 freebsd,就僅僅有乙個 freebsd 可供你安裝。假設你想要安裝 linux,你首先須要在很多 linux 發行版之間選擇。

bsd 包括乙個名為 ports 的系統,它提供了一種安裝軟體包的方式。ports 系統包括了軟體包的原始碼,所以您的計算機假設想安裝軟體的話,則須要先編譯他們。(假設您以前使用過以前流行的 gentoo,有點類似那樣。)只是,軟體包也能夠是預安裝的二進位制形式,以便你不須要花時間和系統資源編譯他們就能執行。

許可證許可證是典型的差異,儘管它不會對大多數人產生影響。linux 使用 gnu 通用公共許可證,即 gpl。假設你改動了 linux 核心,並將其分發,你就必須放出您的改動的原始碼。

bsd 使用 bsd 許可證。假設你改動了 bsd 核心或發行版,而且公布它,你根本不須要必須公布其原始碼。你能夠自由地對你的 bsd **做不論什麼你想做的事情,你沒有義務公布的你改動的原始碼,當然你想公布也行。

兩者都是開放原始碼的,可是以不同的方式。人們有時會陷入關於哪種許可證是「更自由」的辯論。gpl 能夠幫助使用者以確保他們能夠擁有 gpl 軟體的原始碼,並限制開發者迫使他們開放**。bsd 許可證並不能確保使用者能夠擁有原始碼,而是給開發者選擇是否發布**的權利,即使他們想要把它變成乙個閉源專案。

bsd分支

下面是通常認可的三個「主流」 bsd 作業系統:

freebsd: freebsd 是最受歡迎的 bsd,針對高效能和易用性。它支援英特爾和 amd 的32位和64位處理器。

netbsd: netbsd 被設計執行在差點兒不論什麼架構上,支援很多其它的體系結構。在他們的主頁上的格言是」理所當然,我們執行在 netbsd 上」。

openbsd:openbsd 為最大化的安全性設計的 —— 這不只它宣稱的功能,在實踐中也確實如此。它是為銀行和其它重要機構的關鍵系統設計的。

還有兩個其它的重要 bsd 作業系統:

dragonfly bsd: dragonfly bsd 的設計目標是提供乙個執行在多執行緒環境中的作業系統 —— 比如,計算機集群。

darwin / mac os x: mac os x 實際上基於 darwin 作業系統,而 darwin 系統基於 bsd。它與其它的 bsd 有點不同,儘管底層核心和其它的軟體是開原始碼(bsd **),但作業系統的大部分是閉源的 mac os **)。蘋果在 bsd 基礎上開發了 mac os x 和 ios,這樣他們就不必寫作業系統底層,就像 谷歌在 linux 基礎上開發 android 系統一樣。

你為什麼會選擇 bsd 而不是 linux?

linux 顯然比 freebsd 更受歡迎。比如,linux 往往會比 freebsd 更早提供新硬體的支援。bsd 有乙個相容包可用,使之能像大多數的其它軟體一樣原生的執行 linux 二進位制程式。

假設您使用過 linux, freebsd 不會讓你感覺到太大的不同。假設把 freebsd 作為桌面作業系統,你也能夠使用同樣的 gnome,kde 或 xfce 桌面環境,你也能夠在bsd上使用 linux 上的大多數的其它軟體。有一點須要注意,freebsd 不會自己主動安裝的圖形化桌面,所以你要花相對於 linux 很多其它的心思來照應你的bsd。bsd 更守舊一些。

freebsd 的可靠性和穩定性或許更適合作為server的作業系統。而廠商也會選擇 bsd 而不是 linux 作為其作業系統,由於這樣他們就不必放出他們改動的**。

假設你是乙個 pc 桌面使用者,你真的不須要太過在意 bsd。你可能會喜歡 linux,由於它具有更先進的硬體支援,更easy安裝,具有現代作業系統的特點。假設你關注server或嵌入式的裝置,你可能會更喜歡 freebsd。

我們可能會聽到一些人說他們在桌面電腦上使用 freebsd,你當然也可能是當中之中的乙個!但像 ubuntu 或 mint 一樣的開源作業系統對於多數使用者來說更體驗良好和更先進些。

Linux為什麼比BSD流行

從大學時開始搞linux,給學校配伺服器,玩了多年一直沒有下大力氣深入研究,畢竟我不是做運維的。所以,對linux的了解也一直比較膚淺。這也讓我自己很內疚,於是當我想要了解linux的一些內部細節,包括 1 bootloader的使用 2 mbr的執行方式 3 init的作用 4 進入x serve...

DELETE 與 TRUNCATE 有什麼不同

truncate和delete有以下幾點區別 1 truncate在各種表上無論是大的還是小的都非常快。如果有rollback命令delete將被撤銷,而truncate則不會被撤銷。2 truncate是乙個ddl語言,向其他所有的ddl語言一樣,他將被隱式提交,不能對truncate使用roll...

UDX與TCP BBR有什麼不同

udx協議,我寫了很多年,一直在摸索,嘗試各種演算法,停留在一些演算法上很多年。我也堅信過,這是乙個很多人涉足但是沒有人長期在這一塊工作的領域。他入門比較簡單,但是做好,經力了太多,真的好難,因為有很多地方,真的不好定義。tcp bb最大的改進與傳統的tcp比較來說,確實就是他不再以丟包為減速條件,...