FreeBSD和Linux到底有什么区别!

首先是一系列观点

1. 要说区别freebsd和linux实在是貌合神离,看起来类似,其实是从设计思想上的不同。
linux也有成功的应用案例,只不过没有freebsd多就是了
最有名的就是google,全部是linux,实在让大家佩服的不得了

2. FreeBSD是操作系统,Linux只是一个内核而已

3. FreeBSD直接由Unix发展而来,Linux是仿Unix而写的。

4. Freebsd是由几个人疯狂做出来的.
Linux是由一个人疯狂做出来的.

5. 这个问题的N种回答:

高深的:

FreeBSD,从unix移植到x86版的一群expert hacker
Linux,从x86从零开始编写一个unix的一大群hacker

架构的:

FreeBSD是一个完整的系统架构
Linux拥有内核和各种五花八门的发行版

历史的:

FreeBSD曾经碰到过一些法律问题,阻碍了FreeBSD的顺利发展,正如Linux目前正在经历的一样

防御的:

FreeBSD在承受网络攻击方面,似乎比Linux更强壮

洁癖的:

FreeBSD的体系单一,比Linux的发行版机制更简单

学习的:

FreeBSD的体系更适合研究技术,而Linux则向所有的领域进发,甚至跑到mac/pda/汽车控制/宇航/电影等等。

许可的:

FreeBSD的BSD许可,你可以做任何事情,只需要事先大喊一声:“偶用了BSD技术”。而Linux的GPL需要你告诉别人你怎么做的。

软件的:

Linux在支持更多的软件特性上面具有优势(例如线程什么的),FreeBSD缓慢一些

硬件平台的:

NetBSD做的不错,Linux更加疯狂,甚至跑在ps2上

外设的:

Linux支持的外部设备更多

安全的:

OpenBSD是霸主,Linux追赶,不过大家似乎公认安全在人

水平的:

FreeBSD开发组成员平均教育水平更高,这与Linux质量好坏有关吗?

传统的:

FreeBSD在系统稳定性上比Linux更好,也许早就过时了。

功绩的:

FreeBSD最早实现了TCP/IP协议,在IPv4网络上优势无以伦比。

未来的:

FreeBSD:把Solaris/AIX/HP UNIX等优势都弄到x86上
Linux: 进入上述平台的领域

实用的:

FreeBSD在终端上具有传统的优势
Linux则在X体系以上获得了不少分数,足够冲击windows

FANS的:

偶就是喜欢FreeBSD
偶就是喜欢Linux

6. 美的操作系统是不存在的,正如人人都是有缺陷的。对于两个正在不断发展的操作系统–FreeBSD和Linux–没有缺陷是做不到的。但是,有缺陷并不意味着它们是垃圾。

作为服务器,FreeBSD和Linux都有太多的成功例子,任何一边的FANS都可以举出足以自豪的例子。当然,同时还会有太多的不成功例子没有人注意到,但是那并不重要。

回到5年前,Linux还在后面远远的追赶FreeBSD,那为什么还是有不少人坚持使用和开发Linux,而不是FreeBSD?也许就是为了delphij老兄所不喜欢的GPL吧。GPL确保了在自由软件社区,一个轮子无需发明两次,而且发明者不用担心轮子或者它的衍生物有朝一日成为私人财产。

现在,在2004年,Linux已经不是吴下阿蒙,现在已经不是Linux在单纯学习FreeBSD,而是开始了互有长短,相互借鉴的开发与合作。我一向不认为FreeBSD和Linux是对手,我认为它们更加像是学友,不过FreeBSD虚长几岁,是学长罢了。

做Linux的敌人,只怕会睡不好觉呢。

我从来把linux看作一套开发中的系统,不把他当敌人看,也不否认他提出的
一些技术观点.
上一帖我没说清楚,应该说买弄不成熟linux功能的那个人是垃圾.

但是有点不喜欢的是,一个ung协议口口声声是自由,却用自己去控制别人,不给别人自由,我更喜欢在自己的软件里说明是free&free授权,而不是plg.

对这些观点的讨论

1.

FreeBSD是操作系统,Linux只是一个内核而已

事到如今,要从FreeBSD里剥离掉GNU的东西恐怕不那么好用了

2.

……
学习的:

FreeBSD的体系更适合研究技术,而Linux则向所有的领域进发,甚至跑到mac/pda/汽车控制/宇航/电影等等。

