跳转至

Linux 与 BSD 有什么不同


2014-07-21 by dongnan

GNU/Linux

许多人所称的 Linux 实际上不是 Linux,从技术上说只是 Linux 内核,典型的 Linux 发行版则包括了 Linux 内核和许多软件。

这是为什么 Linux 有时被称为 GNU/Linux。事实上,许多在 Linux 上使用的软件同样也在 BSD 上使用。

类UNIX操作系统

LinuxBSD 都是类 UNIX 操作系统,我们可以通过阅读类 UNIX 操作系统历史发现 LinuxBSD 有不同的谱系。

Linux 是由 Linus Torvalds 在芬兰上大学的时候开发的。

BSD 则代表 Berkeley Software Distribution 伯克利软件套件,其源于对加州大学伯克利分校所开发的贝尔实验室UNIX的一系列修改,它最终发展成一个完整的操作系统,现在有多个不同的BSD分支。

内核 vs 完整操作系统

严格的说 Linux 只是一个内核。制作 Linux 发行版所要做的工作就是,汇集那些创建一个完整 Linux 操作系统所需的所有软件, 将它组合成一个像 UbuntuRedHat 或者是 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,针对高性能和易用性。它支持英特尔和 AMD32位和64位处理器。
  • NetBSD: 被设计运行在几乎任何架构上,支持更多的体系结构。在他们的主页上的格言是"理所当然,我们运行在 NetBSD 上"。
  • OpenBSD: 为最大化的安全性设计的 — 这不仅仅它宣称的功能,在实践中也确实如此。它是为银行和其他重要机构的关键系统设计的。

还有两个其他的重要 BSD 操作系统:

  • DragonFly BSD: 的设计目标是提供一个运行在多线程环境中的操作系统 — 例如,计算机集群。
  • Darwin / Mac OS X: Mac OS X 实际上基于 Darwin 操作系统,而 Darwin 系统基于 BSD

苹果在 BSD 基础上开发了Mac OS XiOS,这样他们就不必写操作系统底层,就像 谷歌在 Linux 基础上开发 android 系统一样。

谁更受欢迎

Linux 显然比 FreeBSD 更受欢迎。例如,Linux 往往会比 FreeBSD 更早提供新硬件的支持。 BSD 有一个兼容包可用,使之能像大多数的其他软件一样原生的执行 Linux 二进制程序。

  • 对于厂商,FreeBSD 的可靠性和稳定性也许更适合作为服务器的操作系统。而厂商会选择 BSD 而不是 Linux 作为其操作系统,因为这样他们就不必放出他们修改的代码。
  • 对于个人PC用户,你可能会喜欢 Linux,因为它具有更先进的硬件支持,更容易安装,具有现代操作系统的特点。

参考

内容来自: Linux 与 BSD 有什么不同

回到页面顶部