用FreeBSD吧。它是一种运行在Intel平台上、可以自由使用的Unix系统,它可以从Intern
et上免费获得。而它又具备极其优异的性能,使它得到了计算机研究人员和网络专业人士
的认可。因此,不但专业科研人员把它用作个人使用的Unix工作站,很多企业,特别是IS
P(Internet服务提供商)都使用运行FreeBSD的高档P C服务器来为他们的众多用户提供网
络服务。
FreeBSD并不是唯一的免费 “Unix” 操作系统,也不是最流行的Unix系统,这个荣誉
属于Linux。这主要由于Linux出现得早两年,那时BSD的源代码还受AT&T许可权的限制,不
能自由获得,而I ntel的32位处理器386的普及已经使Internet上诸多Unix爱好者对PC平台
上的免费Unix系统提出了需求,Linux应时而生。近来在Netscape等商业公司的倡导下,L
inux得到众多商业公司的支持,无形中成为了反Microsfot联盟的一杆旗帜,声势更为浩大
。
Linux是由芬兰人Linus Torvalds编写的Unix兼容系统。由Linus Torvalds 负责核心
开发和维护,其他组织和商业公司负责将Linux的核心和应用程序组织在一起发布,由于大
部分程序为GNU软件,因此更严格的说Linux应该被称为GNU/Linux。当前流行的Linux版本
有slackware 3.6 ,Debian 2.0,RedHat 5.1等。
Linux和FreeBSD同为英特尔平台上的Unix操作系统,因此有很多相似之处。几乎所有
的自由软件都同时支持Linux和FreeBSD,因此在应用方面他们也很相似。但Linux和FreeB
SD也有相当大的不同之处,可以说各具特色。
从历史渊源上讲,FreeBSD继承了BSD Unix的代码,因此代码相当成熟和稳定。而Lin
ux是一个全新的系统,是遵循POSIX规范开发的一个独立操作系统,但又提供了与BSD Uni
x或Unix System V的兼容性。因此Linux完全没有受到1992年的AT&T诉讼的影响,结果成为
了最流行的自由操作系统。虽然今天那次法律纠纷已经解决,4.4BSD Lite的代码可以自由
获得,但FreeBSD的使用者仍要少于Lin ux的使用者,FreeBSD的使用者多数为网络和计算
机专业人士,普及程度较低。
出于这个历史渊源的原因,FreeBSD是一个完整的系统,从系统核心到系统提供的程序
均来自BSD Uni x,部分GNU软件是用于代替BSD Unix中的一些老版本软件。而Linux仅仅只
是一个操作系统的内核,其应用程序大部分为GNU软件,然后由不同的组织或个人将这些G
NU软件与Linux内核整合在一起的。因此就存在多个不同的Linux版本,而且不同的Linux版
本使用不同的组合方式,因此各种Linux版本之间有很大的差异,并且可以预计这些版本会
随着发展进一步增大彼此的差异。而FreeBSD的版本比较整齐清晰,只有一个FreeBSD版本
。
通常FreeBSD更关心稳定性,而Linux具备的各种新特性更多。由于Linux得到了更多的
商业公司支持,因而Linux下的商业软件也更多。但是这些商业软件均可以通过FreeBSD对
Linux执行文件的支持,也能够运行在FreeBSD上。这个不同主要是由于Linux和FreeBSD的
开发过程的差异造成。
虽然FreeBSD和Linux的开发过程都是非常开放的方式,每个开发者独立进行自己的工
作,通过Inte rnet来互相交流。任何对系统开发有兴趣的人都能贡献新的想法,并组建一
个开发队伍或加入现有开发队伍将自己的想法实现。但是FreeBSD与Linux开发方式的不同
是,FreeBSD有一个开发者组成的核心小组(FreeBSD core team)对整个FreeBSD负责。任
何人都可以利用FreeBSD提出自己的开发计划,但只有Free BSD核心小组认为这个计划对整
个FreeBSD发展有益,这个计划才能列入FreeBSD计划本身。所有的Free BSD开发者共享同
一个源代码树,使用并发版本维护工具CVS进行维护。有了FreeBSD核心小组从整体上规划
Fr eeBSD,并邀请其他开发者加入核心小组,因此FreeBSD显的更简洁和干净,版本发展也
比较稳定。而Linux 仅由Linus对内核进行维护,任何人都可以组织自己的计划,贡献自己
的代码,没有一个统一的源代码树,只是在最后由 Linus进行整合和发布正式内核。由于
没有严格的控制,并且Linux的开发者很多,因此Linux中虽然有更多的新特性,却显得略
为杂乱,并且有些新特性的代码没有经过时间验证,可能存在有问题。
一个新功能没有进入FreeBSD正式版本的原因很多,有的是由于这个功能不够成熟,有
的是由于核心小组认为这个特性意义不大,还有的是因为正式内核已经有类似功能,或者
由于专利或版权问题(例如,该软件的作者不打算让该软件成为自由软件),使得十分成
熟的功能也不能被列入正式发行的版本。
由于Linux和FreeBSD互为竞争对手,在Internet上关于Linux和FreeBSD的争论很多,
然而这种争论一般不会得到什么明显的结果。事实上他们都能完成各种应用需求,但各有
自己的侧重点,至于那种系统最适合自己,需要根据具体情况而定,使用者的个人喜好也
是影响选择的一个重要因素。一般FreeBSD的使用者也曾经(或同时)是Linux的使用者,
然而有Linux的使用经验对学习和使用FreeBSD也有不少帮助。只有竞争才能促进发展,Li
nux和FreeBSD不但是竞争的关系,也是相互学习的关系,只有如此各自才能不断发展。
在个人的使用经验中,FreeBSD仅有过一次崩溃,并且这种崩溃不是随机出现的,其原
因是使用了所有优化选项来编译内核,编译器某项优化造成了内核的BUG,结果就在执行某
项操作时就被触发。在降低了优化级别之后,问题就消失了。因此这个问题应归结为编译
器的问题而非内核的问题。在Linux中,问题更为严重一些,过于求新求功能的多样性,使
得系统崩溃更频繁,并且很多系统崩溃无法找到原因。
注意:系统崩溃和系统死锁不同,一些情况下一些应用软件死锁会造成键盘或显示没
有响应,然而仍然可以通过网络或其他终端设备登录进系统杀死死锁进程。例如在FreeBS
D下执行Linux的X Server时,进行切换虚拟控制台的操作就会导致键盘死锁。
当前Linux的一个发展热点是各个商业公司的参与,这的确丰富了Linux下的软件。然
而另一方面,商业公司也试图把专有设计引入Linux,将原有开放的环境变为商品化的环境
,以便从中牟利。当前不同版本的Linux之间的差异已经相当大了,很多人已经意识到了L
inux面临的分裂危险,可以想象以后某个版本的Linux会与其他版本存在兼容性问题。而F
reeBSD有统一的源代码树,不存在分裂的问题。