功绩的:

FreeBSD最早实现了TCP/IP协议,在IPv4网络上优势无以伦比。
……


这两个不太同意,准确的说是部分的不太同意,bsd也跑到各个领域发展呀,比如嵌入式防火墙,网络存储(如netapp),火星车(Vxworks),mac。我反而没听说火星车跟linux有什么关系

3.

FreeBSD是操作系统,Linux只是一个内核而已

事到如今,要从FreeBSD里剥离掉GNU的

FreeBSD基础系统里面GNU的东东不是太多
举个例子,虽然现在内嵌的是gcc,但是freebsd也针对icc做了很多的努力,据说已经相当的兼容了。也许多数朋友还没听说过icc,icc实际上是intel出的标准编译器,那个i其实就是intel。
另外freebsd的ls不是gnuls,df、du都不兼容gnu,甚至连awk都跟gnu的不太一样。从系统中完全去掉gnu的东西其实并不困难,因为用的并不多

我反而觉得很多bsd自己的工具比gnu的好用,比如date,比如df,大家可能不知道,hp-ux里面专门带有一个工具叫bdf,其实就是bsd版的df,因为hp-ux自己的df实在功能太弱了

4.

不认为wind river曾经收购了BSDi意味着VxWorks转向了*BSD架构。
感谢KAME项目基于SD的网络堆栈完成首个ipv6的实现。
icc很好,问题有:
支持架构少,除了x86/ia64/x86-64还有吗?
不是开源项目,当编译器产生坏的代码,难于确定问题根源。


vxworks别的部分我不敢说,至少整个网络架构是跟bsd一摸一样的,你可以下载一份Vxworks的pdf文档看一看

5. 似乎是从别的论坛转过来的吧……不太喜欢这篇,作者的倾向性很明显,而且并不是从技术角度出发的,而且它在历史、现实、未来和技术角度都有很多错误。

高深的:

FreeBSD,从unix移植到x86版的一群expert hacker
Linux,从x86从零开始编写一个unix的一大群hacker


这是1993年的时候得情况。

架构的:

FreeBSD是一个完整的系统架构
Linux拥有内核和各种五花八门的发行版

架构这个词……从架构上说,Linux跟常见的Unix类似。

历史的:

FreeBSD曾经碰到过一些法律问题,阻碍了FreeBSD的顺利发展,正如Linux目前正在经历的一样

当年法院判决的一部分是USL不能起诉4.4BSD-Lite2的派生软件。Linux目前经历的基本上是SCO的无理取闹,但由于Linux直到最近才开始用版本控制来保存历史纪录,以及马虎的版权复审,这场官司很可能得打很久。

防御的:

FreeBSD在承受网络攻击方面,似乎比Linux更强壮


Linux完全可以移植FreeBSD的那些功能。

洁癖的:

FreeBSD的体系单一,比Linux的发行版机制更简单


不仅仅是单一,而且还有详细的成文规范。举例来说,即使你完全用rpm也没办法保证自己装了一个软件立即就能找到它的配置文件在哪里。

学习的:

FreeBSD的体系更适合研究技术,而Linux则向所有的领域进发,甚至跑到mac/pda/汽车控制/宇航/电影等等。


Linux叫声大,炒得欢而已。Mac OS X的userland和kernel用了大量FreeBSD代码,嵌入式开发用NetBSD不在少数,宇航就更不用说了,Matrix用FreeBSD渲染集群这事儿很少有人炒作,但那是事实。

我们选择一个操作系统的理由是它合用,而不是别人对他们的看法,更不是商人的宣传。

许可的:

FreeBSD的BSD许可,你可以做任何事情,只需要事先大喊一声:“偶用了BSD技术”。而Linux的GPL需要你告诉别人你怎么做的。


GPL要求的是以GPL发布。

软件的:

Linux在支持更多的软件特性上面具有优势(例如线程什么的),FreeBSD缓慢一些


不谈具体的优势是没办法判断是否“合用”的。Linux的线程恐怕不是什么优势,Linux有它合适的应用领域,但这些领域Windows和Solaris恐怕做的更好。

硬件平台的:

NetBSD做的不错,Linux更加疯狂,甚至跑在ps2上


几十年前伯克利因为BSD Unix在和美国国防部签约的时候一个主要原因就是BSD Unix设计科学,便于移植。NetBSD继承了这个传统。Linux是某些游戏机上的默认内核,但Linux能跑的平台NetBSD也都能跑,反过来则不然。

