Linux 与 BSD 有什么不同
2014-07-21 by dongnan
GNU/Linux
许多人所称的 Linux
实际上不是 Linux
,从技术上说只是 Linux
内核,典型的 Linux
发行版则包括了 Linux
内核和许多软件。
这是为什么 Linux
有时被称为 GNU/Linux
。事实上,许多在 Linux
上使用的软件同样也在 BSD
上使用。
类UNIX操作系统
Linux
和 BSD
都是类 UNIX
操作系统,我们可以通过阅读类 UNIX
操作系统历史发现 Linux
和 BSD
有不同的谱系。
Linux
是由 Linus Torvalds
在芬兰上大学的时候开发的。
BSD
则代表 Berkeley Software Distribution
伯克利软件套件,其源于对加州大学伯克利分校所开发的贝尔实验室UNIX
的一系列修改,它最终发展成一个完整的操作系统,现在有多个不同的BSD
分支。
内核 vs 完整操作系统
严格的说 Linux 只是一个内核。制作 Linux
发行版所要做的工作就是,汇集那些创建一个完整 Linux
操作系统所需的所有软件,
将它组合成一个像 Ubuntu
、RedHat
或者是 Arch
这样的 Linux
发行版。有许多不同的 Linux
发行版。
与此相反的是,BSD
这个名字则代表其内核和操作系统。例如,FreeBSD
提供了 FreeBSD
内核和 FreeBSD
操作系统。
它是作为一个单一的项目维护的。换句话说,如果你想要安装 FreeBSD
,就只有一个 FreeBSD
可供你安装。
BSD
包括一个名为 Ports
的系统,它提供了一种安装软件包的方式。Ports
系统包含了软件包的源代码,
所以您的计算机如果想安装软件的话,则需要先编译他们。不过软件包也可以是预安装的二进制形式,以便你不需要花时间和系统资源编译他们就能运行。
许可证
许可证是典型的差异,虽然它不会对大多数人产生影响。Linux
使用 GNU
通用公共许可证,即 GPL
。
如果你修改了 Linux
内核,并将其分发,你就必须放出您的修改的源代码。
BSD
使用 BSD许可证。如果你修改了 BSD
内核或发行版,并且发布它,你根本不需要必须发布其源代码。
你可以自由地对你的 BSD
代码做任何你想做的事情,你没有义务发布的你修改的源代码,当然你想发布也行。
两者都是开放源码的,但是以不同的方式。人们有时会陷入关于哪种许可证是更自由的辩论。
GPL
可以帮助用户以确保他们可以拥有GPL
软件的源代码,并限制开发人员迫使他们开放代码。BSD
许可证并不能确保用户可以拥有源代码,而是给开发人员选择是否公布代码的权利,即使他们想要把它变成一个闭源项目。
BSD分支
以下是通常认可的三个主流 BSD
操作系统:
FreeBSD
: 是最受欢迎的BSD
,针对高性能和易用性。它支持英特尔和AMD
的32
位和64
位处理器。NetBSD
: 被设计运行在几乎任何架构上,支持更多的体系结构。在他们的主页上的格言是"理所当然,我们运行在NetBSD
上"。OpenBSD
: 为最大化的安全性设计的 — 这不仅仅它宣称的功能,在实践中也确实如此。它是为银行和其他重要机构的关键系统设计的。
还有两个其他的重要 BSD 操作系统:
DragonFly BSD
: 的设计目标是提供一个运行在多线程环境中的操作系统 — 例如,计算机集群。Darwin / Mac OS X
:Mac OS X
实际上基于Darwin
操作系统,而Darwin
系统基于BSD
。
苹果在 BSD
基础上开发了Mac OS X
和 iOS
,这样他们就不必写操作系统底层,就像 谷歌在 Linux
基础上开发 android
系统一样。
谁更受欢迎
Linux
显然比 FreeBSD
更受欢迎。例如,Linux
往往会比 FreeBSD
更早提供新硬件的支持。
BSD
有一个兼容包可用,使之能像大多数的其他软件一样原生的执行 Linux
二进制程序。
- 对于厂商,
FreeBSD
的可靠性和稳定性也许更适合作为服务器的操作系统。而厂商会选择BSD
而不是Linux
作为其操作系统,因为这样他们就不必放出他们修改的代码。 - 对于个人PC用户,你可能会喜欢
Linux
,因为它具有更先进的硬件支持,更容易安装,具有现代操作系统的特点。
参考
内容来自: Linux 与 BSD 有什么不同