0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

浅谈freebsd和linux的区别

电子设计 来源:电子设计 作者:电子设计 2020-10-30 09:55 次阅读

我们首先要来了解一下什么是 FreeBSD,什么又是 linux


FreeBSD 是一种类 UNIX 操作系统,是由经过 BSD、386BSD 和 4.4BSD 发展而来的 Unix 的一个重要分支。FreeBSD 为不同架构的计算机系统提供了不同程度的支持。并且一些原来 BSD UNIX 的开发者后来转到 FreeBSD 的开发,使得 FreeBSD 在内部结构和系统 API 上和 UNIX 有很大的兼容性。由于 FreeBSD 宽松的法律条款,其代码被其他很多系统借鉴,包括苹果公司的 macOS,正是由于 macOS 的 UNIX 兼容性,使得 macOS 获得了 UNIX 商标认证

FreeBSD 支持 amd64(x86_64)、X86(i386)、ARM、AArch64、IA-64、PowerPC、PC-98、SPARC 等架构(不同版本支持有所不同)(详细情况见官方文档)。

FreeBSD 和 Linux 的相似处

FreeBSD 和 Linux 是两个自由开源的软件。实际上,它们的用户可以很容易的检查并修改源代码,用户拥有绝对的自由。而且,FreeBSD 和 Linux 都是类 Unix 系统,它们的内核、内部组件、库程序都使用从历史上的 AT&T Unix 继承来的算法。FreeBSD 从根基上更像 Unix 系统,而 Linux 是作为自由的类 Unix 系统发布的。许多工具应用都可以在 FreeBSD 和 Linux 中找到,实际上,他们几乎有同样的功能。

此外,FreeBSD 能够运行大量的 Linux 应用。它可以安装一个 Linux 的兼容层,这个兼容层可以在编译 FreeBSD 时加入 AAC Compact Linux 得到,或通过下载已编译了 Linux 兼容层的 FreeBSD 系统,其中会包括兼容程序:aac_linux.ko。不同于 FreeBSD 的是,Linux 无法运行 FreeBSD 的软件。

FreeBSD 和 Linux 的区别

许可证

两个系统的区别首先在于它们的许可证。Linux 以 GPL 许可证发行,它为用户提供阅读、发行和修改源代码的自由,GPL 许可证帮助用户避免仅仅发行二进制。而 FreeBSD 以 BSD 许可证发布,BSD 许可证比 GPL 更宽容,因为其衍生著作不需要仍以该许可证发布。这意味着任何用户能够使用、发布、修改代码,并且不需要维持之前的许可证。

您可以依据您的需求,在两种许可证中选择一种。首先是 BSD 许可证,由于其特殊的条款,它更受用户青睐。实际上,这个许可证使用户在保证源代码的封闭性的同时,可以售卖以该许可证发布的软件。再说说 GPL,它需要每个使用以该许可证发布的软件的用户多加注意。

如果想在以不同许可证发布的两种软件中做出选择,您需要了解他们各自的许可证,以及他们开发中的方法论,从而能了解他们特性的区别,来选择更适合自己需求的。

控制

由于 FreeBSD 和 Linux 是以不同的许可证发布的,Linus Torvalds 控制着 Linux 的内核,而 FreeBSD 却与 Linux 不同,它并未被控制。我个人更倾向于使用 FreeBSD 而不是 Linux,这是因为 FreeBSD 才是绝对的自由软件,不存在控制者。Linux 和 FreeBSD 还有其他的不同之处,我建议您先不急着做出选择,等读完本文后再做出您的选择。

操作系统

Linux 主要指内核系统,这与 FreeBSD 不同,FreeBSD 的整个系统都被维护着。FreeBSD 的内核和一组由 FreeBSD 团队开发的软件被作为一个整体进行维护。实际上,FreeBSD 开发人员能够远程且高效的管理核心操作系统。

而 Linux 方面,在管理系统方面有一些困难。由于不同的组件由不同的源维护,Linux 开发者需要将它们汇集起来,才能达到同样的功能。

FreeBSD 和 Linux 都给了用户大量的可选软件和发行版,但他们管理的方式不同。FreeBSD 是统一的管理方式,而 Linux 需要被分别维护。

硬件支持

说到硬件支持,Linux 比 FreeBSD 做的更好。但这不意味着 FreeBSD 没有像 Linux 那样支持硬件的能力。他们只是在管理的方式不同,这通常还依赖于您的需求。因此,如果您在寻找最新的解决方案,FreeBSD 更适应您;但如果您在寻找更多的普适性,那最好使用 Linux。