外设的:

Linux支持的外部设备更多


但是支持的水平并不一样。支持设备多没用,支持的“我要用”的设备多、支持的好才有用。

安全的:

OpenBSD是霸主,Linux追赶,不过大家似乎公认安全在人


追赶?确实它只能追赶,因为差得太远。GNU FTP和Linux自己的bk代码库都让人端了,但今天在BugTraq上面仍然能不时看到核级漏洞。我们应该对比一下*BSD(不仅仅是FreeBSD)过去几年每年总共有几个核级漏洞?以及有几个能够远程利用的root漏洞?

水平的:

FreeBSD开发组成员平均教育水平更高,这与Linux质量好坏有关吗?


如果说这是对Linux的FUD,我想问的是,FreeBSD开发组的成员教育水平高低关Linux什么事?就好比,奔驰的制造者全都拿了PhD,这和大众的汽车引擎的质量有关吗?

传统的:

FreeBSD在系统稳定性上比Linux更好,也许早就过时了。


Linux邮件列表和商人广告上经常出现的FUD,呵呵,一群到去年才刚刚学会怎么计算uptime的kernel hacker的内核的稳定性……

功绩的:

FreeBSD最早实现了TCP/IP协议,在IPv4网络上优势无以伦比。


最早实现TCP/IP协议的是BSD/Unix。我不认为在网络上FreeBSD有那么大的优势,Linux重写了TCP/IP实现,有很多值得关注的特性,DragonFlyBSD在FreeBSD的基础上也作了相当多的扩展。FreeBSD的网络子系统有那么大的优势吗?

未来的:

FreeBSD:把Solaris/AIX/HP UNIX等优势都弄到x86上
Linux: 进入上述平台的领域


FreeBSD没有把未来的赌注押在x86架构上,从来没有。

实用的:

FreeBSD在终端上具有传统的优势
Linux则在X体系以上获得了不少分数,足够冲击windows


我不知道所谓“终端上的传统优势”是说什么,但Linux冲击Windows?这牛皮吹得好大啊,而且把KDE、GNOME这些项目都归在Linux身上这种往自己脸上贴金的做法是那些不肖商人的一贯做法,很少有什么好用的桌面应用能够在Linux上运行而不能跑在FreeBSD上面的。

6.

事到如今,要从FreeBSD里剥离掉GNU的东西恐怕不那么好用了

GNU的东西都扔掉并不影响服务。FreeBSD runtime没有一个比特的GPL’ed代码,gcc编译的结果并不需要GPL,FreeBSD不用glibc,简单说,运行FreeBSD不需要任何GPL的东西,更不用说更狭义的GNU的软件。

FreeBSD上面做一个Web服务器,加入PHP和perl支持,用PostgreSQL数据库,版本控制用subversion,一切都不需要GNU的软件。

对于用户来说GPL不GPL都无所谓,但对vendor来说,BSD意味着他们有更多的使用这些代码的机会,如果说我来写一段代码,由于授权而不是技术的原因别人拒绝使用,那我认为它没有发挥它最大的价值。商人总是贪婪的,我不指望他们能够把代码捐赠回BSD社区,但我知道他在用我的东西,我知道他做了改进,我知道我怎么改进,而不是我知道因为我的授权他从头发明了轮子,我知道他做了跟我一样的东西只是设计完全不一样,或者克隆了设计,而我只是被冠以一个“开源斗士”的虚名,我反对跳出来反对那些商业公司――他们赚钱养活了很多很优秀的开发人员,你可以不喜欢资本家,但是没有理由让那么优秀的开发人员饿死,用BSD授权给了我很多和非常优秀的开发人员交流的机会,而不是同媒体做交流,在镁光灯下向大家说,嘿,微软在赚钱,Sun在盈利,而我在搞开源――这是政治,不是学术、科学,也不是技术,有人愿意这么干那是他们的自由,但是这不是我所希望的。

很多人在不遗余力地写GNU软件的替代品并且以BSD授权发布,这包括bsdtar, TenDRA, 等等。

7.

Linux能跑的平台NetBSD也都能跑,反过来则不然


ia64 ??
Power5???

8.

不认为wind river曾经收购了BSDi意味着VxWorks转向了*BSD架构。


题外话:Wind River已经不再开发BSD产品了,BSD/OS的源代码捐给了FreeBSD,其SMPng部分的设计是DragonFly与FreeBSD的根本分歧所在。

