前言
日前于台北召开的2000年世界资讯科技大会(WCIT)上,除了网路及资讯家电等热门话题广受瞩目外,就属两位重量级人物─微软总裁比尔盖兹及RedHat执行长罗伯杨─互相放话针锋相对的情况最令人印象深刻,这似乎可以反映目前作业系统市场─Windows与Linux─之间的战况激烈。的确,微软目前面对到美国司法部要求分割的判决,以及其他作业系统(尤其是Linux)虎视眈眈等诸多不利因素下似乎面临空前的危机。
当然,目前微软的Windows系列作业系统不论在桌上型电脑或伺服器市场占有率仍是最高。根据IDC报导,在1999年伺服器市场,NT约占38%,Linux约占25%,UNIX为15%,如(图一)。不过若与1998年比较,当时Linux只有16%的市场,如(图二),在短短一年内Linux市占率骤升将近10%。不过在桌上型电脑方面,Windows(3.x/95/98/NT)仍占将近九成左右的市场,稳居龙头地位,Linux仅有4%,Mac OS为5%,如(图三),可见目前一般大众对于Linux的印象仍是以做为中小企业的网际网路伺服器为主,而Linux要取代微软成为一般桌上型使用者的作业系统仍有一段路要走。
《图一 1999年伺服端OS市场占有率【Source:IDC】》 |
|
《图二 1998年伺服端OS市场占有率【Source:IDC】》 |
|
《图三 1999年客户端OS市场占有率【Source:IDC】》 |
|
Linux的崛起
Linux为何崛起?或者说︰为何许多电脑玩家会喜爱Linux?笔者认为「讨厌微软」或许可列为众多因素之一。当然并不是每个人都讨厌微软,不过当您发现您的电脑软体几乎全部都被微软的产品所垄断,对于产品不满却又没有其他选择时,您只能依靠微软出下一代的产品来升级,或者等待Service Pack的推出(又要花了一笔钱!),就算您是电脑高手,在不知道微软软体原始码的情况下也英雄无用武之地。于是,当类似Unix系统的Linux打着开放原始码的旗帜起义时,随着网际网路无远弗届的影响力,Linux的势力便如野火燎原之势一发不可收拾了。
当然,Linux会受到电脑族的喜爱不仅此象征性的意义,它还包括︰1.IT人员可以自订修改您的Linux,透过开放性的设定档及原始码,可以为您的电脑量身订做所需的Linux环境,并将之最佳化而不占用系统资源,比所谓全方位的Windows NT更来得可靠。 2.Linux系统也比Windows NT 4.0稳定得多。 3.在价格上,Linux是免费的作业系统,不像Windows NT动辄上万元。以下笔者试图将Linux与Windows NT分类比较之︰
比较Linux与Windows NT
作业系统安装及启动
在早期,安装Linux的繁复程序对新手而言门槛过高,所以往往令人望之却步。经过如RedHat、Caldera、Corel等发展Linux厂商的努力下,透过诸如图形化的安装精灵、自动侦测系统环境与周边硬体配备,以及选择安装版本等简易的安装环境,已可让Linux的新手感觉安装Linux如同Windows 98一样方便。附带一提,Linux还可以选择透过网路来安装(NFS)。
Windows NT当然也承袭了以往微软产品安装容易的特性,安装及升级的便利性是无庸置疑的。不过,Linux提供了功能强大的lilo(Linux Loader)开机管理程式,支援多种作业系统开机。相对来说,Windows NT支援的档案系统较少,多重开机支援性亦较差。
支援硬体及多国语言
在支援硬体方面,Linux支援的硬体相对较少,因此太新的硬体(如显示卡、音效卡、网路卡等)往往不支援,而且一般硬体厂商也不会特别花费成本撰写Linux的驱动程式(但一定会有Windows的驱动程式)。虽然目前Linux安装过程已经相当简单,但遇到不支援的硬体时,笔者也往往耗费相当多的时间寻求解答。随着Linux核心程式不断推出新版本,以及支援的硬体厂商逐渐增加,相信在短期内应可解决此问题。不过就目前而言,Linux在USB、DVD、数位相机等硬体支援上仍未得到解决。
Windows 2000对于硬体支援系采取数位认证的方式,问题是市面上很多硬体尚未得到数位签章,所以在安装硬体时,有时会发生原来在Windows NT所支援的硬体在Windows 2000里却发生相容性问题的情形。
在支援语言方面,也是Linux较弱的部分。微软在中文化方面则做得相当彻底,虽然目前在CLE(Chinese Linux Extensions, 中文延伸安装套件)的努力下让我们可以在Linux下阅读、输入及列印中文,但是中文化后的Linux稳定性及效能会比较差,而且许多的说明与技术文件都还是英文(因为来不及翻译!),诸如此类均造成使用者的不便,不过我们仍要感谢这些义务开发中文化的成员们的努力(注一) 。
稳定性
做为一个伺服器,稳定性相当重要。 Linux承袭Unix稳定性的优点,由于核心程式与其他应用程式使用不同的记忆体区块,所以当应用程式发生问题时并不会与核心程式互相影响而造成当机。 Windows NT虽然是微软重新架构的新产品,较Windows 95/98稳定许多,但为了要向下相容,仍造成当机次数高的缺点,尤其是著名的「蓝幕之死」(Blue Screen Of Death),更是恶名昭彰。笔者常听到使用Windows NT的系统管理者抱怨,当网路流量一大时便容易当机,而且开机了相当时日之后,效能会越来越差等,因为如此,他们便逐渐倾向将其伺服器转移至Linux平台。 Linux所架设的主机相当稳定,一天24小时,一年365天不关机不当机的公司比比皆是。
Windows 2000在稳定性则有明显提升,采用改良的作业系统核心架构,改进的记忆体管理,让不可预期的当机机率大幅减少。另外也支援双节点的丛集支援服务,增加系统可用性。目前Linux上的丛集技术亦逐渐成熟,例如︰Turbolinux公司便提出了丛集解决方案,IBM更利用上百台Linux丛集PC电脑组成效能与一部超级电脑相当、却只须1/10价钱的系统。
系统管理与设定
Linux的系统设定强大且具弹性,并提供相当多的工具给使用者来做设定,如︰编译器、perl、sed、awk、shell script等,而且完全免费。系统设定档放在软体的相关目录下,由于其内容是由纯文字所组成,系统管理者可以轻易了解其设定内容并加以修改,并可以利用perl、shell script等工具帮助系统管理者做进阶管理。另外,使用者介面可以根据系统管理者的喜好来选择,初学者可以使用图形使用者介面(GUI),资深管理者可以选择命令列(Command Line)模式。同时您还可以做远端连线管理(Telnet),或者选择Web介面的Webmin来做远端管理,让您不论身在何处都能遥控管理您的机器。
Windows NT则提供了设定容易的图形使用者介面,不需要透过下Command的方式来管理,所以使得一般系统管理者管理起来更便利,且功能多。一般使用者对于Linux的一堆文字设定档必定相当头痛,需要在不同路径找不同的设定档,而Windows NT的优点则是其设定资讯皆放在同一个位置。但Windows NT并无类似远端管理的工具,而且系统调整后设定档的位置常常不知道在何处,且解读困难,通常这些设定值并无注解般有脉络可循。
系统效能
Linux的系统需求低,386等级的电脑便可以架起一台Linux伺服器,当然,如果您需要X-Window环境的话,便需要较高等级的电脑(如Pemtium)及更多的记忆体。笔者的朋友就将家里已废弃的数台486电脑架设成伺服器,而且运作得相当好。
相对于Linux,Windows NT的硬体及系统资源需求便较高。最新的Windows 2000 Advanced Server可以支援到8颗CPU及8GB的记忆体,而目前Linux可支援4颗CPU及4GB的实体记忆体。就过去的比较(ZD Labs所测试,请见http://www.zdnet.com)看来,使用Linux 2.2 + Apache Web Server与Windows NT 4.0 + IIS,以及档案伺服器(Linux + Samba VS Windows)做网路效能比较,Linux的效能皆比Windows NT 4.0来得好,最佳情况时Linux比Windows NT效能高出50%。不过笔者最近在linuxfab.cx看到一篇文章,述及Windows 2000 + IIS5与Linux + Apache比较起来,便互有千秋,有些测试项目IIS5效能比Apache还好。
相容性
由于Linux是从Unix所衍生出来的作业系统,故对于Unix的相容性相当高,许多档案可直接在不同Unix/Linux平台上相互执行。且支援的档案系统相当多,可读取包括DOS、Windows 95/98/NT等档案系统,并可以透过模拟器(VMware及WINE)执行Windows的软体。此外,透过Samba网路芳邻软体与Windows的Netbios协定互通,Linux可成为Windows Clinet端的档案伺服器或是网域的帐号管理者。相对来说,Windows在档案系统支援贫乏,只认得自家的档案系统(DOS、FAT16/32、NTFS),除不能执行Unix/Linux之程式外,读取也有问题。目前便有需多企业使用Linux+Samba来作档案伺服器、帐号管理及提供列印服务。
安全性及技术支援
采用开放原始码的Linux,其安全性就会比Windows NT来得差吗?许多人认为Windows的原始码没人拿得到,所以比较安全,而开放原始码的Linux便比较不安全。事实上,Linux将原始码公开出来,网路上数以万计的骇客及工程师一旦发现有任何漏洞,往往在数小时之内便会公布解决方式并提供修正程式。例如︰去年6月初Linux Kernel 2.2被DoS(Denial of Service, 拒绝存取服务)攻击的Bug,在5小时之内便马上获得解决。由于微软的程式码并不公开,所以当系统预设了后门程式时吾人无从查起,在这样的一个情况下,您觉得哪一种才是真正的安全呢?
技术支援方面,Linux在网路上已有许多专家志愿回答许多问题,而且有许多HOWTO文件可供参考,笔者在学习Linux时大部分均直接透过网路来找寻技术文件。目前CLDP(Linux中文文件计画)便有提供中文的HOWTO文件,以及各大BBS的Linux讨论区等(注二)。此外,企业如果要提供专业的服务,目前国内也有越来越多的厂商提供Linux的技术支援及教育训练,且收费合理,毕竟,Linux本身已经是免费的了,且没有使用者上限,这样的成本实在是非常划算。微软在技术支援的体系可说是十分完整,国内大部分的技术支援厂商也大多数属微软体系,不过收费来说可就不便宜了,而且有许多未公开的技术文件,使得无法做更深入的技术支援,只好等微软原厂的改良,但是通常要等很久。
成本
成本应该是Linux最大的优势。 Linux的软体几乎都是免费的,而且不需有所谓的授权费(License),没有使用人数上限,而且使用PC又比一般Unix机器便宜,可以达到不错的效能等。至于Windows NT便需要为每台机器买一个License,连线人数亦受到控制。
结语
Linux若是与Windows NT 4.0比较起来,其表现的确是相当突出,但Windows NT易于使用、有相当多优秀的应用程式支援,以及与Client端Windows 95/98的整合,使得Windows NT的市场占有率仍旧相当稳定。我们可以由图一、图二发现,Linux之所以成长,几乎是吃掉了NetWare与Unix的市场空间。目前电脑大厂相继推出Linux应用程式(如︰IBM、Oracle、HP、CA等),相信不用多久,Linux将会吸引更多的企业采用。
Windows 2000的确是一个非常优秀的新世纪作业系统,采用了许多新的观念(如︰Active Directory Service),系统效能及稳定性均比Windows NT 4.0好得多,支援更多新的硬体规格(如︰DVD、USB、IEEE 1394、热插拔等),所以,Linux如欲更上一层楼,提升硬体支援便成为所要努力的方向。最后,藉由(表一),各位不妨评估一下两者在您心目中孰优孰劣。
《表一 LINUX2.2与Windows NT4.0功能比较》 |
|
(作者任职于翔威国际Linux专业技术小组)
注一︰编者按,请参阅http://cle.linux.org.tw/
注二︰编者按,请参阅http://www.phys.ntu.edu.tw/~cwhuang/pub/os/linux/CLDP/