Linux的标志是一只十分可爱的小企鹅,而FreeBSD的标志是一个拿着叉子的小恶魔。你是否经常会听到人们把 Linux及 BSD 系统混为一谈?是的,我有时会经常听到一些新手,甚至于媒体都这么说。

当然,事实上这两者确实有很多相似之处,比如它们都是基于 Unix演变而来,而且基本上这两类系统都是由非盈利组织及团队开发,另外我更想说的是,这两个系统都有一个共同的目标–那就是创建最有用、最可靠的操作系统。

不过话说回来,这两个系统确实存在着明显的差异,当人们忽略这点的时候,整个 BSD 社区都会感到异常的愤怒,因此我们也可以经常看到 BSD 社区人员或 BSD 用户会对 Linux不屑一顾。因此,我会尽我所能来帮助我的 BSD 的弟兄们,让更多的人了解到 Linux与 BSD 的不同之处在哪里。

1、许可证

正如我们所知道的,Linux操作系统是基于 GPL 许可证授权下的。该许可证可防止开源软件被转换为封闭源代码软件及确保源代码的可用性。 GPL 许可证的目的就是防止二进制包成为唯一的软件发行源。

而FreeBSD以BSD许可证发布。BSD 许可证的限制则要少得多,它甚至允许二进制包成为唯一的发行源。这就是核心差异,可以这样理解:GPL 许可证让您有权拥有任何你想要使用该软件的方法,但你必须确保提供源代码给下一个使用它的人(包括你对它的改变部分)。而 BSD 许可证并不是要求你必须那么做。( 译者注:这里分别是维基百科上对 BSD 及 GPL 许可证的解释)

2、代码控制

BSD 的代码不是被控制在任何一个人手里,而 Linux的内核基本上被 Linus Torvalds ( Linux创始人)所控制,BSD 并没有单一的人来说什么可以或什么不可以进入代码。相反,BSD 通过一个核心小组” Core Team”来管理该项目,这个核心小组比非核心小组有更多的发言权来指导 BSD 社区的发展方向,(译者注:而据我所知,FreeBSDD 核心小组的成员会每两年选举一次。)

3、内核vs 操作系统

BSD 项目维护的是整个操作系统,而 Linux则只是主要集中在单一的内核上面。这点确实是需要注意的,虽然这两个系统上都运行着许多相同的软件。

4、UNIX-Like

这里有一个关于 BSD vs Linux的古老说法:” BSD is what you get when a bunch of UNIX hackers sit down to try to port a UNIX system to the PC. Linux is what you get when a bunch of PC hackers sit down and try to write a UNIX system for the PC “,这里表达了很多。你会发现 BSD 系统更为类似于 UNIX ,而事实上它就是传统 UNIX 的直接衍生品。而 Linux,则是一个松散的基于 UNIX 衍生品( Minix)而新创建的一个 OS 。

5、基本系统

这是一个关于 BSD 与 Linux 之间差异的至关重要的理念。 Linux的”基本系统”是并不真正存在的,许多人会说,Linux的基本系统就是内核,但问题是如果没有任何可用的应用程序的话,那么这个内核是完全没有价值的。而另一方面,BSD 则有一个包括众多工具的基本系统,甚至 libc 也是基本系统的一部分。因为这些组件都被作为一个基本系统,所以它们都是被一起开发和打包的,许多事实表明这样更能创建出一个更具凝聚力的整体。

6、更多来自于源代码

由于 BSD 的开发方式(使用 Ports 系统)的关系,所以用户们更多的是从源代码来安装程序,而不是预先编译好的二进制包。这是一个优势还是劣势?这取决于不同的用户。如果你更多的想从友好或易用性方面考虑的话,看到这一点后你也许会有放弃的念头,对于新用户更是如此。但一些新的用户也有想要从源代码编译安装,这可能比较累人。但是,从源码安装也有一定的优势,比如库版本控制,通过特殊的包来构建系统等等。

7、升级

由于 BSD 的开发方式的原因(见第5项),你可以利用一条指令就可以升级你的基本系统到最新版本( Freebsd 下是用 freebsd-update fetch update 命令)。或者你也可以下载整个源代码树,然后通过编译来升级。而在Linux中,你也可以通过内置的包管理系统来升级系统。前者(BSD)仅更新基本系统,而后者( Linux)则会升级整个系统。不过请记住,BSD 中升级到最新的基本系统并不意味着所有的附加软件包也将会被更新,而Linux升级的时候,所有的软件包都会被升级。这是否意味着 Linux处理得更好吗?在我看未必。我经常会看到Linux在升级时出现严重错误,从而需要重新安装整个系统,但这个现象基本不太可能发生在 BSD 的升级过程中。

8、前沿技术

基本上你不太可能会看到 BSD 系统运行着任何非常前沿版本的软件。而在 Linux 这一方面,大量的发行版会分发前沿版本的软件包。如果你是一个”If it isn’t broken, don’t fix it”这样观点的持有者的话,你将会是 BSD 的超级粉丝。但是,如果你很新潮,想要体验一切最新的东西,那么你最好尽快迁移到Linux。

9、硬件支持

你会发现,通常情况下 Linux 的硬件支持要比 BSD 更早一些。但这并不是说 BSD 没有像 Linux那样支持足够多的硬件,它只是意味着在某些情况下 Linux 会在 BSD 之前先支持某些硬件。因此,如果你想要最新的、最好的显卡的话,基本上不用考虑 BSD 了。如果你有一个包含了最新无线芯片的新型笔记本的话,建议你选择 Linux,运气好的话也许它会支持。