icc很好,问题有:
支持架构少,除了x86/ia64/x86-64还有吗?


IA架构最大的优点就是价格便宜。
并不是没有BSD授权的C/C++编译器,只是它与传统的gnu编译环境(gnu compiler collection, gcc)的互动还不是很好,但这些的改变都只是时间的问题。

不是开源项目,当编译器产生坏的代码,难于确定问题根源。


如果说这儿做开发的人有100个的话,能够有能力真正确认(还不说修复)编译器bug的人家起来不会超过10个(多数人只是怀疑“哦,编译器可能有问题,做个workaround吧”),而这10个人里面能够有能力修复bug的牛人,绝不超过5个,这其中有能力且有闲功夫修正编译器问题而不是作workaround的大牛恐怕只有半个了。。。

我一直觉得有没有源代码只是对开发人员有用。编译器也许是个特例,但我过去的编程经历中(应该不算短了),最终真正被证明是编译器问题的,加起来也只是屈指可数的那么几个,而且,恕我直言,这里面GCC占了绝大多数。

其实真有能力看代码确认编译器问题的人,都有能力从现象分析确认是编译器的问题吧

开放源代码是一种精神,开放源代码的软件是很好的东西,但我从不认为他们是不可或缺的,别人愿意不愿意开放源代码是他们的事,但如果我需要用这些软件来做事,而不是仅仅满足自己的参与开放源代码开发的小爱好的话,那么有没有好的技术支持,要比有没有源代码重要的多了。

我在大学期间所作的项目的设计文档和源代码都交给客户了,他们就源代码给出的意见反馈的数目是0。真正的软件公司遇到的情况也类似,客户关心的更多的是“这东西能用,好用,合用,开发者有实力保证后期的技术支持和维护”,很多有远见的大公司在积极地支持开放源代码,然而这不代表开放源代码的东西已经能够足以取代商业软件,恐怕也没有这个必要――开放源代码项目的目的如果都变成“跟着市场走,和商业软件对着干”,而不是在技术上有所尝试、创新,如果开放源代码的项目中缺乏交流的话,那我宁可去做商业软件,因为在失去了上面这许多开放源代码的乐趣之后,至少还不至于饿死

9.

不谈具体的优势是没办法判断是否“合用”的。Linux的线程恐怕不是什么优势,Linux有它合适的应用领域,但这些领域Windows和Solaris恐怕做的更好。


NPTL较之linuxthreads算是一个进步,估计Java,mysql的用户比较满意,但实现之复杂已经令人崩溃。而作嵌入系统的工程师还要更多实时、健壮特性支持,而负责nptl开发的红帽工程师对此不感冒,恐怕还得靠OSDL协调罢。

10.

事到如今,要从FreeBSD里剥离掉GNU的东西恐怕不那么好用了

GNU的东西都扔掉并不影响服务。FreeBSD runtime没有一个比特的GPL’ed代码,gcc编译的结果并不需要GPL,FreeBSD不用glibc,简单说,运行FreeBSD不需要任何GPL的东西,更不用说更狭义的GNU的软件。

FreeBSD上面做一个Web服务器,加入PHP和perl支持,用PostgreSQL数据库,版本控制用subversion,一切都不需要GNU的软件。

对于用户来说GPL不GPL都无所谓,但对vendor来说,BSD意味着他们有更多的使用这些代码的机会,如果说我来写一段代码,由于授权而不是技术的原因别人拒绝使用,那我认为它没有发挥它最大的价值。商人总是贪婪的,我不指望他们能够把代码捐赠回BSD社区,但我知道他在用我的东西,我知道他做了改进,我知道我怎么改进,而不是我知道因为我的授权他从头发明了轮子,我知道他做了跟我一样的东西只是设计完全不一样,或者克隆了设计,而我只是被冠以一个“开源斗士”的虚名,我反对跳出来反对那些商业公司――他们赚钱养活了很多很优秀的开发人员,你可以不喜欢资本家,但是没有理由让那么优秀的开发人员饿死,用BSD授权给了我很多和非常优秀的开发人员交流的机会,而不是同媒体做交流,在镁光灯下向大家说,嘿,微软在赚钱,Sun在盈利,而我在搞开源――这是政治,不是学术、科学,也不是技术,有人愿意这么干那是他们的自由,但是这不是我所希望的。

