`
liuqiang
  • 浏览: 161188 次
  • 性别: Icon_minigender_1
  • 来自: 华东
社区版块
存档分类
最新评论

Linux与BSD之间的10个不同之处

阅读更多

也许你经常会听到人们把Linux 及BSD 系统混为一谈,甚至于媒体都这么说。当然,事实上这两者确实有很多相似之处,比如它们都是基于Unix 演变而来,而且基本上这两类系统都是由非盈利组织及团队开发,另外,这两个系统都有一个共同的目标——那就是创建最有用、最可靠的操作系统。

那么这两个系统的区别到底在哪里?国外一位名为Jack Wallen的科技Blogger 发表了一篇名为10 differences between Linux and BSD 的文章,从许可证、代码控制、内核 vs 操作系统、UNIX-Like、基本系统、更多来自于源代码、升级、前沿技术、硬件支持及用户群等10方面描述了Linux 与BSD 之间的 10 个不同之处,下面是来自“WOW!Ubuntu”的中文译文

你是否经常会听到人们把 Linux 及 BSD 系统混为一谈?是的,我有时会经常听到一些新手,甚至于媒体都这么说。当然,事实上这两者确实有很多相似之处,比如它们都是基于 Unix 演变而来,而且基本上这两类系统都是由非盈利组织及团队开发,另外我更想说的是,这两个系统都有一个共同的目标–那就是创建最有用、最可靠的操作系统。

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

1. 许可证

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

而 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 则更接近于右边。许多人会对此有争论,也有些人可能会感觉被冒犯了。但是,个人认为这是一个对”哪些用户使用哪些系统”相当准确的概括。

其他的不同点?

这个列表并不想表明哪个系统比哪个更好。事实上,BSD 和 Linux 各有着自己的亮点。你认为怎么样?有兴趣的话也请表达出你的观点。

原文地址:10 differences between Linux and BSD

译文链接:http://wowubuntu.com/linux_vs_bsd.html

分享到:
评论
31 楼 yuan 2008-08-28  
yanshiyi 写道

团队跟待遇都重要。待遇高,团队糟糕,迟早会受不了(混日子的人除外);团队好,待遇低,我不信别人开车你走路,你不眼红。


其实仔细想想,我在乎的应该是将来的薪水而不是目前的。
30 楼 happyblue 2008-08-28  
<div class='quote_title'>liuqiang 写道</div>
<div class='quote_div'>
<p>60 分的人:会hibernate增删改查,会用sql做基本的数据库操作,做过struts+spring+hibernate的demo ,工作经验0+</p>
<p> </p>
<p>70分的人:会用div+css布局,熟练struts的使用,会用spring的事务,用过hibernate的缓存机制,会Oracle的基本操作,确实做过真实的项目,当然不必是商业项目,可以是自己做的,但确保完整性和一定的规模,不只是登录和注册。</p>
<p> </p>
<p>80分的人:参与设计开发过2+真实的商业项目,可以独立解决实际的问题,比如单点登录、系统集成、restful应用、rails性能优化……,研究过一定的开源项目的代码。</p>
<p> </p>
<p> </p>
<p> 70分  期望长三角地区 java开发  4-5k</p>
<p> </p>
</div>
<p> </p>
<p> </p>
<p>div+css布局会一些,js会基本操作,熟悉struts,sping事务没用过,只用过sping的IOC,hibernate也没用过,公司用的是ibatis, 会Oracle的基本操作,做过两个商业项目,都还比较完整吧,</p>
<p> </p>
<p>我这个值多少钱?</p>
<p>我已经工作2年了,做开发只有1年,想在上海找份工作,能值多少钱?</p>
29 楼 tony3980 2008-08-28  
70分,一年工作经验 想在深圳换个工作
28 楼 yuan 2008-08-28  
liuqiang 写道

PS:都别装了,真想找工作的来报个名,其他直接pass

很想去上海,按你的评分标准,我给自己打65。
27 楼 yuan 2008-08-28  
liuqiang 写道

找工作大家最关心的还是薪资问题

No,我关心公司技术团队胜过关心待遇。薪水只要够食住行,剩点钱够买书,犯些小毛小病的时候有钱买药就好了。
26 楼 freej 2008-08-28  
LZ这贴子也没啥意思,和晒工资没啥区别。
25 楼 xiecailian 2008-08-28  
我的工资。节余出来应该是负数吧。。
24 楼 jiyanliang 2008-08-28  
<div class='quote_title'>liuqiang 写道</div>
<div class='quote_div'>
<div class='quote_title'>jiyanliang 写道</div>
<div class='quote_div'>LZ真有创意。 <br/>学历的梯度是多少呢?</div>
<p> </p>
<p> 这个我是真不敢说啊,怕引起新一轮学历之争,只能说学历不限,最好有学历,哦,博士或者没有学历的特殊者除外</p>
<p> </p>
<p>PS:这年头混个学历还是比较容易的,这个不是找工作的瓶颈。</p>
</div>
<p><br/>LZ真实个有心人阿。</p>
<p>我现在是什么都用过,什么都不非常的熟悉。</p>
<p>struts1.x,struts2.0,spring,hibernate,c#,ruby on rails都作过商业性项目。</p>
<p>对设计模式有一定的理解,但是运用上还是有问题。</p>
<p>GOG,JSF,Seam都了解过。</p>
<p>Java3D作过本科毕业设计。</p>
<p>现在跟着导师搞J2ME,LBS,webservice.</p>
<p>忘了说了,还会一点esri arcgis.</p>
<p>还有一年半就找工作了,感觉自己学的有点乱!</p>
23 楼 liuqiang 2008-08-28  
<div class='quote_title'>jiyanliang 写道</div>
<div class='quote_div'>LZ真有创意。 <br/>学历的梯度是多少呢?</div>
<p> </p>
<p> 这个我是真不敢说啊,怕引起新一轮学历之争,只能说学历不限,最好有学历,哦,博士或者没有学历的特殊者除外</p>
<p> </p>
<p>PS:这年头混个学历还是比较容易的,这个不是找工作的瓶颈。</p>
22 楼 jiyanliang 2008-08-28  
LZ真有创意。
学历的梯度是多少呢?
21 楼 liuqiang 2008-08-28  
<div class='quote_title'>刑天战士 写道</div>
<div class='quote_div'>
<div class='quote_title'>liuqiang 写道</div>
<div class='quote_div'><br/><br/><br/>div+css布局基本知识,不会,没关系,javascript还算可以,说明你用js可以熟练操作dom,基本div+css上手应该很快 <br/><br/><br/></div>
<br/>js熟练操作dom就算熟悉js了?天天操作dom都不敢说自己懂js地飘过……我以为能用functional programming写出漂亮代码的才算……</div>
<p> </p>
<p> 我算明白了,很多人是想看自己值多少钱啦,骑驴找马者占不少比例,所以行情就是这样,急需找工作的到处求职未果,不是很需要找工作的倒是offer不断。</p>
<p> </p>
<p>另外,javascript还算可以=&gt;js可以熟练操作dom != js可以熟练操作dom =&gt; 熟悉js ,您弄反人家意思了。</p>
<p> </p>
<p> </p>
<div class='quote_title'>风清云淡 写道</div>
<div class='quote_div'>1.怎么没有包括设计能力,这个还是很能提升待遇的 <br/>2.怎么没有质量意识、编码风格等,这个可是区分能力的关键考察点,也是和同事合作的基础! <br/>通过上机操作、笔试考题加面试,这些都是能够测试出来的。 <br/><br/>好像LZ列的都是语言加框架,比较硬性的东西。但软件要命的就是这个“软”字,感觉有点偏颇。 <br/><br/><br/></div>
<p> </p>
<p> </p>
<p>你说的很对,我后来是想加上来着,后来和刑天战士说话说忘了:),这两条很有必要加上</p>
<p> </p>
<p> </p>
<p>to yanshiyi:</p>
<p>个人觉得你期望5000比较靠谱,比较实在</p>
<p> </p>
<p>to chinata :</p>
<p> </p>
<p>“按这种评分方式看起来,满分可能需要是200分吧...” ,这个确实,不过超过100分的人以这种方式找工作的不多,直接无视,哈哈。</p>
<p> </p>
<p> </p>
<p>to all:</p>
<p> </p>
<p>这种评分标准比较简陋,想总结一套全面的技术标准是不大可能的,如果你理解这几个标准代表什么水平,有个参照就可以了。</p>
<p> </p>
<p>PS:都别装了,真想找工作的来报个名,其他直接pass</p>
<p> </p>
<p> </p>
20 楼 chinata 2008-08-28  
按这种评分方式看起来,满分可能需要是200分吧...
19 楼 bupolongyi 2008-08-28  
我自己60吧 不会div+css 搞那个就头疼

js也不是很懂

SSH 比较熟练  项目做过几个,ibatis,castor研究过2,3个月

英语的话  怎么说  英文文档能看懂70%其他的需要..翻译软件 靠这个参与过一个美国的外包项目..(说参与 其实是朋友没时间做,帮忙来着)

打算回厦门找工作...
18 楼 土匪一份子 2008-08-28  
夜深了,刚洗完澡,上来遛遛。这么晚还见liuqiang新贴,忍不住就回了。
看了例子,不懂自己值几分,两个完整项目经验,第一个是移动的项目,第二个是广电的,目前手上有一个广电的做了一半。
div+css会但做不到专业美工那种效果,在学校时感觉自己美工很不错,毕业后碰上真正的美工后就再也不设计了,—-—!JS感觉还可以,自己写过JS插件。Struts没什么问题,有对action进行简单封装。hibernate的缓存和延迟加载都有用过。spring的事务也有用过。那两个已经完成的项目都是用ORACLE,存储过程之类的都没什么问题,第二个项目的数据库这块是我设计的,两个项目数据量都有上百万。
工作经验:1.1年
17 楼 HenryLee007 2008-08-28  
我只是60分,目前工资为非正数
16 楼 qamer 2008-08-28  
这个分值段不太准,实力+时机才是硬道理
15 楼 yiruma 2008-08-28  
蛮有启发的
14 楼 fantasybei 2008-08-28  
刚看完书要睡觉的飘过,一年多才做了一个项目还没干完,汗
13 楼 no1dog 2008-08-28  
yanshiyi 写道
zhuixinjian 写道
楼上,我觉得你值5000了,就2年经验,跟你简单的说了下SSH,5000没问题,肯定有公司愿意开的。

看来,我确实一直在贱卖自己。决定了,回家再巩固一下,然后找个5000的工作,找不到就回家扫街去。

这种评分意义不大,比如卖人的公司看口语,一些特别点的公司看业务,小公司往往技术水平再高也开不上.5000在上海很好找的.楼上那里的,看你走那种公司路线了.
12 楼 zhuixinjian 2008-08-28  
楼上,我觉得你值5000了,就2年经验,跟你简单的说了下SSH,5000没问题,肯定有公司愿意开的。

相关推荐

    linux与BSD不能系统混为一谈.pdf

    Linux 操作系统和 BSD 系统是两个不同的操作系统,它们之间存在着许多相似之处,但同时也存在着许多区别。本文将从许可证、代码控制、内核vs操作系统、UNIX-Like、基本系统、使用源代码安装等方面,比较 Linux 和 ...

    Linux 与 BSD 有什么不同?

    Linux 和 BSD 都是免费的,开源的,类Unix系统。他们甚至使用很多相同的软件。他们看上去简直像是一个操作系统,那么,它们有什么不同吗?  其实,两者之间的不同,远远超出了我们下面提到的这些,尤其是在构建...

    Linux中BSD套接口开发的基础介绍

    ### Linux中BSD套接口开发的基础介绍 #### 一、TCP/IP的基础介绍 TCP/IP协议族是一种广泛使用的网络通信协议标准,允许两个运行在同一台电脑或通过网络连接的不同电脑上的程序进行通讯。该协议族专为在不可靠的...

    FreeBSD和Linux到底有什么不同

    随着时间的推移,Linux逐渐成长为一个庞大且多样化的生态系统,支持多种不同的硬件架构。 #### 三、技术实现层面 - **FreeBSD**: 是一个完整的操作系统,包括内核和用户空间工具,以及一系列服务和支持程序。它...

    了解BSD和Linux微妙区别

    同样作为自由开源操作系统, BSD和Linux之间到底有什么微妙的区别呢? Matt Rants为自由软件爱好者们整理了自己的资料,以一个BSD使用者的角度来客观地看待二者的关系。Matt从最基础的哲学上的不同出发,用了十一节来...

    DESIGNING BSD Rootkits,pdf

    这本书主要介绍了在BSD系统中设计Rootkits的技术和方法,对于理解和掌握Rootkits的工作原理以及在不同操作系统(如FreeBSD、Linux和Windows)下的应用具有重要意义。 ### 重要知识点 #### 1. **Rootkits概念** - ...

    BSD Socket Interface Programmer’s Guide Edition 6

    根据提供的文件信息,“BSD Socket Interface Programmer’s Guide Edition 6”主要介绍了Unix/Linux环境下BSD套接字编程的相关知识。下面将详细解析此文档所涉及的重要知识点。 ### 一、BSD Socket 接口概述 ####...

    cpp-iodine支持PubSub的HTTPWebsocket服务器针对LinuxBSD上的RubyMRI进行了优化

    iodine是一个高效的开源HTTP服务器,特别为Linux和BSD操作系统上的Ruby MRI(Matz's Ruby Interpreter)进行了优化。它不仅提供基本的HTTP服务,还支持Websocket协议,这使得iodine能够处理实时通信,如推送通知、...

    freebsd.tar.gz_BSD_FreeBSD内核源码_freebsd source_freebsd.tar_linux

    虽然这个压缩包的标题中提到了`linux`,但请注意,FreeBSD和Linux在内核设计上有许多不同之处。Linux采用微内核架构,而FreeBSD采用单内核设计。此外,它们的许可证也不同,Linux遵循GPL,而FreeBSD遵循BSD许可证。...

    Linux从入门到精通之一Linux概述[归纳].pdf

    "Linux从入门到精通之一Linux概述" Linux概述是什么? Linux是一种操作系统,可以安装在包括服务器、个人电脑、乃至PDA、手机、打印机等各类设备中。Linux起源于1991年,芬兰研究生Linus Torvalds开发了自己的操作...

    Linux网络结构及实现分析.pdf

    Linux网络结构的实现借鉴了4.3BSD模型,它支持BSD Sockets接口及其扩展,便于应用程序在不同Unix平台之间移植。Linux网络的实现遵循了网络协议的分层结构,如同TCP/IP模型一样。 首先,Linux的网络层结构如图1所示...

    Linux与Solaris命令差别

    10. **帮助文件**:Linux通常使用man页面作为命令帮助,Solaris也有类似的man命令,但命令的帮助文档可能会有所不同,需要适应每个系统的风格。 这些差异对于系统管理员来说是必须了解的,因为它们会影响到日常的...

    Linux System Poster 2001

    值得注意的是,许多这些工具最初是在Berkeley Unix中开发,并随后贡献给了GNU项目,这表明了Linux与BSD之间既有竞争也有深层次的合作。 #### 命令行外壳:bash与csh变体 bash是最常用的Linux命令行外壳,它继承了...

    用EasyBCD和Linux iso文件安装Linux

    此时需要再次打开EasyBCD,删除之前的NeoGrub条目,并添加一个新的Linux/BSD条目,类型选择GRUB2。 - 如果启动时出现GRUB引导菜单,则需要使用MBR修复工具(如MbrFix.exe)修复MBR,然后按照上述步骤重新配置引导项...

    An introduction to 4.3 BSD interprocess communication tutorial

    通常,创建描述符的程序与使用该描述符的程序不同。例如,shell 可以为 “ls” 命令的输出创建一个描述符,这将导致列表出现在文件中而非终端上。管道是另一种形式的描述符,已在 UNIX 中使用了一段时间。管道允许...

    Easy 搞定Unix和Linux环境使用(基础篇)

    - **1992-2001年**:AT&T与BSD开发组之间因版权问题产生长达十年的法律纠纷,Unix在大型机上的应用受限,BSD错失发展良机。 ##### Linux家族 - **起源与发展**: - **1990年**:Linus Torvalds基于Minix(mini-...

    Linux网络编程.pdf

    Linux支持多种锁定机制,如System V锁定和BSD锁定,各有其适用场景和特性。 ### 五、System V IPC与共享内存 #### 知识点11:System V IPC System V IPC(Interprocess Communication)提供了消息队列、信号量和...

Global site tag (gtag.js) - Google Analytics