10、用户群

在这里我冒险概括一下计算机用户们,但我想先声明一下每一个事物都有例外。下面我要向你展示我对用户分布方面的概括。

Mac –> Windows –> Linux–> BSD –> UNIX

从左边到右边,分别是”使用该 OS 的人里精通电脑的用户群最少”到”使用该 OS 的人里精通电脑的用户群最多”的过渡。我们可以看到,Linux的被放置在了中间,而 BSD 则更接近于右边。许多人会对此有争论,也有些人可能会感觉被冒犯了。但是,个人认为这是一个对”哪些用户使用哪些系统”相当准确的概括。

想要了解web开发知识,请查阅 HTML中文网 !!

freebsd和linux什么区别,freebsd和linux的区别是什么相关推荐

  1. 从Linux移植到FreeBSD

    FreeBSD 和各种Linux发行版一样,是一种免费的Unix类操作系统.由于FreeBSD的推出稍晚于Linux,因此国内介绍FreeBSD的文章较少,而且 由于某些煤体不负责任的推波助澜,Lin ...

  2. freebsd安装linux网卡驱动,freebsd从安装到想要的状态配置

    1.前言 笔者出来工作多年,对属于unix分支的bsd系列freebsd的大名早有耳闻.今天终于下定决心去玩一下,发现与linux的细致还是有差异的,将常见的配置记录于此,供往后参阅. 2.系统的安装 ...

  3. unix与linux的区别_Linux与Unix:有什么区别?

    unix与linux的区别 如果您是20多岁或30多岁的软件开发人员,那么您已经在Linux主导的世界中长大了. 数十年来,它一直是数据中心的重要参与者,尽管很难找到确定的操作系统市场份额报告,但Li ...

  4. unix和linux的区别

    转至:http://www.goceanedu.com.cn UNIX是历史最悠久的通用操作系统.1969年,美国贝尔实验室的K.Thompson和D.M.Ritchie在规模较小及较简单的分时操作系 ...

  5. uclinux与linux的区别

    一.名字含义: 在uClinux这个英文单词中u表示Micro,小的意思,C表示Control,控制的意思, 所以uClinux就是Micro-Control-Linux,字面上的理解就是" ...

  6. 由su和su -的区别谈学习linux运维方法

    由su和su -的区别谈学习linux运维方法一例 老男孩Linux培训新班刚开始,老男孩发现群里就在讨论这个su和su -的区别,有的同学们说,直接su就可以,有的说必须要su -.有的同学直接发问 ...

  7. linux io100的原因_Unix与Linux的区别与联系

    Linux和UNIX的最大的区别是,前者是开发源代码的自由软件,而后者是对源代码实行知识产权保护的传统商业软件.这应该是他们最大的不同,这种不同体现在用户对前者有很高的自主权,而对后者却只能去被动的适 ...

  8. UCOSii和Linux的区别和联系

    UCOSii和Linux的区别和联系 想通过UCOSii来理解Linux的系统架构,故参考一些资料,简单整理了一下UCOSii和Linux的区别和联系,以此来更好的学习Linux. 其具体对比如下: ...

  9. ggg的区别+linux、GNU、GNU/linux

    文章目录 linux.GNU.GNU/linux 什么是Linux 什么是GNU GNU/Linux是什么玩意儿 参考链接 三大区别 有一篇 gcc和g++的主要区别 chao网址 STL 链接 li ...

最新文章

  1. Web开发的标准目录结构
  2. Mysql:命令选项、配置选项、(全局、会话)系统变量、状态变量:命令选项...
  3. 第十五届全国大学生智能车人工智能创意组复赛首批团队名单
  4. 将每个字典一行一行的添加到pd.DataFrame中
  5. Android 数据库(SQLite)【简介、创建、使用(增删改查、事务、实战演练)、数据显示控件(ListView、Adapter、实战演练-绿豆通讯录)】
  6. 鸿蒙有安卓内核吗,华为鸿蒙2.0可以替代安卓吗,华为鸿蒙2.0优势在哪
  7. python打开串口失败_python 如何防止串口通信失败?
  8. C语言中的字符串函数
  9. ionic3.0--angular4.0 引入第三方插件库的方法
  10. h3c交换机配置远程管理_h3c 交换机配置VLAN和远程管理
  11. DBeaver免费、多平台数据工具
  12. 西交《物理化学》在线作业
  13. 1.3(1) 框架——内嵌框架
  14. SuperMap iClient3D for WebGL风向风速对粒子的影响
  15. CSR8675的DSP学习笔记——离线调试与仿真
  16. 【LeetCode】453. 最小操作次数使数组元素相等
  17. Mandiant对APT1组织的***行动的情报分析报告
  18. PowerPMAC技术培训------6、PowerPMAC EtherCAT配置
  19. Excel被保护了无法复制
  20. QSFP28光模块的分类及区别

热门文章

  1. 太阳能瓦片,古风与科技结合
  2. bzoj3884 上帝的集合
  3. 显卡驱动入手的构造D3DHook的方法
  4. 【洛谷】P4139 上帝与集合的正确用法
  5. Linux中的文件解压
  6. 苹果笔要不要买原装的?ipad pencil平替有压感的笔
  7. 详解TCP/UDP网络协议
  8. 个性二维码教程——听课笔记
  9. SpringCache详解
  10. 【转载】【Unity规则】【模型】Unity3D模型制作规范