很多人在不遗余力地写GNU软件的替代品并且以BSD授权发布,这包括bsdtar, TenDRA, 等等。



BSD和GPL的flame war已经太多了,公说公有理,婆说婆有理,到底谁有理,只有天知道。不管谁有理,这世上有很多人用BSD发布,也许有更多的人用GPL在发布,如果承认存在即是合理,那么两个都合理。要说谁更好,纯属个人观点,牵扯不清,说了也白说。

我不是说FBSD离了GNU便活不成,只是没那么潇洒罢了。FBSD运行的确不需要GCC,但事实上FBSD不能没有GCC,能找到一个比GCC更好的编译器吗?一个好的系统不能没有一个好的编译器。要生成一个好的运行系统,你不能没有一个好的开发环境,包括编译器(GCC),编辑器(Emacs,VIM),调试器(GDB),版本控制(CVS,subversion),这个组合也许有纯BSD的,而且我估计FBSD的core team里有用纯GNU的组合,至少他们都用GCC,CVS。没有必要排斥他们,他们是好东西,GPL授权在使用上是BSD Compatible的。
GNU原意是要clone一个UNIX,基本上已经成功了。BSD从4.4开始是个完整的BSD授权系统,到现在的FBSD,仍然是个完整的BSD授权的运行系统,我们仍然可以从它那里以BSD授权派生出完整的运行系统,BSD的初衷仍然没有改变。而改变了的是我们需要GNU来让系统更好用,更好的开发,在更多的领域使用,这是不能被忽视的。
正如当年的BSD影响了后来的OS,而现在似乎GPL在取代它这一位置,至少有这么个趋势。。。

11.

我从来把linux看一套开发中的系统,不把他当敌人看,
上一帖我没说清楚,应该说买弄不成熟linux功能的那个人是垃圾.

但是有点不喜欢的是,一个ung协议口口声声是自由,却用自己去控制别人,不给别人自由,我更喜欢在自己的软件里说明是free&free授权,而不是plg.

Linux和FreeBSD最大的不同就是这个License了。GPL不给别人以某些自由,是为了保护更多的自由。看过《勇敢的心》的人应该知道,有时候自由甚至是要付出鲜血的;而在自由软件领域,保护自由也是需要责任和牺牲的。

不同的License给了我们不同的选择机会,如果不喜欢GPL的人,自然可以选择BSD,而喜欢GPL的人就可以选择Linux。

12.

FreeBSD是操作系统,Linux只是一个内核而已


同意,

gnu也罢,linux也罢;

一件漂亮的衣服,如果散发着臭味;我还是不喜欢穿的;

但是,有些时候,我们明知道厕所里面很臭,还是会用的;

13.

FreeBSD是操作系统,Linux只是一个内核而已

同意,

gnu也罢,linux也罢;

一件漂亮的衣服,如果散发着臭味;我还是不喜欢穿的;

但是,有些时候,我们明知道厕所里面很臭,还是会用的;


这句话本来就是有问题的,Linux是指的所有Linux发行版本的集合,而不是光讲一个kernel。

至于认为GNU的东西“很臭”的人,我看是连FreeBSD也不配用的,以免染上了臭味洗不掉啊。

14.

这句话本来就是有问题的,Linux是指的所有Linux发行版本的集合,而不是光讲一个kernel。

至于认为GNU的东西“很臭”的人,我看是连FreeBSD也不配用的,以免染上了臭味洗不掉啊。

哦,我可没有说"GNU的东西“很臭””;
本来linux是很不错的,
我只是不喜欢linux的商业味那么浓,是铜臭;



算是一个总结

freebsd 和 linux 之间的区别以前就有过讨论,但最后难免变成谁好谁不好的讨论。争论是好事,至少我看了可以增长见识。但简单的好与坏结论就有点不太专业了。

我觉得一个原因是大家都很有闲 (别扔砖头)。其实我到想每个都用用,自己感觉一下它们的区别,可惜我根本就没有时间和精力。今天工作不努力,明天努力找工作。没办法。

两种东西的区别是靠自己发现才有意义的。就象苹果和鸭梨的区别,自己不去品尝,靠别人说明是永远都不会知道的。道可到,非常道。

—–
后记:本文内容源于对
http://www.freebsdchina.org/forum/viewtopic.php?t=12119&postdays=0&postorder=asc&start=0
的选编,更多内容可以查看该页

发表评论?

0 条评论。

发表评论