原生 FreeBSD Vs 原生 Linux

两者的原生系统的区别又有不同。就像我之前说的,Linux 是一个 Unix 的替代系统,由 Linus Torvalds 编写,并由网络上的许多极客一起协助实现的。Linux 有一个现代系统所需要的全部功能,诸如虚拟内存、共享库、动态加载、优秀的内存管理等。它以 GPL 许可证发布。

FreeBSD 也继承了 Unix 的许多重要的特性。FreeBSD 作为在加州大学开发的 BSD 的一种发行版。开发 BSD 的最重要的原因是用一个开源的系统来替代 AT&T 操作系统,从而给用户无需 AT&T 许可证便可使用的能力。

许可证的问题是开发者们最关心的问题。他们试图提供一个最大化克隆 Unix 的开源系统。这影响了用户的选择,由于 FreeBSD 使用 BSD 许可证进行发布,因而相比 Linux 更加自由。

支持的软件包

从用户的角度来看,另一个二者不同的地方便是软件包以及从源码安装的软件的可用性和支持。Linux 只提供了预编译的二进制包,这与 FreeBSD 不同,它不但提供预编译的包,而且还提供从源码编译和安装的构建系统。使用它的 ports 工具,FreeBSD 给了您选择使用预编译的软件包(默认)和在编译时定制您软件的能力。(LCTT 译注:此处说明有误。Linux 也提供了源代码方式的包,并支持自己构建。)

这些 ports 允许您构建所有支持 FreeBSD 的软件。而且,它们的管理还是层次化的,您可以在 /usr/ports 下找到源文件的地址以及一些正确使用 FreeBSD 的文档。

这些提到的 ports 给予你产生不同软件包版本的可能性。FreeBSD 给了您通过源代码构建以及预编译的两种软件,而不是像 Linux 一样只有预编译的软件包。您可以使用两种安装方式管理您的系统。

FreeBSD 和 Linux 常用工具比较

有大量的常用工具在 FreeBSD 上可用,并且有趣的是他们由 FreeBSD 的团队所拥有。相反的,Linux 工具来自 GNU,这就是为什么在使用中有一些限制。(LCTT 译注:这也是 Linux 正式的名称被称作“GNU/Linux”的原因,因为本质上 Linux 其实只是指内核。)

实际上 FreeBSD 采用的 BSD 许可证非常有益且有用。因此,您有能力维护核心操作系统,控制这些应用程序的开发。有一些工具类似于它们的祖先 - BSD 和 Unix 的工具,但不同于 GNU 的套件,GNU 套件只想做到最小的向后兼容。

标准 Shell

FreeBSD 默认使用 tcsh。它是 csh 的评估版,由于 FreeBSD 以 BSD 许可证发行,因此不建议您在其中使用 GNU 的组件 bash shell。bash 和 tcsh 的区别仅仅在于 tcsh 的脚本功能。实际上,我们更推荐在 FreeBSD 中使用 sh shell,因为它更加可靠,可以避免一些使用 tcsh 和 csh 时出现的脚本问题。

一个更加层次化的文件系统

像之前提到的一样,使用 FreeBSD 时,基础操作系统以及可选组件可以被很容易的区别开来。这导致了一些管理它们的标准。在 Linux 下,/bin,/sbin,/usr/bin 或者 /usr/sbin 都是存放可执行文件的目录。FreeBSD 不同,它有一些附加的对其进行组织的规范。基础操作系统被放在 /usr/local/bin 或者 /usr/local/sbin 目录下。这种方法可以帮助管理和区分基础操作系统和可选组件。

审核编辑 黄昊宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    87

    文章

    10990

    浏览量

    206735
  • freebsd
    +关注

    关注

    0

    文章

    36

    浏览量

    10696
