BSD操作系统大盘点.doc_第1页
BSD操作系统大盘点.doc_第2页
BSD操作系统大盘点.doc_第3页
BSD操作系统大盘点.doc_第4页
BSD操作系统大盘点.doc_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

BSD操作系统大盘点:四种主流BSDBSD操作系统大盘点:四种主流BSD【导读】本文将提供四个主要的BSD变体的对比,并且对基于服务器和台式电脑的解决方案提供一些建议。 那些要使用公共Unix变体的机构有两个可选解决方案Linux和BSD。人们谈论比较多的Linux阵营包含了各种发布版软件。这些软件包括不同的 工具和工具集。人们很少谈及的BSD阵营也是如此。本文将提供四个主要的BSD变体的对比,并且对基于服务器和台式电脑的解决方案提供一些建议。BSD的历史有四种主要的BSD变体。其中有三种(FreeBSD、OpenBSD和NetBSD)是完全免费的。第四种(Mac OS X)在技术上是一种操作系统的核心,大多数人甚至不认为它是一种BSD的变体。要了解不同版本之间的区别,让我们先简单回顾一下BSD的历史以便了解这些 不同的版本是如何开发出来的。今天的BSD变体是原来的AT&T Unix操作系统的开源软件版本。实际上,这些变体都来自于加州大学伯克利分校开发的Unix。BSD实际上是伯克利分校软件发布版的缩写字。原来BSD 代码的很大一部分是以免费的AT&T Unix代码为基础的。在William F. Jolitz等原来的BSD开发小组的关键成员的努力之下,这个代码的最后一部分根据开源软件许可证协议开发出来了,并且制作出了386BSD。1993年,386BSD分裂为我们目前所知道的两个主要版本:NetBSD和FreeBSD。这两个版本是根据不同的目的和目标建立起来的。 毫不奇怪,每一个版本都有自己的历史。第三个版本OpenBSD是在1996年推出的。这个版本主要是为了解决其它变体中存在的一些安全问题。Mac OS X操作系统中采用的BSD核心被人们称作Darwin(达尔文)。它是一个完全独立的组件。Darwin软件本身来自于NeXT公司开发的NextStep操作系统的BSD层。NeXT公司是史蒂夫?乔布斯在80年代离开苹果公 司之后创建的。从技术上说,Mac OS X操作系统是以FreeBSD内核为基础的。OS X 10.3是以FreeBSD 5.x为基础的。然而,Mac OS X已经超出了基本的BSD代码,完全是个性化设计的。Mac OS X的关键优势在于其Aqua GUI(图形用户界面)。这个图形界面能够让OS X系统像原来的Mac OS X操作系统一样运行,但是同时具有一个高效率的BSD内核的全部优点和灵活性。通用功能同其它的Unix变体一样,四种BSD发布版提供了同样的基本功能。所有这四种变体都包含下列核心组件:?内核-工作控制的抢占式多任务处理功能。?安全-基本登录和授权系统。?外壳界面-Bourne shell、C shell、Korn和其它第三方界面。?网络-坚持TCP|UDP/IP标准,支持所有的基本协议(finger、telnet、NFS和FTP) 。?第三方网络-支持Apache、Mac文件共享(通过NetAt)和Windows文件共享(通过Samba)。?基本工具-丰富、内置的工具列表,包括awk、cut、paste、sed和ed。此外,因为它是一种类Unix操作系统,Perl、Python、Apache、 MySQL、PostGreSQL、Java、C/C+和其它一些工具和应用程序都能够兼容BSD。然而,由于BSD没有替代Unix的Linux那样 流行,因此很少有预包装的BSD应用程序。不过,有些BSD变体还提供兼容Linux的软件包,使这些软件能够直接在同一平台上执行Linux应用程序。BSD系统相对于它的竞争者,有兼容性更佳的美誉,主要原因是BSD系统是由规模较小和重点更集中的开发团队开发出来的。BSD系统还宣称具有更成熟的代码库,因为相当多的一部分BSD代码来自于Unix的非常早期的形式。既然各种变体都具有如此的相似性,人们如何区别不同版本的变体并且选择应用哪一种变体呢?FreeBSDFreeBSD早期通过Walnut Creek公司的CD盘发布之后已经成为了最流行的BSD修改版之一。Walnut Creek是在互联网爆炸式增长之前在CD盘上发布自由和免费软件的先驱。FreeBSD的主要平台是x86电脑,包括目前AMD和英特尔推出的64位处 理器平台,FreeBSD也可以用于Sun微系统公司的SPARC平台。FreeBSD的重点是性能,特别是TCP/IP堆栈的性能。包括雅虎在内的许多公司都在使用FreeBSD作为互联网服务器平台。 FreeBSD还有一项传输数据的非正式的记录,一台运行这个操作系统的服务器传输了2TB以上的数据。这个统计还显示,FreeBSD还是最稳定的操作 系统之一。FreeBSD的开发人员尽了很大的努力来使这种操作系统更容易使用。因此,FreeBSD拥有一个在所有的Unix平台中最容易的安装程序。 在系统安装完成后,你可以使用内置的ports系统,来方便的下载,编译并安装附加的软件包。ports是一个将软件安装过程自动化的第三方解决方案,它 使用Ports Collection(Ports 连接,本质上是 /usr/ports 目录下的一堆 Makefile、补丁和描述文件)自动下载需要的文件,检查文件完整性,编译并安装应用程序。这 大大减少了在机器上布置应用所需的时间。下面是FreeBSD特性的一个简表。FreeBSD概览主页 /平台 i386, Alpha, IA-64, AMD64, and UltraSPARC最早发布时间 1993年12月特点: 高性能计算、使用方便、稳定性NetBSDNetBSD是比FreeBSD早几个月发布的。与FreeBSD重点集中在目标平台的性能和最佳质量的支持不同,NetBSD旨在支持尽可能 多的平台。要列出NetBSD所有可用的版本是很困难的。但是,NetBSD能够在50多个平台上运行,包括从x86和SPARC等主流的平台到世嘉公司 的Dreamcast和很多业余爱好者、以及掌上和嵌入设备等较少见的产品。这种可移植性为NetBSD提供了优势。也给这种操作系统带来了不同,支持大量的平台意味着这种代码是有效率和安全的,各种平台上广泛的开发经验整体上提高了操作系统的功能。这种广泛的支持还意味着NetBSD能够在比其它的发布版软件支持的更强大的硬件平台上运行。Sun、惠普等公司的高端专用工作站和老式的 Digital/Compaq Alpha平台都可以使用NetBSD提供BSD平台的全部稳定性和性能,同时给较老的可用的平台带来新的生命。这种可移植性也是吸引人们在组装自己的计算机或者使用嵌入式硬件设备解决方案的时候一再选择这种平台的原因。这种便携性使NetBSD成为大学和科学实验室的一个受欢迎的选择。主页 /平台 适用于所有平台原来发布时间 1993年12月重点 可移植性和稳定性OpenBSD OpenBSD是在对NetBSD代码的发展前途问题上发生分歧之后由Theo de Raadt开发出来的。OpenBSD的开发是从重点制作非常安全的操作系统开始的,这种方法一直持续到了现在。与其它BSD变体和大多数Unix的特点不同,OpenBSD安装了一切功能,但是禁用了绝对重要的服务。习惯于在Linux安装之后就拥有 NFS、Telnet、finger、FTP和其它功能用户将发现,他们必须要具体地启用而不是禁用OpenBSD中的这些服务。OpenBSD采取的这 种设计是防止这些功能意外地打开,从而造成潜在的安全突破。OpenBSD还包括RSA、Blowfish、DES等各种内置的加密标准,全面支持IPSec TCP/IP安全系统。支持加密标准进一步提高了对许多硬件加速器的支持,包括支持许多第三方的PCI卡和支持更新的系统,如最新的VIA C3系列处理器内置的随机数发生器和高级加密标准。OpenBSD非常适合用于网络路由器、防火墙和安全互联网服务解决方案中,因为它具有高水平的内置安 全和加密功能。OpenBSD的整体安全性通过严格的代码测试和审计将进一步增强。这种代码实际上将经过逐行的检查以便找到这个系统中潜在的错误。因此,这个操作系统的漏洞,无论是真实的还是潜在的,都将在被人利用之前被堵住。这样做的结果就是,这种操作系统使用多年以来从来没有发生过其它操作系统经常出现的“remote-root exploit”(远程根漏洞)这类安全问题。OpenBSD 概览主页 /平台 i386, Alpha, AMD64, sparc, sparc64, hp300, hppa, mac68k, macppc, mvme68k, mvme88k,和 vax原来发布时间 1995年11月重点 安全和代码的纯洁性Mac OS X作为Mac OS X基础内核的Darwin软件本身是以FreeBSD代码为基础的,在标准的BSD内核的位置采用了定制的Mac内核。Darwin的重点是提供一个让 Mac OS X环境的其它方面能够运行的基础。虽然Darwin根据设计并不是要替代其它的BSD产品,但是,Darwin在BSD领域确实占有一席之地。大多数远程登录OS X计算机的用户如果不仔细的观察很难注意到登录环境与真正的FreeBSD环境有什么差别,可以使用的工具软件和环境与真正的FreeBSD环境基本完全一样。Darwin计划完全是开放源代码的工程。苹果在网络上公开了这个系统和源代码,而且Darwin代码的修改历史可以追溯到FreeBSD的源码树。PowerPC和x86平台都支持Darwin平台。对x86平台的支持通常使人们感到意外。Darwin与其他三个BSD发布版软件不同的地方是它构成了Mac OS X操作系统的基础。一套专有的工具和在Darwin内核基础之上建立的用户环境提供了与Mac OS 9和使苹果闻名的早期界面没有很大不同的用户界面。正是通过了Aqua图形用户界面才使大多数定制的和商用的应用程序能够使用,这包括Adobe公司的 InDesign和Illustrator以及微软的Office软件。如果不使用Aqua和Mac OS X支持额外的应用程序和界面,下面的FreeBSD内核仍是可用的。你可以通过终端程序打开一个shell界面,也可以获得基于X Windows系统的应用程序的支持,你还可以访问Perl、Python、MySQL、Apache和其它兼容Unix的工具。Darwin内核是一个开源软件计划。苹果和Darwin团体的成员提高了Darwin代码的性能并且扩大了这个操作系统的工作范围和功能。最 后,对于Darwin内核做出的任何修改都可以应用到BSD家族的其它成员中。苹果还帮助支持整个BSD团体。因此,对于BSD平台的改进是在苹果和开源 社区阵营之间流动的。Darwin/OS X概览网页 /darwin/平台 x86 (仅是Darwin) 和Mac (Darwin+OS X)原来发布时间 1999年3月重点 使用方便选择一个台式电脑解决方案 你选择BSD的哪一种特色应该主要取决于这个台式电脑使用什么硬件。在基于英特尔和AMD处理器的PC上,FreeBSD是一种稳定的和广泛支 持的选择。对于比较老的硬件或者非主流的硬件来说,NetBSD也许是更好的解决方案。如果你正在开发部署针对多种嵌入式系统的解决方案,NetBSD应 该是很好的选择,因为它可以方便的应用于你的各种目标平台。如果你需要一个Unix环境并且还想使用微软的Office或者Adobe、Alias和其它公司的商业应用软件,Mac OS X在这两方面都能够提供最佳的性能。这种类似于FreeBSD的内核提供了一套完整的标准Unix工具和库,让你同时使用BSD和OS X组件。因此,OS X是我的平台选择。我在运行OS X操作系统的Power book G4笔记本电脑上使用Perl、MySQL和其它语言开发Web应用程序,同时还使用微软的Word写文章和写书。选择一个服务器解决方案OpenBSD显然是服务器的选择,因为它有非常高的安全政策。拥有这样的安全环境,很容易部署基于OpenBSD的服务器,而不比太担心这个系统或者网络被攻破。OpenBSD用于网络的公共方面、提供防火墙和互联网与内部网络之间的代理服务是特别理想的。对于纯Web服务器来说,FreeBSD也是一个很好的选择,因为它在x86等关键的硬件平台上具有很好的稳定性。硬盘和网络堆栈的质量意决定了服务器的可用性。特别是通过关闭你不需要支持的服务,还能使FreeBSD更加安全。如果你喜欢在BSD平台的普通安全环境中工作,但是,还需要更友好的设置和管理环境,可以考虑使用Mac OS X服务器。这种服务器提供了FreeBSD平台所有的好处,拥有更友好的前端。Mac OS X服务器提供的功能还包括:对Apache的更广泛的支持、通过NFS、AppleTalk和Samba实现的文件共享、内置的防火墙和虚拟专用网、通过 OpenLDAP提供的目录服务以及通过QuickTime提供的音频/视频流。这种功能可预先设置并且可以使用。所有这些功能都是有代价的。与其它产品不同,Mac OS X服务器是一种商业性产品。虽然Darwin是免费的,但是,OS X服务器内置的设置和管理工具使Darwin比其它的BSD选择更容易使用。总之,在评估Linux以外的基于Unix的操作系统的时候,所有这些BSD变体都是不相上下的。本文介绍了四种应用最广泛的BSD操作系统,在下一篇文章里,我们将介绍其它一些拥有自己独特优势的BSD变体。 相关关键字: BSD 盘点 操作系统Free BSD,Linux之比较 1. Linux 优点: 充分发挥 PC 的功能,花样极多,玩起来很有趣,各方面的表现都不错。 缺点: 太过自由,以致於发散掉了,维护方面比 FreeBSD 麻烦(对一般人来说)。 - 适合喜欢玩 PC,更甚於玩 UNIX(Network)的人。 2. FreeBSD 优点: 非常 UNIX、非常 Free、非常 BSD - UNIX 的理想归宿! 缺点: 太过 UNIX,以致於玩下去很难收手 ; - 适合喜欢 UNIX,有心好好经营 service 的人;也是 programmer 的理想 OS。 FreeBSD Core Team 并不是刻意忽略入门的方便性,只是人力有限,把主力投注在UNIX 风味的主题上。 FreeBSD 对硬体的需求实在也不会太严刻,对刚接触的人,建议使用最一般化的硬体,像是: IDE (BigFoot)、ne2000 compatible 杂牌卡,S3Trito64,最烂的14寸VGA,(atapi-cdrom)。 想说明的是,希望对 FreeBSD 有兴趣的人,别买些太高档(或者说奇怪:p)的硬体,到时候装不起来就骂 FreeBSD 怎麽这麽烂 ; 可以想一下,到底想试试自己的PC能跑多少东西,还是真的有心进入 UNIX 的世界 :-) = 为什麽要选择 FreeBSD ?! = 嗯.现在有许多免费的 i386 UNIX (在 386 以上 PC 执行的 UNIX),例如Linux、NetBSD、FreeBSD、OpenBSD、386BSD 等,究竟你要如何选择属於你的UNIX ? 玩了三年多的 UNIX (一年半 Linux,两个月 NetBSD,两年 FreeBSD) 笔者只能以非正式的说法说说笔者的个人意见,希望这些意见不要引起争论各个作业系统优缺点的大战。 Linux 是容易上手而且好玩的作业系统,也是现今最多人玩的,正因为它太好装了,只要硬体没问题闭著眼睛都装的起来,因此如果你是 i386 UNIX 的新手,这可说是你入门的最佳试金石。 NetBSD 支援 13 种硬体架构,这也是它的强处,算是 multi-platform 的典范。 也因此,i386 在里面只算是 13 种中的一种,自然无法取得全力的发展,再加上其 core team 比较不活跃,所以在i386 上的硬体支援并不是很好。 OpenBSD 源自 NetBSD,刚出来半年左右,专门把 NetBSD 跟 FreeBSD 的新功能跟修正加在一起,算是 NetBSD+FreeBSD 的混血儿,由於其 core team 人数少,加上程式码很少是自己开发的,因此现在前景还不明朗。 FreeBSD 跟 NetBSD 一样都是基於 4.4 BSD-lite,但是 FreeBSD 现在只支援 i386,所以在 PC 上来说要比 NetBSD/OpenBSD 好太多了,在从前NetBSD 跟 FreeBSD 的 core team 是一起的,後来分家了。FreeBSD 具有一般 BSD 系统的稳定,又从其他作业系统学习了许多优点,再加上自己开发的各种新功能,时时改进演算法以增加执行效率,现在已是免费 BSD 系列中效率最好的,最主要是因为core team 活跃又乐於接受使用者的意见并改进。 * 什麽是 core team ? core team 是一个专门对原始程式码做发展跟维护的组织,Linux 没有 core team,NetBSD/OpenBSD/FreeBSD 有。有 core team 的优点是原始程式码会有一致性,会有组织的被更新,但是整个 OS 的活力也操在core team 的手中,这就是 NetBSD 在笔者眼中无法兴盛的原因。而没有core team(如 Linux),好处是全世界每个人都可以发表自己的修正(patch) 不须经由 core team 的审核,但缺点是 source code 杂乱无章且可能会不同步。所以 Linux 在更新东东的时候,必须由使用者自己注意 kernel、gcc、library、net-tool、modules、甚至各种 kernel patch 版本的一致性。(或许在 RetHat Linux 已经稍微好一点了)而这些可怜的情形在 FreeBSD 身上都不会发生。 * 要选择怎样的 OS 必须看你自己的需求及能力,还有周遭玩的人多不多,多装几种,多装几次,自己感觉一下才是真的 ! (其实只要不怕 format 硬碟,吃饱撑著,装什麽东西、装几次都好说嘛) 1. 稳定性 一个作业系统最重要的就是稳定性,比方说能连续开机多久,能忍受多少系统负荷,网路不稳时会不会当掉,网路负荷太大时网路会不会死掉,笔者个人觉得 FreeBSD Linux。 尤其许多研究已经提出,Linux 在高系统负荷下的表现相当不好,而FreeBSD 却不会。 要知道世界上最大的 ftp site - 是一台跑著FreeBSD 的 Pentium pro 机器 (P6-150,512MB RAM,72GB HDs online more than 1200 ftp users allowed) 注 : = 2. 网路 争夺封包(packet)的速度,除了网路卡好坏之外,最重要的还是作业系统跟驱动程式,使用一样的网路卡 FreeBSD Linux DOS+NCSA. 而且FreeBSD 在 RPC 及 NFS 上都比 Linux 来的稳定及快速。毕竟 BSD 在网路这方面是始祖. 3. 移植软体的难易程度 现今一般的软体大多是为 BSD 写的,所以一般软体在 BSD 上会比在SYSV 上容易编译。而 FreeBSD 是 4.4BSD based,Linux 是 SYSV 加上 BSD-extension,所以在 Linux 上编译东西有时是个梦靥 (不是很SYSV 也不是很 Posix 也不是很 BSD)。不过现在越来越多的软体会注意到 Linux,因为 Linux 使用者太多了。 FreeBSD 有收集数百种软体的 ports,只要打个 make 就可以轻松编译,不然也有编译好的 binary 可以直接安装使用。 4. 硬体支援 Linux 支援最多种的硬体,NetBSD 最少,而 FreeBSD 夹在中间正急起直追中,而且许多 FreeBSD 的 driver 都写的相当棒,反而後来被移植到 NetBSD 跟 Linux。 5. Merged VM/buffer cache Linux 的磁碟 I/O 速度是一流的,因为一来 Linux 的 ext2fs 是async-mount 的,写入资料时不须一直更新 meta-data,最主要还是Linux 会把目前没用到的记忆体尽量拿来做 I/O buffer。一般传统BSD(如 SunOS,NetBSD)都只有固定大小的 buffer,而 FreeBSD 自己发展出类似 Linux 的 Merged VM/buffer cache,大大提高了 I/O 时的效率以及记忆体利用率,而且现在 FreeBSD 已支援 async-mount,使得 FreeBSD 的档案系统已经跟 Linux 不相上下,甚至更胜一筹。 6. tty 限制 现在 Linux 要用超过 64 个 tty 除了必须更改应用程式的原始程式码,还必须做 kernel patch,而 FreeBSD 内定支援 ttypqrsPQRS0-9a-v总共 256 个 tty,只要到 /dev 下用 MAKEDEV 把 tty 建出来,在/etc/ttys 加入新的 tty 设定,再到 kernel config file 中把 pty的数目打入 256 就好了,要使用超过 256 tty 也相当容易修改。 7. 完整原始程式码取得 一般人使用的 Slackware 版 Linux 是由 Slackware 公司整理,所以一般人要取得完整原始程式码必须自己东抓西抓,这也是 Linux 在NCTUCCCA 的 mirror 量这麽大的缘故。但往往 Linux 使用者找不到自己须要的原始程式码,如果没有那些整理 Linux packages 的公司,以及帮忙 Linux 发展系统工具及函式库的人,Linux 充其量算是只有Linus 写的 kernel 而已,不过最大的问题还是各家写出来的东东一致性的问题。不过新出来的 RedHat 已经提供一个简单的软体同步与更新的方法 - RPM,也算是稍微抒解这一类问题的严重性。 而 FreeBSD 提供完整的系统原始程式码, /bin /sbin /usr/bin /usr/sbin /usr/lib . 甚至 /etc /usr/share/FAQ 都在里面,让你可以很容易的更改自己想要的东东,要更新系统时也可以抓取最新的 source 打个 make world 就成了 (当然也可以用 core team 做好的 binary),它甚至会自动检查各目录的权限是否正确。简单一句,就是非常的有组织! 利用 binary 来升级只要不到一小时就可以完成,甚至有写好的 script 可以使用。 8. 目录档案组织化 FreeBSD 根据 4.4BSD 规范,什麽档案应该在那里,应该是什麽权限,编译时应该连结(link)成 static 或 dynamic,都非常的严谨,该有的 manpages 绝对不会少。不像 Linux,写 kernel 一个人、写 library 另一个,写 manpages 又另一个、整理 utility 又另一个,各自为政不同步,常常档案到处乱放或是重覆,manpages 不完整,许多目录档案为了新旧版本的相容性而 link 来 link 去。 9. 系统安全 FreeBSD 使用 shadow password,支援 secure NFS,不像 Linux 要自己安装 shadow password,将来编译 ftpd,sudo 时又得改来改去。因为USA 版的 DES 禁止输出到美加以外地区,FreeBSD 为了全世界广大的使用者,在密码系统上内定使用 MD5 编码,它比 DES 来的安全,如果你不跟 SunOS 类的 YP server 跑 NIS,那你是不须要安装 DES 的。如果你要使用 DES,你可以安装可以自由流动的 DES 版本 (非 USA 版),在/usr/share/FAQ/Text/FreeBSD.FAQ 中有提及那里可以取得,或是到台湾任何一个 FTP 站取得。 此外,FreeBSD 的使用者登入控制,以及档案安全层级保护都比其他作业系统来的好 (kernel secure level)。 FreeBSD 的 core team 会注意 source code 跟 security 的同步性,一有新的问题或 sendmail 漏洞,就会立刻更新程式码,已达到最佳的系统安全。 8. core team 活跃 FreeBSD 的 core team 非常活跃而且谦虚,带动整个 FreeBSD 迅速发展,每天都有新的 patch 出来,让使用者以 sup/ctm 来定时自动更新原始程式码。 9. 4.4BSD-lite based 由於 FreeBSD 是基於 4.4BSD-lite 的,因此带来了许多 BSD 的好处,像网路速度稳定、容易移植软体、安全快速等。 10. 从 Linux 而来的优点 FreeBSD 正在把 Linux 的 dosemu 移植过来,甚至可以直接执行 linux 的 binary (linux emulator),还有移植 Linux 支援的一些驱动程式。 11. 支援 LKM FreeBSD 支援 Loadable kernel module,也就是说许多驱动程式在编译 kernel 时可以不必做进去,一旦你要用到时,kernel 会自动 /lkm/*.o 载入该 driver,这样可以提高弹性并减小 kernel 使用的记忆体空间。未来 FreeBSD 会朝向 LKM device 迈进,就像 Solaris一样不需编译 kernel。 :) 12. 直接执行 gzip 的程式 FreeBSD 可以直接执行 gzip 的程式,如果你把所有的执行档都 gzip 起来,不就等於用 stacker/doublespace 一样了 ?! :) 13. 线上监控 kernel 支援 tty snoop,可以监控线上使用者 (不像 linux 那个半调子ttysnoop,会导致许多问题)。 14. 众多档案系统 支援 MFS (Memory File System),类似 SunOS tmpfs 的东东,还有许多 4.4BSD 定义的档案系统,如 LFS、NULLFS、PORTALFS、UMAPFS、UNIONFS。 15. Interleaved swap 当你有一个以上的 swap 装置时,会同时使用以增加速度 (尤其是使用SCSI 装置时),而不是像 Linux 一个接著一个使用。 16. 新的 slice 观念 新的 slice 观念使得 FreeBSD 对其他 OS 的 partition 相容性比传统的 BSD 好很多,在安装上也较为容易。 17. Binary 相容性 FreeBSD 可以执行 NetBSD-static,BSDI-static,Linux-a.out/elf,SCO-static 等等的 binary code,增加不少相容性。 18. ccd (软体 RAID) Concatenated disk (ccd) 驱动程式能让你拥有 Strip、Mirror,甚至Parity 等 RAID card 才有的功能。 19. 多国语言的支援 FreeBSD 的 localization 是所有免费作业系统中做的最好的,甚至已经有了亚洲语系(中文、日文)的安装介面。 20. 有组织的原始程式码 FreeBSD 的程式开发者在撰写程式码的时候,会去参考各种 RFC 规范以及新的理论文献,因此 FreeBSD 的程式码有条不紊、层次鲜明;反观 Linux常常为了急就章而走捷径写出来的东西,到最後开发新功能时又必须改来改去。 不过随著时间的发展,Linux、*BSD 都会进步,对於免费的作业系统能越来越好自然是乐见其成的。 一般而言,如果你须要一台稳定快速的 Internet Server,FreeBSD 是你绝对的选择;如果你是个人使用或只是想学习 UNIX,Linux 跟 FreeBSD 都是很好的试金石。 Linux 浮上台面已经四年了,而 FreeBSD 以短短的两年时间就拥有了众多的使用者人口 (尤其是伺服器,以及程式开发者),高手的选择必有他的道理。 用过 FreeBSD 才知道,PC 不只是很便宜的工作站 :) 但是,Linux 的优点是好玩,而且随著 kernel 日渐更新,很多东西也越来越稳定。我们系上从两年前开始就用 Linux 当 mail, acounts, ftp, gopher, terminal, ppp, slip, BBS servers, 最近又加入 WWW server,服务几百位师生。 目前系上已经有好几台 Linux PC 一起运作,其中包含 NFS,与 WinNT,Win95的连线与资源共享(by SAMBA packages),我们也在测试用其中一台摹拟 Novell Server. 我们的同时上线人数一般不会超过 100 人,用 Linux 来应付绰绰有馀。如果你想开的是一次几百人上线的 BBS 大站,那可能 FreeBSD 会比较适合。不过话说回来,能开这种大站的单位都很有钱,大都拿 SUN 或其他 workstation 级的来 run。 Linux 另一个优点是全球的 Linux users 远超过 FreeBSD,这使得 Linux 上面新的软体跟硬体 drivers 更新数目及速度远超过 FreeBSD。例如,DOSEMU 可以摹拟 DOS,WINE 可以摹拟 Windows 3.1,smbfs 可以将 Win95 或 WinNT 上的partition 拿来用:这些在 FreeBSD 上面都还在发展中,甚至没有。新电脑硬体 drivers 的更新也是如此,几乎任何新的硬体都会有 Linux 迷很快地帮大家写好 drivers。你如果用过 FreeBSD 跟 Linux,你就会发现 FreeBSD 目前对硬体要求仍然比较严格(其实是还没有人写 drivers)。我用的 scanner,还有 voice modem,都已经有 Linux 迷写好程式,让我可以在 Linux 上scan 以及有语音信箱。 我个人的建议是,如果你是个人使用,或者网路同时上线人数不超过一百人以上,Linux 的确是好玩又实用,而且新的硬体很快地几乎都可以在 Linux 上使用。如果你要架的是几百人上站的机器,又没钱买 workstation,那 FreeBSD 在网路壅塞时的 performance 的确不错。如果是个人要玩,我并不建议FreeBSD,那会使你觉得提不起兴致(纯属个人观点)。 在 csie gopher 中有关 Linux 与 FreeBSD 的比较中,有一项是 FreeBSD 上software porting 比较 easy。但是这个 comment 随著 Linux users 群日渐庞大,我觉得已经有些改变:现在在 Linux 很多东西根本用不著 porting,因为很多软体根本就是 Linux fans 专门为 Linux 设计写出来的,反而要用这些东西需要额外费心去修改以便能在 FreeBSD 上使用。DOSEMU,smbfs 即是其中几个例子。据最近的 newsgroups,FreeBSD core team 有五十多人,但是 Linuxfans 散布在全球各地的 programmers 其数量根本无法计算。有心的话,比较一下 Linux 跟 FreeBSD announce newsgroups 就可知一二。 所以,我并不是很赞同一个 UNIX 的新手去玩 FreeBSD。但是,假如有人已经玩过 Linux ,或者在其他工作站级机器有过简单管理经验,那他们会发现FreeBSD 极易入手。玩过 FreeBSD 的人一定知道光要新增 partitions 就已经是一件麻烦的事。堂堂一个 FreeBSD 的 fdisk 介面连 M$DOS 的都不如,可见 FreeBSD core team 之目标不在一般连 ls, cp, tar 都不懂的 newbie。 另外一个动机是假如你必须要架一台超稳定的 Internet server,那 FreeBSD 是目前的 best choice。 其实呢,如果有心要玩,大可弄个大点的硬碟,同时装上两个系统,一定可以如鱼得水。我的 office 中同时有一台 FreeBSD,一台 Linux,各做各的事,也是很快乐。 就目前使用者能观察到的来看, 一般相信 linux 的data-path-consumed process 的执行速度, 是众多x86 作业系统中最快的; 而 high load 下的网路则令人不能感到非常满意. 虽然 linux 第二版後网路部分有了很大的改善, 据 Linus 本人的说法, linux 在传 single package 已比 FreeBSD 还优胜, 但作为 NFS 或 high load netserver 还是显得略有不顺(所谓 不顺 与 不稳 无关). 毕竟, 考查 linux 的发展历史, 的确是先在 x86-embededscheduler, fs, 等核心process 执行部分, 最後才加进网路部分, process 执行最佳而网路稍逊乃是合理的结果. 一般建议如果机器用来执行程式 (如跑 project) 为主, 跑各式怪模怪样的小程式及 server, 或有非正统硬体者使用 linux 可能较佳.BSD东山再起-BSD的种类和人们将使用的BSDBSD东山再起-BSD的种类和人们将使用的BSD 转贴地址: /josh.h/article_5.htm 作者: Greg Lehey 邮件: Greg Lehey著 copyright (c) 1999 Last modified: Thursday, January 28, 1999 doomsday 译 copyright (c) 1999 最后更新:一九九九年四月二十五日星期日 译者注:嘻嘻,我是个 BSD 盲,下面这篇是我看过的第一篇有关 BSD 的文章,所以可能会有不少错误,请不要随便转载,让我出丑哦。而且我以前从来没看过中文UNIX的书,所以很多词的译法可能有错。如果你发现了错误,请给我来信,我会把它们改过来,直到我删掉了这段话的时候,这篇文章才算真正翻译完成了。我翻译的目的主要是我想学学有关BSD的知识,所以一边看就一边翻乐,所以文章可以随便使用,不过中文版权照理说应该是我的吧?ok? _ 摘要:现在大家的焦点都集中在 Linux 上,可是另外一种可以免费获得的操作系统又怎么样了呢?在这篇对BSD家族的综述中,Greg Lehey回顾了不同BSD项目的历史,描述了他们的特征,并且对你为什么将会在你的 SUN 计算机上运行 BSD 或者你甚至会在 BSD 与 Linux 中决定选择 BSD 作了一番考量。(3,000字) 经历了很长时间以后,人们最终开始接受了基于 System V 上的 Solaris 系统,它取代了 SunOS 4。尽管六年是一段很长的时间,但是如果 Sun 当初继续维护 SunOS 4 ,那也许会花费更长的一段时间。人们为什么会对旧系统如此忠诚呢?毕竟它们都是属于 Unix 家族呀。 我绝不是想在这里重新点燃 SunOS 与 Solaris 的争论,但是我想让大家注意下 SunOS 4 与 SunOS 5 的最大一点区别,今天的 Solaris 操作系统的组件:SunOS 4 是基于4.2 BSD 的,这是由加州大学 Berkeley 分校开发的 Unix 版本,也是第一个支持 TCP/IP 的操作系统。相反,SunOS 5 (通常称为 Solaris ,虽然这种称呼不太准确),是基于AT&T 的 Unix System V.4 的。 BSD 和 System V 的显著差异使得就算是在 SunOS 4 死亡 六年以后,它仍然拥有大量的支持者。它不能在现代硬件上运行实在是太可惜了。 当 SunOS 4 不能在现代硬件上运行的时候,其它种类的 BSD 却可以。此外,它们还是免费的。最近的对 Linux 的宣传似乎有意?嬖谧牌渌拿夥巡僮飨低车氖率怠缭?991年,在Linux 计划尚未付诸实施之时,Berkeley 人就在准备发布运行于 Intel 平台上的免费的 4.3 BSD 了。另外,Berkeley 软件设计公司(BSDI)也在写一个商用的版本。但是 Unix 系统实验室(USL)对 BSDI 的起诉,说他们非法使用了 AT&T 的源码,使得这些努力受到了严重的阻碍。 这件案子在1994年得到解决。解决办法中只有一项条款为公众所知:BSDI 请求将它的 codebase 移至 4.4 BSD Lite,这是 Berkeley 的计算机科学研究小组解散前发布的最后一个 BSD 系列的版本。AT&T 认可这个版本不包含它的源码。就这样,免费 BSD 项目也移至 4.4 BSD-Lite 的基础上。 现代的 BSD 大家停止使用 SunOS 4 的一个主要原因是因为它过时了,特别是它不支持现代的硬件。那么 4.4 BSD 的家族成员呢?它们各自拥有各自的重点: BSD/OS BSD/OS 是 BSDI 的产品。尽管曾尝试将它引入 SPARC 结构,但是它目前只能在 Intel 上运行。看起来BSDI已经认定 SPARC 的版本已经越来越不值得做了。作为唯一一种商业销售的BSD产品,它提供优良的售后服务。 FreeBSD FreeBSD 是目前最流行的 BSD 产品。与其它成员相比,它更注重用户安装和使用的方便。它原来只是面向 Intel 平台,但是最近又发布了 Compaq/DEC Alpha 结构的版本。其它项目包括 UltraSPARC 的版本,不过这个版本还没有显著进展。 NetBSD NetBSD 从一开始发展方向就不一样,它希望能支持尽可能多的硬件平台。在写本文的时候,它支持几乎任何你能想到的平台,包括从 Sun 3 开始的所有 Sun 的硬件,虽然有些是有限的支持。比如,写本文的时候,UltraSPARC 版本尚不支持基于 PCI 的主板或多处理器,不过它在不久的将来就很可能支持这些硬件了。 OpenBSD OpenBSD 在 1995 年由 NetBSD 分化而来。它比其它成员更多重视安全方面,它支持多种平台,但比 NetBSD 要少一些。例如,现在它还没有 UltraSPARC 版本。 为什么有这么多版本? 看下这些操作系统的目录,你也许会问,为什么有这么多相似的操作系统。难道有一个不就够了吗? 历史上,每个项目的建立都是由于在组建一个好的操作系统时产生了意见分歧。因为这个软件是免费的,任何人都可以决定根据自己的需要建立自己的操作系统。如果它行不通,人们可以到此为止。实际上,所有现在的 BSD 成员,包括 BSDI,都来源于 Bill Jolitz 的 386 BSD 项目,它到 1994 年时就逐渐被淡忘了。 表面上看来,分化瓦解不是一种好的趋势,为什么不能敢于行动,大家相互妥协呢?实际中,BSD 系统表现出了很明显的自治趋向:所有成员中只有 386 BSD 关门大吉,而它的后代都很健康并且积极地相互借鉴。每个版本都有一个不同的内核就意味著适者生存同样适用于内核代码,而对 Linux 来说,这只适用于用户代码。例如,年轻的 FreeBSD SPARC 版本并非白手起家:它始于 NetBSD 的实现并且直接提出以下的问题:我们在哪些地方可以做得更好?这个过程自然提高了要成功所必需的标准。结果是,许多这样的尝试失败了,而那些没有创造世界级代码的却成功了。 当选择一个 BSD 版本的时候,你应该首先考虑平台。很多情况下,平台将决定所选择的操作系统。象在所有 BSD 都支持的 PC 平台上,作出选择也许更难,但是实际上没有一种选择是绝对错误的。 它们的感觉如何? BSD 成员间最大的区别和系统本身无关,而在于你使用它的方式。现在所有工作站都使用某种形式的图形界面(GUI)。所有的 BSD 都包括 XFree86,这是一种 X11 实现,Linux 中也有提供。一方面,这个界面有很强的统一性:仅从屏幕上看过去,很难讲系统运行的是 BSD、Linux 或甚至是

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论