FreeBSD漫谈
软件世界
现在,Linux作为自由软件的代表,以其强大的功能,成为了IT界的一道靓丽的风景线。说到Linux,几乎是无人不晓,然而,如果问到FreeBSD,知道的人就很少了。其实,FreeBSD也是自由软件中的一个出色的代表,只不过因为种种原因,自它出生的那天起,就被笼罩在Linux炫目的光环里,不为大多数的人所知。FreeBSD几乎拥有Linux所有的优点,也有着自己鲜明的特点。下面,就让我们一起揭开它的面纱,一起走进FreeBSD的天地吧。
什么是FreeBSD?
自从1969年AT&T Bell实验室研究人员创造了Unix之后,Unix就不断发展,逐渐成为了主流操作系统。Unix在长期的发展过程中形成了多种不同的版本,拥有了强大的生命力。FreeBSD正是Unix众多分支中相当优秀的一支,所以虽然FreeBSD 1.0诞生于1993年12月,但它的发展历史却相当悠久,是著名的BSD Unix的一个继承者。
FreeBSD是基于University of California at Berkeley的Computer Systems Research Group(CSRG)小组所发展的BSD 4.4-lite而来的,并且继续BSD系统的发展。由于先前CSRG将4.4-lite发展得很好,FreeBSD专案继续投入无数的时间致力于使FreeBSD达到更高的水准以及更好的效率,以符合实际应用上的需求。正当许多商业版的操作系统正努力使 PC 上的操作系统具有新功能、高效能及实际应用性的时候,FreeBSD 已经具有这些功能了!
FreeBSD的特色
FreeBSD主要特点是它的高性能和高可靠性,除了FreeBSD,Unix本身已经是一个非常成熟的操作系统,FreeBSD开发小组也基于实际工作任务,花费了相当多的时间进行系统调试,以取得最好性能和最高可靠性。它的性能和可靠性并不逊于任何商用Unix系统,甚至更为优秀。此外,FreeBSD更提供许多昂贵工作站才有的先进功能,其特色如下:
1.具有动态优先权的多任务(Preemptive multitasking)以确保平稳执行程序以及使应用程序和用户共享资源。
2.多用户(Multiuser)代表着许多人可以同时在系统上操作,而系统的硬件周边也可以让所有的使用者合理地进行分享。
3.FreeBSD继承了Unix的优点,完整的TCP/IP支持,拥有强大的网络功能,包含 SLIP、PPP、NFS、SAMBA、NAT等功能,这表示FreeBSD可以容易地跟其他操作系统通过网络合作,或是作为企业局域网中的服务器,例如:提供远端档案共享(NFS)及电子邮件(E-mail)等服务,或是让企业连上互联网并提供WWW、FTP、路由(routing)及防火墙(firewall,security)等服务。
4.内存保护(Memory protection)能确保每个程序互不干扰,不致产生冲突或造成系统不稳的情况。
5.FreeBSD是一个标准的纯32位操作系统,因为它没有Microsoft Windows要兼容于DOS的问题。标准的X视窗系统(X Window,X11R6)提供良好的图形使用者接口(GUI)以便在一般的VGA显示卡以及屏幕上使用,并且提供完整的源代码,可以直接执行在其他操作系统(如SCO,BSDI,NetBSD,Linux跟386BSD)上编译出来的程序。
6.方便的Ports & Package软件收集,有上千种以上可以直接执行(ready-to-run)的应用程序,你不用因为找不到软件而困惑。
7.在内存管理方面,需要时才置换的虚拟内存(Demand paged virtual memory)以及合并虚拟内存及文件缓冲区的快取功能(merged VM/buffer cache)提供了令人满意又有效率的应用程序执行速度,尤其是执行那些大型的应用软件时仍能让使用者轻松控制而不至于停摆。
8.动态共享函示库(Shared liparies,类似Windows上的动态链接库)可提供有效的利用硬盘空间及内存。
9.完全兼容的C、C++跟Fortran开发工具及环境,让许多额外的程序语言也收集在服务包中。
10.也提供了大量且详尽的网络帮助文件。
FreeBSD的应用
FreeBSD的主要应用范围在网络服务器方面,当然并不局限于此。具体怎样使用FreeBSD完全在于用户,因为FreeBSD能够满足各种不同的需要。
应用于Internet也是FreeBSD使用最广的领域之一,因为Internet的前身,APPRNET的开发者,正是使用BSD Unix来实现的TCP/IP协议。因此FreeBSD具有最成熟、最稳定的TCP/IP实现,非常适合用作FTP服务器,WWW服务器,电子邮件服务器,域名服务器,USENET新闻服务器以及电子公告牌系统等网络服务器系统。此外,FreeBSD也能将廉价的个人计算机改变为软件路由器,防火墙设备。在其他方面,FreeBSD 的应用也超乎你的想像,从软件开发到工厂自动化,从货物管理到卫星的远端遥控……
由于FreeBSD的源程序是公开的,任何人均可以自行取得并修改以符合个人的需求,而这是那些商业版操作系统所做不到的。以下提供一些使用FreeBSD的例子(当然还有更多的应用):
1.网络服务
FreeBSD 内建强劲的网络功能使它成为众多网络服务的理想平台,如:
文档服务器(FTP Servers)
万维网服务器(World Wide Web Servers)
Gopher服务器(Gopher Servers)
电子邮件服务器(Electronic Mail Servers)
网络新闻服务器(USENET News)
BBS服务器(Bulletin Board Systems)
还有其他更多的功能……
FreeBSD和Linux一样,对硬件的要求很低,在386上也可以运行,这样的话,就可以先用便宜的386PC来运行 FreeBSD,然后等规模变大了以后再升级机器。
2.学术上的应用
如果你是IT领域的学生,再也没有比使用 FreeBSD 能学到更多操作系统、电脑组织及网络的方法了。一些免费的CAD,数学运算器及图形处理工具对于那些在电脑应用上有兴趣的人,能帮他们学到更多。
3.研究
因为有完整的源程序代码,FreeBSD是研究操作系统及电脑科学的极佳环境。免费的 FreeBSD也使得在远端的合作小组不必担心版权及系统开放性的问题,而能自由地进行交流。
4.网络
你如果需要路由器(router)、域名服务器(DNS)或安全的防火墙(Firewall),FreeBSD同样可以轻易将386或486级别的PC实现,甚至具有过滤封包(packet-filter)的功能。
5.X Window工作站
FreeBSD是X终端机的良好解决方案,无论是免费的XFree86或是商业版的X-Inside,都可以在FreeBSD上执行。FreeBSD不但可以充当远端X程序终端机,也可以执行本地的X程序。如果有一台中央服务器的话,FreeBSD甚至可以经由网络开机,从而成为便宜且易于管理的工作站。
6.开发软件
FreeBSD拥有完整的程序开发工具,如GNU C/C++编译器,还支持其他的程序语言,如:PHP,Perl,JAVA等。
在熟悉了FreeBSD之后,就不会有人怀疑这个系统的性能了,因为这已经被Internet上无数使用FreeBSD作服务器的实例所证明过的。FreeBSD是Internet上非常流行的一种网络操作系统,应用实例很多。包括Internet上具有传奇色彩的成功网站的典范──Yahoo,包括国内的163.net等免费邮件系统,都是FreeBSD的成功应用范例。
FreeBSD 的版本命名原则
FreeBSD的命名原则为:ex. A.B.C-VERSION,其中的含义如下:
A:表示主要的(Major)操作系统版本。
B:表示次要的(Minor)操作系统版本。
C:表示略微修正(Patch)版本。
VERSION用于表示版本类别,其区别如下:
RELEASE:正式发行版本。
ALPHA,BETA,GAMMA:测试版本。
CURRENT:以发展新功能为主的版本。
STABLE:以维护系统稳定与安全为主的版本。
SNAP:非正式发行版本,通常是指CURRENT的测试版。
RELENG:非正式发行版本,通常是指STABLE的测试版。
对于FreeBSD用户,需要根据情况选择使用不同的版本。对于正式使用,应该选择STABLE版本,而对于进行学习、研究、开发FreeBSD,可以考虑使用CURRENT版本。