收藏 人收藏

    评论

    相关推荐

    linux和windows的区别 linux系统一般用来干嘛

    Linux和Windows是两种不同的操作系统,有着不同的设计理念和用途。本文将对Linux和Windows的区别进行详细分析,并介绍Linux系统的常见用途。 一、设计理念和架构 1
    的头像 发表于 02-05 14:06 328次阅读

    FreeBSD也要 “锈化”?

    FreeBSD 开发者正在考虑允许在 FreeBSD 基础系统中使用 Rust 编程语言的好处和成本。
    的头像 发表于 01-24 10:22 197次阅读
    <b class='flag-5'>FreeBSD</b>也要 “锈化”?

    freebsd为什么比linux稳定

    FreeBSD是一个自由、开源的类Unix操作系统,它以其卓越的稳定性而闻名。与Linux相比,FreeBSD在稳定性方面有以下几个方面的优势: 代码质量和设计哲学:FreeBSD的内
    的头像 发表于 12-08 10:27 670次阅读

    ubuntu和linux区别

    Ubuntu和Linux是两个相关但不完全相同的概念,它们之间有着一些区别。在开始深入讨论Ubuntu和Linux之间的区别之前,让我们首先了解一下这两个概念的含义。
    的头像 发表于 11-27 17:06 888次阅读

    linux和windows的区别

    Linux和Windows是两种不同的操作系统,它们之间的区别包括: 源代码开放性:Linux是开源的,意味着任何人都可以获取并修改其源代码,这为开发者提供了很大的便利性。而Windows则是
    的头像 发表于 11-08 11:08 2455次阅读

    LSI 3ware FreeBSD 3DM2和CLI安装程序10.1

    电子发烧友网站提供《LSI 3ware FreeBSD 3DM2和CLI安装程序10.1.zip》资料免费下载
    发表于 08-24 15:41 0次下载
    LSI 3ware <b class='flag-5'>FreeBSD</b> 3DM2和CLI安装程序10.1

    10.2.1/9.5.4 dm2 CLI FreeBSD代码集

    电子发烧友网站提供《10.2.1/9.5.4 dm2 CLI FreeBSD代码集.zip》资料免费下载
    发表于 08-24 10:21 0次下载
    10.2.1/9.5.4 dm2 CLI <b class='flag-5'>FreeBSD</b>代码集

    CLI FreeBSD——10.2.1/9.5.4代码集

    电子发烧友网站提供《CLI FreeBSD——10.2.1/9.5.4代码集.zip》资料免费下载
    发表于 08-21 11:06 0次下载
    CLI <b class='flag-5'>FreeBSD</b>——10.2.1/9.5.4代码集

    CLI FreeBSD——10.2代码集

    电子发烧友网站提供《CLI FreeBSD——10.2代码集.zip》资料免费下载
    发表于 08-18 10:17 0次下载
    CLI <b class='flag-5'>FreeBSD</b>——10.2代码集

    Linux命令su和sudo的区别

    Linux 系统中,有两个常用的命令用于切换用户身份和执行特权操作,它们分别是 su 和 sudo。虽然它们都可以实现权限提升,但在使用方式、安全性和适用场景等方面存在一些区别。本文将介绍 su 和 sudo 命令的区别,以
    发表于 08-14 14:14 163次阅读

    FreeBSD以太网驱动程序版本说明 版本10.2.275.0

    电子发烧友网站提供《FreeBSD以太网驱动程序版本说明 版本10.2.275.0.pdf》资料免费下载
    发表于 08-14 10:19 0次下载
    <b class='flag-5'>FreeBSD</b>以太网驱动程序版本说明 版本10.2.275.0

    CLI FreeBSD-10.1代码集

    电子发烧友网站提供《CLI FreeBSD-10.1代码集.zip》资料免费下载
    发表于 08-11 10:43 0次下载
    CLI <b class='flag-5'>FreeBSD</b>-10.1代码集

    什么是Linux容器 docker和linux区别

    我们现在称为容器技术的概念最初出现在 2000 年,当时称为 FreeBSD jail,这种技术可将 FreeBSD 系统分区为多个子系统(也称为 Jail)。Jail 是作为安全环境而开发的,系统管理员可与企业内部或外部的多个用户共享这些 Jail。
    发表于 08-04 14:36 2578次阅读
    什么是<b class='flag-5'>Linux</b>容器 docker和<b class='flag-5'>linux</b>的<b class='flag-5'>区别</b>

    CLI FreeBSD——从10.2.2.1/9.5.5.1代码集

    电子发烧友网站提供《CLI FreeBSD——从10.2.2.1/9.5.5.1代码集.zip》资料免费下载
    发表于 07-28 14:55 0次下载
    CLI <b class='flag-5'>FreeBSD</b>——从10.2.2.1/9.5.5.1代码集

    Linux中which,whereis, whatis三者的区别

    which,whereis和whatis都是Linux环境中常用的命令行工具,在日常使用Linux时应熟练掌握其区别和使用方法。
    的头像 发表于 06-01 15:14 1027次阅读