windows与linux的优点与缺点?
最近有关操作系统的讨论无论在法庭上还是在网上都是越来越热烈了。这种热烈气氛的出现自然是与操作系统巨头Microsoft脱不了干系的。法律界为是否该裁定并惩罚Microsoft在操作系统上的非法垄断行为而头疼,软件业界为如何抵御Microsoft君临天下的庞大攻势而失眠,而被Microsoft日益苛刻的版权限制惹恼了的个人和公司电脑用户也在思考是否还应该对Microsoft从一而终。借着这股热潮本人也来就桌面操作系统(DesktopOperatingSystem)领域中的Windows和Linux议论几句。网上对Windows和Linux的讨论不少,从这些讨论中我发现有一些人是明确地属于Linux阵营的,所谓属于Linux阵营,我指的是他们对Linux的支持已经近乎本能,就象宗教信徒笃信上帝一样。另一方面,虽然也有人替Windows说话,但似乎没有一个群体可以归类为Windows阵营,也就是说Windows的使用者虽众,但支持烈度却不如Linux。这也不奇怪,Linux的发展本身就是热忱的Linux支持者们共同努力的结果,所谓“自家的孩子自家爱”。更何况Linux是免费的而Windows不仅价格昂贵,而且近来还发展到了让用户花了钱也买不到所有权的地步。连所有权都没了,主人翁态度自然也就免谈了。尽管缺乏铁杆的Windows支持者说明Microsoft在夺得市场的同时没有能够同步地赢得人心,但是从学术的观点讲,却应该看到在这种情况下替Windows说话的人(Microsoft雇员除外)大都是从纯技术角度出发的,他们的观点往往要比带有感情因素的Linux支持者更冷静和公正。
无论有多少人厌恶Microsoft,任何客观的评论者都必须承认一个基本的事实,那就是纯以技术而言Windows是目前操作系统家族中具有顶尖水平的成员。Microsoft能够在软件界翻云覆雨一手遮天凭借的就是Windows操作系统的实力。市场是无情的,能够装在自己口袋里的银子谁也不会愿意放到Microsoft的保险柜里去。Windows十余年来在市场上的成功,尤其是在四面树敌,人心思变的今天依然雄霸天下而不倒正是其实力的明证。
下面本文就来对Windows和Linux的若干主要方面进行一些评述和比较。
安全性能
安全性能是Windows常常遭受Linux支持者批评嘲笑之处。除了层出不穷的计算机病毒外,号称Windows95以来最重要的版本的WindowsXP问世不过数月就屡屡发现安全漏洞,而且导致联邦调查局向用户发布警告,这无疑加深了Windows不如Linux安全的看法。不过客观的讲,在以下两方面Windows有些冤情可诉:
Windows的每一个漏洞的公开都会引起公众和媒体的广泛注意,这种树大招风的现象大大增加了Windows技术漏洞的可见性(Visibility)。而且Linux作为公开源代码的系统,它的漏洞的发现和修补往往被有意无意地视为是系统开发的一部分,好比是Microsoft在开发Windows期间由内部程序员发现并修补漏洞。由于在很多人眼里Linux永远处于开发状态中,而Windows有明确的推出日期(不然没法赚钱),因此在这一点上Windows处于非常不利的位置。
人们在比较Windows和Linux的技术漏洞时常常实际上是在对Windows和Linux内核(Kernel)作比较,这是不公平的。Windows除内核外还包括用户界面(UI)以及大量的应用软件,大多数Windows技术漏洞其实并不是Windows内核的漏洞。以安全漏洞而言,大多数是属于IIS和IE的,对应于Linux系统中的Apache和Netscape或Konqueror等。较为合理的做法应当是将Windows和LinuxDistribution或者LinuxDistribution中与Windows功能平行的部分进行比较。
尽管有以上这些辩护,尽管Microsoft抱怨说人们对攻击Windows远比对攻击Linux感兴趣(因为更容易成名)才使得Windows频频亮起安全红灯,但我认为现阶段Linux在安全性能上确实要优于Windows。起码以病毒数量和危害性而言,Windows用户所担当的风险就要大得多。只是Windows的安全性也不象有些文章渲染的那样糟糕。
说到了安全性,顺便提一下对于除美国以外的其他国家来说,由于Windows的技术完全被Microsoft所垄断,因此使用Linux还具有国家安全上的优势。这也是近期中国,法国,韩国等国政府在采购操作系统时均作出了有利于Linux的决定的原因之一。
稳定性
稳定性也是Windows常常遭批评的地方,这里必须首先要把Windows的9x系列(包括95/98/Me)和NT系列(包括NT/2000/XP)区分开来。两者在稳定性上有数量级之别。Windows稳定性差的恶名主要是由9x系列而来,自WindowsXP开始Microsoft已经终止了这一系列的开发。其次需要分清的是应用软件的稳定性与操作系统的稳定性。如果一个软件的崩溃不影响操作系统和其它软件的运行,那么这笔帐通常就不应该记在操作系统的稳定性上。如果一个软件的崩溃造成整个操作系统的崩溃(即通常所说的“死机”),那操作系统的稳定性就要受到质疑。
至于最新的WindowsXP与Linux究竟谁更稳定,说实在目前还缺乏足够的数据和可比性,因为两者所运行的软件很不相同。网上虽有一些测试结果,不过这些测试的客观性往往是值得怀疑的,这个有时间我将另文叙述。一般说来,由于Windows上运行的软件通常比较复杂(比如游戏,大型商业软件等),从而有较大的几率暴露操作系统的缺陷。从这点上讲,对WindowsXP和Linux的表观稳定性进行比较并不足以说明两者在运行同等复杂的软件时谁更稳定。另一方面和系统安全性的情行相似,人们说到Linux的稳定性时常常只是指内核的稳定性,而Windows的稳定性却涵盖包括用户界面在内的许多别的部分。出现这样的状况也情有可原,因为Windows和它的用户界面是无法分开的,用户界面死了,对用户来说就相当于操作系统死了,而Linux则不同,用户界面死了常常还可以用热键退出,并重新启动用户界面。这些差别的存在使得稳定性对Windows来说是一个更为困难的目标。软件支持
对软件,尤其是大型商业软件及多媒体软件(包括游戏)的支持一直是Windows的强项,无论是MacOS还是Linux在近期内都很难憾动Windows在这一领域的霸主地位。Windows庞大的应用软件支持是大多数用户即使心怀不满,也不得不继续使用Windows的一个重要原因。Linux所拥有的软件虽然为数也不少,而且有些软件(比如GIMP,StarOffice等)的开发是以Windows下相应的商业软件为竞争对象的,但是在功能上这些软件要真正达到可以替代Windows软件的程度还有相当一段路要走。免费和公开源代码软件是Linux的灵魂,也是很多人喜爱Linux的原因,但是缺乏足够的高质量商业软件的支持已经成为Linux与Windows竞争桌面操作系统市场时的重大障碍。在这方面Linux面临一个两难局面:一个操作系统要吸引商业软件开发者就得要有足够多的用户(尤其是公司用户)。原因很简单,有用户才有利润。但另一方面,一个操作系统要想吸引足够多的用户(尤其是公司用户),就得要有足够多高质量的软件(包括商业软件)。这是一个典型的先有鸡还是先有蛋的问题。从目前的形势发展来看,打破局面的最可能途径是软件公司愿意做前瞻性的开发,从而产生一个良性的推动。
这里需要做一点补充说明:对于相对小型的软件的支持Linux并不逊色,一个完整安装的LinuxDistribution不仅比Windows带有品种远为齐全的软件,而且各常用类型的软件,诸如email,FTP,IRC,浏览器等均有四五种以上可供选择(有时反而让初用者手足无措)。
硬件支持
五年前Linux的安装对于新手来说还是一件望而生畏的事,这其中很大一个原因就是Linux对硬件支持的欠缺,三年前我在笔记本电脑上安装Redhat6.0还被迫到网上自行搜寻config文件。但近几年来Linux在这方面取得了长足的进展,今天,各主要Distribution对硬件的支持度正在迅速接近甚至超过Windows的水平。尽管硬件生产商对Windows驱动文件(driver)的提供仍比对Linux的要普遍,但高手如云的Linux群体已经做到了能几乎同步地提供所有最新硬件驱动文件的程度。另一方面,WindowsXP在硬件支持的普遍性上却出现了较大的倒退(Microsoft或许把这叫做更新)。此消彼长,Linux在硬件支持上的欠缺已经成为历史。
虽然没有明说,但上面谈论的硬件都是针对x86机器的,脱离了这个框架,Linux在硬件的支持上的广泛程度是包括Windows在内的任何其它操作系统都无法比拟的。
说到硬件支持,还有一个需要考虑的方面就是系统配置。每一代的Windows都对系统配置提出了新的要求,WindowsXP苛刻的系统配置要求更是使得几乎所有两三年以上机龄的机器都必须经过相当程度的硬件改良才能安装。而Linux虽然也同样在逐步提高对硬件配置的要求,但由于其优越的模块结构,使得用户有极大的自由度根据自己机器的配置调整自己所需安装的模块,从而突破对硬件配置的要求。
规范性
这里所说的操作系统的规范性有两层含义,一层含义是指操作系统对软件界的各项技术规范的遵循程度。在这方面Linux基本上遵循了所有适用的规范,这和Linux的开发模式不无关系。除内核外Linux没有一个中心仲裁者,因此开发人员大都以软件界已有的技术规范为准则进行系统开发。Windows在这方面的名声则毁誉参半,一方面Microsoft本身是软件界许多规范的制定和倡导者,但另一方面,Microsoft又常常按自己的喜好“修改”规范。由于Windows在桌面操作系统领域拥有压倒多数的用户群体,软件界在相当程度上被迫适应Windows的要求,因而使得Windows的许多非规范的东西成为事实上的规范。
规范性的另一层含义是指操作系统本身的规范性,一个简单的衡量标准就是该操作系统的两个用户之间有多少共同语言。由于Windows是由单一公司开发的,因此在这方面不是由松散联系的开发者为主力的Linux可以比拟的。以用户界面而论,Windows自Windows95以来保持了相当的稳定性,用过其中任何一个版本的用户基本上可以不用额外学习就直接使用另一个版本的Windows界面。而Linux的用户界面不下十种之多,最流行的也有KDE和Gnome两种,明显缺乏规范性。Linux在自身规范性上的欠缺还表现在各主要的Distribution使用不同的目录结构,用不同的格式传播软件,用不同的方式安装软件,等等。凡此种种不仅给新手带来极大的困惑,就是对有经验的用户甚至系统开发人员都是极大的不便。
所幸的是,Linux的不规范性已经引起了越来越多人的重视,一个如同W3C(W3C是制定互联网规范的组织)那样的组织TheFreeStandardsGroup已经成立,它的使命就是制定Linux和其它开放源代码系统的规范。随着这些规范的逐步推广,Linux将会缩小在自身规范性方面与Windows的差距。
这里也需要补充一点:Linux在用户界面方面的不规范性有时候也不失为一个优点。常常听人抱怨说自己花大价钱更新机器的努力很大一部分被操作系统本身所消耗掉了,这其中一个消耗资源的大户就是用户界面。Linux用户在这种情况下就可以使用消耗系统资源较少的用户界面。
总体上讲,在对外部规范的遵循性上,Linux要优于Windows,而在自身的规范性上,Windows要显著优于Linux,而且在近期内这种优势不会丧失。
源代码
Windows的源代码是保密的,而Linux的源代码是开放的。从字面上讲这当然是意味着原则上任何人都可以改进Linux。但是需要指出的是,原则上可以做的事情并非实际上就一定能够或者应当做。Linux源代码的高度的开放性主要是针对系统开发人员的,源代码的开放性使得Linux系统中的缺陷能够很快地被来自世界各地的高手所发现和弥补,这是十余年来Linux发展的关键。但对于普通用户来说,修改自己赖以工作的Linux机器的源代码却是非常不明智的行为。Linux内核多年来经过无数高手的锤炼,一个普通用户能够改进它的几率是微乎其微的(破坏它的可能性倒是很大的)。因此在肯定源代码开放性对操作系统本身乃至整个软件业发展的深远意义的同时也不应该夸大它对普通用户的直接帮助,源代码的开放性并不增加一个普通用户对系统的掌控程度。
Linux源代码的开发性使得各大学的操作系统课程和教材几乎都是以Linux或其他类似的系统为蓝本,因此使得受过正规计算机专业教育的几乎所有学生以及几乎所有对操作系统感兴趣的人都对Linux有相当程度的了解和喜爱。这对于Linux未来的发展有着十分正面的影响。
应用程序界面(API)
一个操作系统的API(ApplicationProgramInterface)是操作系统提供的与应用软件的接口,对于软件开发人员来说十分重要。一般认为Linux的API要比Windows优美。不过由于Windows下有诸如VisualStudio这样的直接支持WindowsAPI的大型工具软件,从而大大降低了Windows编程对于拥有并熟悉这些工具的人员的困难程度。
系统可调节性
Linux具有比Windows大得多的可调节性。许多早期的Windows骨灰级用户在系统可调节性上有一种怀旧感,觉得在DOS和早期Windows时代他们曾经是机器的主人,随着Windows的演化,后来他们只拥有Windows,不再直接拥有机器了(现在他们连Windows也不拥有了)。而Linux却始终如一地保持着系统的高度可调节性。
Linux的源代码的开放性也可以被视为终极意义上的可调节性,但是,前面说了,对于普通用户来说,这种可调节性实际上是几乎不存在的。
另一方面,在各自可调节的范围内,Windows要比Linux易于调节(这在很大程度上得益于Windows界面的规范性)。在早期,Linux的调节往往需要用户直接修改参数文件,即使对于有一定经验的用户,这也是一件令人头疼的事。近年来Linux在这方面做了很大的改进,开发了许多工具软件,不过和Linux下的许多其它类别的软件类似,Linux的工具软件也呈现一种发散性,即有不止一种软件可以做同一件事。这使得用户在转换机器和LinuxDistribution时往往因为不同环境下工具软件的不同而需要学习新的工具或重新安装旧的工具。
使用方便性
使用的方便性是桌面操作系统竞争中最重要的决胜因素之一。这里所说的使用的方便性是针对普通用户的,这一点常常被Linux的支持者所忽视。现阶段在桌面操作系统的用户群体中,Linux用户的平均计算机水平要大大高于Windows用户,这种差异使得Linux群体常常低估了一个缺乏计算机系统知识的普通用户适应Linux的难度。“Windows是傻瓜也能用的”非但不应该被用来嘲笑Windows,反而是Linux在竞争桌面操作系统市场中必须借鉴的经验。计算机二十年来的发展早已超越了专业的界限而成为几乎所有现代人都可能会用到的工具。使用方便性是任何工具所应该追求的品质之一,计算机及其操作系统当然也不例外。试问这世上聪明人的比例能有多少?偏偏把聪明用在计算机上的聪明人比例又能有多少?今天Linux用户群体的平均计算机水平高的一个不可忽视的原因是因为只有水平较高的人才能得心应手地使用Linux,而这一事实,很不幸的却是Linux与Windows竞争时的一大弱点。版权限制和费用
这方面没什么可说的,法庭上的胜负不论,无论对个人还是公司用户来说Windows利用其垄断地位迫使用户接受日益苛刻的版权要求已是不争的事实,可以盖棺定论。使用WindowsXP的用户相信对此尤有切身体会。每张WindowsXP光盘只能安装在一台电脑上,不仅如此,重装操作系统或更换一定数量的硬件都会导致Windows反盗版机制的干预,使得用户必须向Microsoft索要新的序列号(可能还免不了要解释一下自己何以又要给Microsoft“添麻烦”)。花钱买了的软件竟然还要间或地向Microsoft请示汇报,用户心中的不平衡是不言而喻的。至于价格,WindowsXPHome和Pro的价格分别为$199和$299。相比较之下Linux不仅可以免费下载,而且可以安装在任意数目的机器上。对用户具有的亲和力是不言而喻。
可惜的是,对于个人用户来说Linux在价格上的优势在很大程度上被市场上大部分品牌机厂家不提供预装Linux的机器(服务器除外)这一事实所抵销了。由于品牌机厂家在市场上占有很大的份额,因此大部分用户不论用不用Windows,都一样付了Windows的钱。既然钱也付了,操作系统也有了,绝大多数人就不会再去费心做调整。顺便说一下,这也是目前Linux用户群体的计算机水平普遍较高的另一个重要原因,因为对计算机或操作系统感兴趣的人有较大的可能性在并不缺乏操作系统的情况下还去安装一个新的操作系统。
不过对公司用户来说,由于Linux不对用户数量设置限制,与Windows的VolumnLicence相比其费用方面的优势是十分明显的。
说到费用,需要提到另外一个方面就是许多在Windows下要付费的软件在Linux下有功能相近,相同或更好的免费软件。虽然前面说到Windows在对软件的总体支持上优于Linux,但是Windows占优势的那部分软件对大多数普通个人用户来说并不是不可缺少的(也许游戏除外)。不过Linux在这方面的优势也在很大程度上受到一个因素的削弱:那就是许多Linux下优秀的免费软件也有Windows版本。
术支持
这里所说的技术支持是一个比较含糊的概念,既包括由公司提供的技术服务,也包括用户可以自行找寻的信息。在公司提供的技术服务方面,尽管不时可以听到有人抱怨和Microsoft技术服务人员打交道时的不愉快经历,但这显然是和Windows的用户数量有关的。总体上讲Microsoft对用户(尤其是公司用户)提供的技术服务要优于各Linux公司(当然这种服务不是免费的)。在用户可以自行找寻的信息方面,Microsoft有一个规模庞大的KnowledgeBase,Linux则有LinuxDocumentationProject,而且Linux在互联网上的BBS,Forum和Newsgroup等网站中常常可以看到顶尖的Linux开发者的身影,与Windows不同的是,Linux的开放性使得许多Linux高手对Linux的发展具有一种使命感,他们光顾这些网站就是为了了解用户的反映,发现bug并为Linux的发展积累经验。我这么说倒不是暗示Microsoft的人就不会以同样目的光顾Windows网站,不过就我个人的体会来说这方面Linux群体对用户起到的帮助作用要好于Windows群体的相应帮助。
需要说明的是,对公司用户来说,这后一种帮助在公司决策层面上起不到太大的作用。有一句半开玩笑的话很通俗地概括了许多公司(尤其是大公司)在选用软件(包括操作系统)时的态度,那就是“只选择自己可以将之告上法庭的供应商提供的软件”。Linux群体以及许多Linux公司无法在足够长的服务期限内提供规范的,有法律保障的服务是Linux在竞争桌面操作系统的半壁江山-公司用户-时的一大障碍。
结语
写到这里应该收笔了。通常这类文章都要预测一下Windows和Linux在桌面操作系统市场上的前景。前不久,RedhatLinux公司的总裁发表令人意外的评论说Linux无法在桌面操作系统市场上击败Windows。当然,Linux的热心支持者们并不认同这种看法。两方面的意见在网上争论得非常激烈。讲到预测,插上几句离题的话。小时候听说有外国专家预测在中国本土不会找到很多石油,也有外国专家预测唐山在多少年内将难以重建。这些预测都破产了。那时我就想何以外国专家都如此愚蠢,以至于我们做成的每件事情都可以拉上一两个外国专家做反衬?后来看的预测多了渐渐明白了道理:不是外国专家太愚蠢,而是有太多的“专家”了,什么可能性都让专家“预测”到了。我不是专家,不想也不敢贸然在这里作什么预测。Linux在桌面操作系统市场的前景取决于许多因素:比如各主要商业软件公司会在何时,以何种方式参与Linux软件的开发?比如有多少计算机厂家会提供预装Linux的机器?比如全球性的经济低迷会在多大程度上加速公司和个人为节省开支而使用Linux,比如Microsoft是否会在法庭上败诉?如果败诉受到的惩罚方案如何?等等。除此之外,还需要看到用户群体的行为习惯具有极大的惯性。无论Linux如何改进,仍然有很多人说Linux不方便。为什么?除了Linux本身的部分原因外还因为Windows巨大的用户群体已经形成,Windows的一切已经成为了事实上的标准,任何对Windows的偏离都必然要改变用户群体的习惯,这是所有Windows的竞争者不得不背负的沉重包袱。
细致而尽可能准确地分析所有这些因素不是一篇短短(尽管现在已经不太短了)的文章所能胜任的。幸好计算机技术这二十年的发展始终没有让人们久等过,看到这场操作系统大战的阶段性结果相信也不会对我们的耐心形成太大的挑战。
本文的一个假设的情况是Linux和Windows争夺桌面操作系统用户,离开了这个前提,离开了这个评论的角度,关于两个操作系统的比较当然就会有不同的结果。至于Linux是否应该和Windows来争夺污浊的桌面操作系统市场,这是一个不同的话题。有朋友提到Linux过分地向桌面发展会有损其稳定性。Linuxkernel2.4在推出后很长一段时间无法达到令人满意的稳定性使得有人一度在kernel-mailing-list上发出“Linusdoesnotscale”这样的感慨和怀疑。不过我认为,kernel2.4的问题不是因为Linux向桌面发展造成的,kernel2.4的发展最主要的受益者是server而不是桌面用户。我个人的想法是Linux由于其模块结构,是有希望在reliable,stable,scalable的内核和一个能被普通用户接受的GUI两方面同时取得成功的(至少在技术上是可以的,在商业社会模式下是否事实上可以当然谁也没法保证,许多GPL软件已经开始偏离GPL了,这在多大程度上代表一种趋势还有待观察)。
优点是:
1、开放性:linux操作系统遵守GNU规范,代码共享,易于实现系统的裁剪和客制化的开发。
2、多用户:系统资源可以被不同用户以各自的权限访问使用,互不影响。
3、多任务和多线程:不同任务和线程几乎同时并发地处理独立的但却内在关联的一系列事件
4、设备独立性:linux操作系度统把所有外部设备统一当作设备文件来看待,只要安装它们的驱动程序,任何用户都可以像使用普通文件一知样,操纵、使用这些设备,而不必知道它们的具体存在形式。
5、丰富的网络功能:完善的内置网络是Linux的一大特点。
缺点是:
主要来自于硬件方面的支持,还有就是对于普通用户来说,它的操作性没有windows那么方便,实用,一般用户使用起来 不太会操作。
Linux速度比较快,安全性比windows好
但是有很多软件只能在windows里运行
与Linux兼容的软件正在开发中.
Linux适用在网络方面.
2. 什么是Linux?
简单地说, Linux是一套免费使用和自由传播的类 Unix操作系统,它主要用于基
于 Intel x86系列 CPU的计算机上。这个系统是由世界各地的成千上万的程序员
设计和实现的。其目的是建立不受任何商品化软件的版权制约的、全世界都能自
由使用的 Unix兼容产品。 Linux的出现,最早开始于一位名叫 Linus Torvalds
的计算机业余爱好者,当时他是芬兰赫尔辛基大学的学生。他的目的是想设计一
个代替 Minix(是由一位名叫 Andrew Tannebaum的计算机教授编写的一个操作系
统示教程序)的操作系统,这个操作系统可用于 386、 486或奔腾处理器的个人
计算机上,并且具有 Unix操作系统的全部功能,因而开始了 Linux雏形的设计。
Linux以它的高效性和灵活性著称。它能够在 PC计算机上实现全部的 Unix特性,
具有多任务、多用户的能力。 Linux是在 GNU公共许可权限下免费获得的,是一
个符合 POSIX标准的操作系统。 Linux操作系统软件包不仅包括完整的 Linux操
作系统,而且还包括了文本编辑器、高级语言编译器等应用软件。它还包括带有
多个窗口管理器的 X-Windows图形用户界面,如同我们使用 Windows NT一样,允
许我们使用窗口、图标和菜单对系统进行操作。
Linux与其他操作系统有什么区别:
Linux可以与 MS-DOS、 OS/2、 Windows等其他操作系统共存于同一台机器上。它
们均为操作系统,具有一些共性,但是互相之间各有特色,有所区别。
目前运行在 PC机上的操作系统主要有Microsoft的 MS-DOS、 Windows、 Windows
NT、 IBM的 OS/2等。早期的 PC机用户普遍使用 MS-DOS,因为这种操作系统对机
器的硬件配置要求不高,而随着计算机硬件技术的飞速发展,硬件设备价格越来
越低,人们可以相对容易地提高计算机的硬件配置,于是开始使用
Windows、Windows NT等具有图形界面的操作系统。 Linux是新近被人们所关注的
操作系统,它正在逐渐为 PC机的用户所接受。那么, Linux与其他操作系统的主
要区别是什么呢?下面从两个方面加以论述。
首先看一下Linux与 MS- DOS之间的区别。 在同一系统上运行 Linux和 MS-DOS
已很普遍,就发挥处理器功能来说, MS-DOS没有完全实现 x86处理器的功能,而
Linux完全在处理器保护模式下运行,并且开发了处理器的所有特性。 Linux可以
直接访问计算机内的所有可用内存,提供完整的 Unix接口。而 MS-DOS只支持部
分 Unix的接口。
就使用费用而言, Linux和 MS-DOS是两种完全不同的实体。与其他商业操作系统
相比, MS-DOS价格比较便宜,而且在 PC机用户中有很大的占有率,任何其他 PC
机操作系统都很难达到 MS-DOS的普及程度,因为其他操作系统的费用对大多数
PC机用户来说都是一个不小的负担。 Linux是免费的,用户可以从 internet上或
者其他途径获得它的版本,而且可以任意使用,不用考虑费用问题。 就操作系统
的功能来说, MS-DOS是单任务的操作系统,一旦用户运行了一个 MS-DOS的应用
程序,它就独占了系统的资源,用户不可能再同时运行其他应用程序。而 Linux
是多任务的操作系统,用户可以同时运行多个应用程序。 再看一下 Linux与
OS/2、 Windows、 Windows NT之间的区别。
从发展的背景看, Linux与其他操作系统的区别是, Linux是从一个比较成熟的
操作系统发展而来的,而其他操作系统,如 Windows NT等,都是自成体系,无对
应的相依托的操作系统。这一区别使得 Linux的用户能大大地从 Unix团体贡献中
获利。因为 Unix是世界上使用最普遍、发展最成熟的操作系统之一,它是七十年
代中期发展起来的微机和巨型机的多任务系统,虽然有时接口比较混乱,并缺少
相对集中的标准,但还是发展壮大成为了最广泛使用的操作系统之一。无论是
Unix的作者还是 Unix的用户,都认为只有 Unix才是一个真正的操作系统。
3. 首先你需要明白,Linux不是windows,它不是一个由一家商业公司维护的软件
,
只有一个包装。Linux是可以任意包装自由配置的东西。任何一个人,一家公司
都可以按照自己的想法,比如加一点功能,加中文支持,作一个Linux出来。这些
Linux虽然核心部分都一样,但是他们所带的各种软件,缺省的配置都不一样。区
别
是用一种Linux 发布 (不同的Linux我们叫做不同的发布)也许硬件很好配置,
各种软件也好安装,用另外一种也许速度快,再一种也许支持中文比较好。总之
没有白吃的午餐,在windows下想当然的东西在linux下也许需要你熬夜才能得到
。
所以从一开始选择distribution就必须非常小心,否则因为自己刚好随某个杂志
得到一个Linux发布就以为所有的都一样就开始安装,等硬盘数据毁了,
或者网络哭天跄地也配不出来的时候,就晚了。不是开玩笑,我知道windows下
安装驱动程序就是鼠标点几下,可是在Linux下,为了驱动一个网卡,折腾一夜
是不希奇的 -- 当然,我觉得这是值得的。
所以,面对那么多Linux distribution,你应当选择哪个呢?
比较著名的Linux distribution有:
RedHat:最新版本6.2, 7.0beta。由于RedHat公司已经上市,获得了很多
商业的支持,所以它在硬件软件兼容性上很好。实际上它已经是Linux的
工业标准。想象一下如果你是一个比如Oracle这样厂商的老板,你需要为
Linux开发一个版本,而不同的Linux dist需要单独开发维护,为成本考虑你
自然会只认准一个Linux。
Slackware(7.1)。很早就有的Linux,有很多老的忠实用户,但现在越来越不行了
。
SuSe Linux,德国人做的,在欧洲很流行,有一些驱动上的优势。
另外还有Debian,CorelLinux等dist,不一一介绍了。
还有你会看到国内媒体上吹捧的各种“中文Linux”,他们的优势主要是有
中文处理。但是如前一篇文章提到的,想用中文,用windows 2000最好。实际上
我觉得一个老7字班的前辈跟我说的一句话很好:“(对我们来说)在计算机上看
到
中文本身就是一件很古怪的事情”。如果你是抱着学习计算机的目的而来,那么
你不可能避免阅读英文文档。即使是microsoft的文档,有关编程的文档,最新的
也
全是英文。当然,要上BBS,看中文网页等,用英文的dist一样能做到
4. Linux和Windows的区别
和Linux 一样,Windows系列是完全的多任务操作系统。它们支持同样的用户接口
、网络和安全性。但是,Linux和Windows的真正区别在于,Linux 事实上是Unix
的一种版本,而且来自Unix的贡献非常巨大。是什么使得Unix如此重要?不仅在
于对多用户机器来说,Unix是最流行的操作系统,而且在于它是免费软件的基础
。在Internet上,大量免费软件都是针对Unix系统编写的。由于有众多的Unix厂
商,所以Unix也有许多实现方法。没有一个单独的组织负责Unix的分发。现在,
存在一股巨大的力量推动Unix社团以开放系统的形式走向标准化。另一方面Windo
ws系列是专用系统,由开发操作系统的公司控制接口和设计。在这个意义上这种
公司利润很高,因为它对程序设计和用户接口设计建立了严格的标准,和那些开
放系统社团完全不一样。一些组织正在试图完成标准化Unix程序设计接口的任务
。特别要指出的是,Linux完全兼容POSIX.1标准。
安全问题对于IT管理员来说是需要长期关注的。主管们需要一套框架来对操作系
统的安全性进行合理的评估,包括:基本安全、网络安全和协议,应用协议、发
布与操作、确信度、可信计算、开放标准。在本文中,我们将按照这七个类别比
较微软Windows和Linux的安全性。最终的定性结论是:目前为止,Linux提供了相
对于Windows更好的安全性能,只有一个方面例外(确信度)。
无论按照什么标准对Windows和Linux进行评估,都存在一定的问题:每个操作系
统都不止一个版本。微软的操作系统有Windows98、 Windows NT、 Windows 2000
、 Windows 2003 Server和Windows
CE,而Linux的发行版由于内核(基于2.2、2.4、2.6)的不同和软件包的不同也
有较大的差异。我们本文所使用的操作系统,都是目前的技术而不是那些"古老"
的解决方案。
用户需要记住:Linux和Windows在设计上就存在哲学性的区别。Windows操作系统
倾向于将更多的功能集成到操作系统内部,并将程序与内核相结合;而Linux不同
于Windows,它的内核空间与用户空间有明显的界限。根据设计架构的不同,两者
都可以使操作系统更加安全。
Linux和Windows安全性的基本改变
对于用户来说,Linux和Windows的不断更新引发了两者之间的竞争。用户可以有
自己喜欢的系统,同时也在关注竞争的发展。微软的主动性似乎更高一些――这
是由于业界"冷嘲热讽"的"激励"与Linux的不断发展。微软将在下几个月对Window
s安全进行改观,届时微软会发布Windows XP的WindowsXP Service Pack 2。这一
服务包增强了Windows的安全性,关闭了原先默认开放的许多服务,也提供了新的
补丁管理工具,例如:为了避免受到过多无用的信息,警告服务和信使服务都被
关闭。大多数情况下,关闭这些特性对于增强系统安全性是有好处的,不过很难
在安全性与软件的功能性、灵活性之间作出折衷。
最显著的表现是:微软更加关注改进可用性的同时增强系统的安全性。比如:200
3年许多针对微软的漏洞攻击程序都使用可执行文件作为电子邮件的附件(例如My
Doom)。Service Pack2包括一个附件执行服务,为Outlook/Exchange、 Windows
Messenger和Internet Explorer提供了统一的环境。这样就能降低用户运行可执
行文件时感染病毒或者蠕虫的威胁性。另外,禁止数据页的可执行性也会限制潜
在的缓冲区溢出的威胁。不过,微软在WindowsXP Service Pack
2中并没有修改Windows有问题的架构以及安全传输的部分,而是将这部分重担交
给了用户。
微软的重点显然是支持应用程序的安全性。WindowsXP Service Pack 2中增强的
许多方面都是以Outlook/Exchange和Internet
Explorer作为对象的。例如:Internet Explorer中有一个智能的MIME类型检查,
会对目标的内容类型进行检查,用户可以获悉该内容中是否存在潜在的有害程序
。不过这一软件是不是能将病毒与同事的电子数据表区分开来呢?
WindowsXP Service Pack 2的另一个新特性是能够卸载浏览器的多余插件,这需
要终端用户检查并判断需要卸载哪些插件。Outlook/Exchange可以预览电子邮件
消息,因此用户可以在打开之前就将电子邮件删除。另一个应用安全的增强,防
火墙在网络协议栈之前启动。对于软件开发者来说,远方过程调用中权限的改变
,使得安全性差的代码难以工作正常。
WindowsXP Service Pack 2也为Windows用户提供了许多华丽的新特性,但是问题
仍然存在:这些特性会不会对管理员甚至是终端用户造成负担?是不是在增加了W
indows操作系统代码安全性的同时让系统变得更加复杂?
Linux 与 Windows 的不同
虽然有一些类似之处,但Windows和Linux的工作方式还是存在一些根本的区别。
这些区别只有在您对两者都很熟悉以后才能体会到,但它们却是 Linux 思想的核
心。
Linux 的应用目标是网络而不是打印
Windows最初出现的时候,这个世界还是一个纸张的世界。Windows的伟大成就之
一在于您的工作成果可以方便地看到并打印出来。这样一个开端影响了 Windows
的后期发展。
同样,Linux 也受到了其起源的影响。Linux 的设计定位于网络操作系统。它的
设计灵感来自于 Unix 操作系统,因此它的命令的设计比较简单,或者说是比较
简洁。由于纯文本可以非常好地跨网络工作,所以 Linux 配置文件和数据都以文
本为基础。
对那些熟悉图形环境的人来说,Linux服务器初看可能比较原始。但是Linux开发
更多关注的是它的内在功能而不是表面上的东西。即使是在纯文本的环境中,Lin
ux同样拥有非常先进的网络、脚本和安全能力。执行一些任务所需的某些表面上
看起来比较奇怪的步骤是令人费解的,除非您认识到 Linux 是期望在网络上与其
他 Linux系统协同执行这些任务。Linux的自动执行能力也很强,只需要设计批处
理文件就可以让系统自动完成非常详细的任务。Linux 的这种能力来自于其基于
文本的本质。
可选的 GUI
Linux有图形组件。Linux支持高端的图形适配器和显示器,完全胜任图形相关的
工作。现在,许多数字效果艺术家在Linux工作站上来进行他们的设计工作,而以
前这些工作需要使用IRIX系统来完成。但是,图形环境并没有集成到 Linux 中,
而是运行于系统之上的单独一层。这意味着您可以只运行 GUI,或者在需要时才
运行 GUI。如果您的系统主要任务是提供Web应用,那么您可以停掉图形界面,而
将其所用的内存和CPU资源用于您的服务。如果您需要在 GUI 环境下做一些工作
,可以再打开它,工作完成后再将其关闭。
Linux 有图形化的管理工具,以及日常办公的工具,比如电子邮件、网络浏览器
和文档处理工具等。不过,在 Linux 中,图形化的管理工具通常是控制台 (命令
行) 工具的扩展。也就是说,用图形化工具能完成的所有工作,用控制台命令同
样可以完成。同样,使用图形化工具并不妨碍您对配置文件进行手工修改。其实
际意义可能并不是特别显而易见,但是,如果在图形化管理工具中所做的任何工
作都可以以命令行的方式完成,这就表示那些工作也可以由一个脚本来实现。脚
本化的命令可以成为自动执行的任务。Linux 同时支持这两种方式,并不要求您
只用文本或者只用 GUI。您可以根据您的需要选择最好的方法。
Linux 中的配置文件是人类可读的文本文件,这与过去的 Windows 中的 INI 文
件类似,但与 Windows 的注册表机制在思路上有本质的区别。每一个应用程序都
有其自己的配置文件,而且通常不与其他的配置文件放在一起。不过,大部分的
配置文件都存放于一个目录树 (/etc) 下的单个地方,所以看起来它们在逻辑上
是在一起。文本文件的配置方式使得不通过特殊的系统工具就可以完成配置文件
的备份、检查和编辑工作。
文件名扩展
Linux不使用文件名扩展来识别文件的类型。相反,Linux根据文件的头内容来识
别其类型。为了提高人类可读性您仍可以使用文件名扩展,但这对 Linux 系统来
说没有任何作用。不过,有一些应用程序,比如 Web 服务器,可能使用命名约定
来识别文件类型,但这只是特定的应用程序的要求而不是 Linux 系统本身的要求
。
Linux通过文件访问权限来判断文件是否为可执行文件。任何一个文件都可以赋予
可执行权限,这样程序和脚本的创建者或管理员可以将它们识别为可执行文件。
这样做有利于安全。保存到系统上的可执行的文件不能自动执行,这样就可以防
止许多脚本病毒。
重新引导是最后的手段
如果您使用Windows已经很长时间了,您可能已经习惯出于各种原因(从软件安装
到纠正服务故障)而重新引导系统。在Linux思想中您的这一习惯需要改变。Linu
x在本质上更遵循“牛顿运动定律”。一旦开始运行,它将保持运行状态,直到受
到外来因素的影响,比如硬件的故障。实际上,Linux系统的设计使得应用程序不
会导致内核的崩溃,因此不必经常重新引导(与Windows系统的设计相对而言)。
所以除了Linux内核之外,其他软件的安装、启动、停止和重新配置都不用重新引
导系统。
如果您确实重新引导了 Linux 系统,问题很可能得不到解决,而且还会使问题更
加恶化。学习并掌握 Linux 服务和运行级别是成功解决问题的关键。学习 Linux
最困难的就是克服重新引导系统的习惯。
另外,您可以远程地完成Linux中的很多工作。只要有一些基本的网络服务在运行
,您就可以进入到那个系统。而且,如果系统中一个特定的服务出现了问题,您
可以在进行故障诊断的同时让其他服务继续运行。当您在一个系统上同时运行多
个服务的时候,这种管理方式非常重要。
命令区分大小写
所有的 Linux 命令和选项都区分大小写。例如, -R 与 -r 不同,会去做不同的
事情。控制台命令几乎都是小写的。我们将在“ 第 2 部分. 控制台速成班”中
对命令进行更详细的介绍。
1,处理机管理:linux是真正的多用户操作系统,windows(楼主说的windows是哪一个?2003?XP?还是NT?)一般来讲,其实不是真正的多用户。在Linux系统中,提高处理机使用率的技术措施主要是多道和分时,处理机在进程之间切换,按照一定的规则轮流执行每个进程。对于单个处理机的系统,这些进程宏观上看似并行执行,而微观上来看仍然是串行执行的,这种执行方式被称为并发执行。操作系统通过并发控制机制,对处理机进行分配、调度,在保证每个进程都得到公平合理执行的同时,使系统中的各种资源得到充分的使用。不过我们得明白一点,linux其实不是完整的操作系统,只是内核。还需要shell等来组成一个可操作的系统。
2,设备管理:在linux上,一切设备都文件。大多数Linux资源都能以文件的方式来访问。无论哪种文件类型,Linux的文件抽象---也就是说,它习惯于将几乎所有的东西按文件对待---能够让你使用相同的接口打开、关闭、读取和写入不同的文件。在Linux系统中,所有设备都作为一类特别文件对待,用户像使用普通文件那样对设备进行操作,从而实现设备无关性。但是,设备文件除了存放在文件I节点中的信息外,它们不包含任何数据。系统利用它们来标识各个设备驱动器,核心使用它们与硬件设备通信。有两类特别设备文件,它们对应不同类型的设备驱动器:
字符设备 最常用的设备类型,允许I/O传送任意大小的数据,取决于设备本身的容量。使用这种接口的设备包括终端、打印机及鼠标。
块设备 这类设备利用核心缓冲区的自动缓存机制,缓冲区进行I/O传送总是以1KB为单位。使用这种接口的设备包括硬盘、软盘和RAM盘。
3,文件管理:linux的文件系统毋庸置疑具备更高的效率。我的linux安装好后,就没有整理过磁盘。因为linux的ext3等文件系统本身就具备更高的执行效率甚至可以自我整理。另外linux还支持NFS网络文件系统,方便实现网络上不同操作系统的高效读写。
在Linux系统中,除根目录(root)以外,所有文件和目录都包含在相应的目录文件中。Linux文件系统采用带链接的树形目录结构,即只有一个根目录(通常用“/”表示),其中含有下级子目录或文件的信息;子目录中又可含有更下级的子目录或者文件的信息。这样一层一层地延伸下去,构成一棵倒置的树。这个和win有点像。
4,进程管理:Linux用分时管理方法使所有的任务共同分享系统资源。主要有交互进程,批处理进程,监控进程等不同作用的进程类型,并且具备多中启动方式。linux具备win不具有的特点,任务抢占机制,在一些应用程序出现问题的时候可以快速的被系统取代。这都是win不具备的。
最近有关操作系统的讨论无论在法庭上还是在网上都是越来越热烈了。这种热烈气氛的出现自然是与操作系统巨头Microsoft脱不了干系的。法律界为是否该裁定并惩罚Microsoft在操作系统上的非法垄断行为而头疼,软件业界为如何抵御Microsoft君临天下的庞大攻势而失眠,而被Microsoft日益苛刻的版权限制惹恼了的个人和公司电脑用户也在思考是否还应该对Microsoft从一而终。借着这股热潮本人也来就桌面操作系统(DesktopOperatingSystem)领域中的Windows和Linux议论几句。网上对Windows和Linux的讨论不少,从这些讨论中我发现有一些人是明确地属于Linux阵营的,所谓属于Linux阵营,我指的是他们对Linux的支持已经近乎本能,就象宗教信徒笃信上帝一样。另一方面,虽然也有人替Windows说话,但似乎没有一个群体可以归类为Windows阵营,也就是说Windows的使用者虽众,但支持烈度却不如Linux。这也不奇怪,Linux的发展本身就是热忱的Linux支持者们共同努力的结果,所谓“自家的孩子自家爱”。更何况Linux是免费的而Windows不仅价格昂贵,而且近来还发展到了让用户花了钱也买不到所有权的地步。连所有权都没了,主人翁态度自然也就免谈了。尽管缺乏铁杆的Windows支持者说明Microsoft在夺得市场的同时没有能够同步地赢得人心,但是从学术的观点讲,却应该看到在这种情况下替Windows说话的人(Microsoft雇员除外)大都是从纯技术角度出发的,他们的观点往往要比带有感情因素的Linux支持者更冷静和公正。
无论有多少人厌恶Microsoft,任何客观的评论者都必须承认一个基本的事实,那就是纯以技术而言Windows是目前操作系统家族中具有顶尖水平的成员。Microsoft能够在软件界翻云覆雨一手遮天凭借的就是Windows操作系统的实力。市场是无情的,能够装在自己口袋里的银子谁也不会愿意放到Microsoft的保险柜里去。Windows十余年来在市场上的成功,尤其是在四面树敌,人心思变的今天依然雄霸天下而不倒正是其实力的明证。
下面本文就来对Windows和Linux的若干主要方面进行一些评述和比较。
安全性能
安全性能是Windows常常遭受Linux支持者批评嘲笑之处。除了层出不穷的计算机病毒外,号称Windows95以来最重要的版本的WindowsXP问世不过数月就屡屡发现安全漏洞,而且导致联邦调查局向用户发布警告,这无疑加深了Windows不如Linux安全的看法。不过客观的讲,在以下两方面Windows有些冤情可诉:
Windows的每一个漏洞的公开都会引起公众和媒体的广泛注意,这种树大招风的现象大大增加了Windows技术漏洞的可见性(Visibility)。而且Linux作为公开源代码的系统,它的漏洞的发现和修补往往被有意无意地视为是系统开发的一部分,好比是Microsoft在开发Windows期间由内部程序员发现并修补漏洞。由于在很多人眼里Linux永远处于开发状态中,而Windows有明确的推出日期(不然没法赚钱),因此在这一点上Windows处于非常不利的位置。
人们在比较Windows和Linux的技术漏洞时常常实际上是在对Windows和Linux内核(Kernel)作比较,这是不公平的。Windows除内核外还包括用户界面(UI)以及大量的应用软件,大多数Windows技术漏洞其实并不是Windows内核的漏洞。以安全漏洞而言,大多数是属于IIS和IE的,对应于Linux系统中的Apache和Netscape或Konqueror等。较为合理的做法应当是将Windows和LinuxDistribution或者LinuxDistribution中与Windows功能平行的部分进行比较。
尽管有以上这些辩护,尽管Microsoft抱怨说人们对攻击Windows远比对攻击Linux感兴趣(因为更容易成名)才使得Windows频频亮起安全红灯,但我认为现阶段Linux在安全性能上确实要优于Windows。起码以病毒数量和危害性而言,Windows用户所担当的风险就要大得多。只是Windows的安全性也不象有些文章渲染的那样糟糕。
说到了安全性,顺便提一下对于除美国以外的其他国家来说,由于Windows的技术完全被Microsoft所垄断,因此使用Linux还具有国家安全上的优势。这也是近期中国,法国,韩国等国政府在采购操作系统时均作出了有利于Linux的决定的原因之一。
稳定性
稳定性也是Windows常常遭批评的地方,这里必须首先要把Windows的9x系列(包括95/98/Me)和NT系列(包括NT/2000/XP)区分开来。两者在稳定性上有数量级之别。Windows稳定性差的恶名主要是由9x系列而来,自WindowsXP开始Microsoft已经终止了这一系列的开发。其次需要分清的是应用软件的稳定性与操作系统的稳定性。如果一个软件的崩溃不影响操作系统和其它软件的运行,那么这笔帐通常就不应该记在操作系统的稳定性上。如果一个软件的崩溃造成整个操作系统的崩溃(即通常所说的“死机”),那操作系统的稳定性就要受到质疑。
至于最新的WindowsXP与Linux究竟谁更稳定,说实在目前还缺乏足够的数据和可比性,因为两者所运行的软件很不相同。网上虽有一些测试结果,不过这些测试的客观性往往是值得怀疑的,这个有时间我将另文叙述。一般说来,由于Windows上运行的软件通常比较复杂(比如游戏,大型商业软件等),从而有较大的几率暴露操作系统的缺陷。从这点上讲,对WindowsXP和Linux的表观稳定性进行比较并不足以说明两者在运行同等复杂的软件时谁更稳定。另一方面和系统安全性的情行相似,人们说到Linux的稳定性时常常只是指内核的稳定性,而Windows的稳定性却涵盖包括用户界面在内的许多别的部分。出现这样的状况也情有可原,因为Windows和它的用户界面是无法分开的,用户界面死了,对用户来说就相当于操作系统死了,而Linux则不同,用户界面死了常常还可以用热键退出,并重新启动用户界面。这些差别的存在使得稳定性对Windows来说是一个更为困难的目标。软件支持
对软件,尤其是大型商业软件及多媒体软件(包括游戏)的支持一直是Windows的强项,无论是MacOS还是Linux在近期内都很难憾动Windows在这一领域的霸主地位。Windows庞大的应用软件支持是大多数用户即使心怀不满,也不得不继续使用Windows的一个重要原因。Linux所拥有的软件虽然为数也不少,而且有些软件(比如GIMP,StarOffice等)的开发是以Windows下相应的商业软件为竞争对象的,但是在功能上这些软件要真正达到可以替代Windows软件的程度还有相当一段路要走。免费和公开源代码软件是Linux的灵魂,也是很多人喜爱Linux的原因,但是缺乏足够的高质量商业软件的支持已经成为Linux与Windows竞争桌面操作系统市场时的重大障碍。在这方面Linux面临一个两难局面:一个操作系统要吸引商业软件开发者就得要有足够多的用户(尤其是公司用户)。原因很简单,有用户才有利润。但另一方面,一个操作系统要想吸引足够多的用户(尤其是公司用户),就得要有足够多高质量的软件(包括商业软件)。这是一个典型的先有鸡还是先有蛋的问题。从目前的形势发展来看,打破局面的最可能途径是软件公司愿意做前瞻性的开发,从而产生一个良性的推动。
这里需要做一点补充说明:对于相对小型的软件的支持Linux并不逊色,一个完整安装的LinuxDistribution不仅比Windows带有品种远为齐全的软件,而且各常用类型的软件,诸如email,FTP,IRC,浏览器等均有四五种以上可供选择(有时反而让初用者手足无措)。
硬件支持
五年前Linux的安装对于新手来说还是一件望而生畏的事,这其中很大一个原因就是Linux对硬件支持的欠缺,三年前我在笔记本电脑上安装Redhat6.0还被迫到网上自行搜寻config文件。但近几年来Linux在这方面取得了长足的进展,今天,各主要Distribution对硬件的支持度正在迅速接近甚至超过Windows的水平。尽管硬件生产商对Windows驱动文件(driver)的提供仍比对Linux的要普遍,但高手如云的Linux群体已经做到了能几乎同步地提供所有最新硬件驱动文件的程度。另一方面,WindowsXP在硬件支持的普遍性上却出现了较大的倒退(Microsoft或许把这叫做更新)。此消彼长,Linux在硬件支持上的欠缺已经成为历史。
虽然没有明说,但上面谈论的硬件都是针对x86机器的,脱离了这个框架,Linux在硬件的支持上的广泛程度是包括Windows在内的任何其它操作系统都无法比拟的。
说到硬件支持,还有一个需要考虑的方面就是系统配置。每一代的Windows都对系统配置提出了新的要求,WindowsXP苛刻的系统配置要求更是使得几乎所有两三年以上机龄的机器都必须经过相当程度的硬件改良才能安装。而Linux虽然也同样在逐步提高对硬件配置的要求,但由于其优越的模块结构,使得用户有极大的自由度根据自己机器的配置调整自己所需安装的模块,从而突破对硬件配置的要求。
规范性
这里所说的操作系统的规范性有两层含义,一层含义是指操作系统对软件界的各项技术规范的遵循程度。在这方面Linux基本上遵循了所有适用的规范,这和Linux的开发模式不无关系。除内核外Linux没有一个中心仲裁者,因此开发人员大都以软件界已有的技术规范为准则进行系统开发。Windows在这方面的名声则毁誉参半,一方面Microsoft本身是软件界许多规范的制定和倡导者,但另一方面,Microsoft又常常按自己的喜好“修改”规范。由于Windows在桌面操作系统领域拥有压倒多数的用户群体,软件界在相当程度上被迫适应Windows的要求,因而使得Windows的许多非规范的东西成为事实上的规范。
规范性的另一层含义是指操作系统本身的规范性,一个简单的衡量标准就是该操作系统的两个用户之间有多少共同语言。由于Windows是由单一公司开发的,因此在这方面不是由松散联系的开发者为主力的Linux可以比拟的。以用户界面而论,Windows自Windows95以来保持了相当的稳定性,用过其中任何一个版本的用户基本上可以不用额外学习就直接使用另一个版本的Windows界面。而Linux的用户界面不下十种之多,最流行的也有KDE和Gnome两种,明显缺乏规范性。Linux在自身规范性上的欠缺还表现在各主要的Distribution使用不同的目录结构,用不同的格式传播软件,用不同的方式安装软件,等等。凡此种种不仅给新手带来极大的困惑,就是对有经验的用户甚至系统开发人员都是极大的不便。
所幸的是,Linux的不规范性已经引起了越来越多人的重视,一个如同W3C(W3C是制定互联网规范的组织)那样的组织TheFreeStandardsGroup已经成立,它的使命就是制定Linux和其它开放源代码系统的规范。随着这些规范的逐步推广,Linux将会缩小在自身规范性方面与Windows的差距。
这里也需要补充一点:Linux在用户界面方面的不规范性有时候也不失为一个优点。常常听人抱怨说自己花大价钱更新机器的努力很大一部分被操作系统本身所消耗掉了,这其中一个消耗资源的大户就是用户界面。Linux用户在这种情况下就可以使用消耗系统资源较少的用户界面。
总体上讲,在对外部规范的遵循性上,Linux要优于Windows,而在自身的规范性上,Windows要显著优于Linux,而且在近期内这种优势不会丧失。
源代码
Windows的源代码是保密的,而Linux的源代码是开放的。从字面上讲这当然是意味着原则上任何人都可以改进Linux。但是需要指出的是,原则上可以做的事情并非实际上就一定能够或者应当做。Linux源代码的高度的开放性主要是针对系统开发人员的,源代码的开放性使得Linux系统中的缺陷能够很快地被来自世界各地的高手所发现和弥补,这是十余年来Linux发展的关键。但对于普通用户来说,修改自己赖以工作的Linux机器的源代码却是非常不明智的行为。Linux内核多年来经过无数高手的锤炼,一个普通用户能够改进它的几率是微乎其微的(破坏它的可能性倒是很大的)。因此在肯定源代码开放性对操作系统本身乃至整个软件业发展的深远意义的同时也不应该夸大它对普通用户的直接帮助,源代码的开放性并不增加一个普通用户对系统的掌控程度。
Linux源代码的开发性使得各大学的操作系统课程和教材几乎都是以Linux或其他类似的系统为蓝本,因此使得受过正规计算机专业教育的几乎所有学生以及几乎所有对操作系统感兴趣的人都对Linux有相当程度的了解和喜爱。这对于Linux未来的发展有着十分正面的影响。
应用程序界面(API)
一个操作系统的API(ApplicationProgramInterface)是操作系统提供的与应用软件的接口,对于软件开发人员来说十分重要。一般认为Linux的API要比Windows优美。不过由于Windows下有诸如VisualStudio这样的直接支持WindowsAPI的大型工具软件,从而大大降低了Windows编程对于拥有并熟悉这些工具的人员的困难程度。
系统可调节性
Linux具有比Windows大得多的可调节性。许多早期的Windows骨灰级用户在系统可调节性上有一种怀旧感,觉得在DOS和早期Windows时代他们曾经是机器的主人,随着Windows的演化,后来他们只拥有Windows,不再直接拥有机器了(现在他们连Windows也不拥有了)。而Linux却始终如一地保持着系统的高度可调节性。
Linux的源代码的开放性也可以被视为终极意义上的可调节性,但是,前面说了,对于普通用户来说,这种可调节性实际上是几乎不存在的。
另一方面,在各自可调节的范围内,Windows要比Linux易于调节(这在很大程度上得益于Windows界面的规范性)。在早期,Linux的调节往往需要用户直接修改参数文件,即使对于有一定经验的用户,这也是一件令人头疼的事。近年来Linux在这方面做了很大的改进,开发了许多工具软件,不过和Linux下的许多其它类别的软件类似,Linux的工具软件也呈现一种发散性,即有不止一种软件可以做同一件事。这使得用户在转换机器和LinuxDistribution时往往因为不同环境下工具软件的不同而需要学习新的工具或重新安装旧的工具。
使用方便性
使用的方便性是桌面操作系统竞争中最重要的决胜因素之一。这里所说的使用的方便性是针对普通用户的,这一点常常被Linux的支持者所忽视。现阶段在桌面操作系统的用户群体中,Linux用户的平均计算机水平要大大高于Windows用户,这种差异使得Linux群体常常低估了一个缺乏计算机系统知识的普通用户适应Linux的难度。“Windows是傻瓜也能用的”非但不应该被用来嘲笑Windows,反而是Linux在竞争桌面操作系统市场中必须借鉴的经验。计算机二十年来的发展早已超越了专业的界限而成为几乎所有现代人都可能会用到的工具。使用方便性是任何工具所应该追求的品质之一,计算机及其操作系统当然也不例外。试问这世上聪明人的比例能有多少?偏偏把聪明用在计算机上的聪明人比例又能有多少?今天Linux用户群体的平均计算机水平高的一个不可忽视的原因是因为只有水平较高的人才能得心应手地使用Linux,而这一事实,很不幸的却是Linux与Windows竞争时的一大弱点。版权限制和费用
这方面没什么可说的,法庭上的胜负不论,无论对个人还是公司用户来说Windows利用其垄断地位迫使用户接受日益苛刻的版权要求已是不争的事实,可以盖棺定论。使用WindowsXP的用户相信对此尤有切身体会。每张WindowsXP光盘只能安装在一台电脑上,不仅如此,重装操作系统或更换一定数量的硬件都会导致Windows反盗版机制的干预,使得用户必须向Microsoft索要新的序列号(可能还免不了要解释一下自己何以又要给Microsoft“添麻烦”)。花钱买了的软件竟然还要间或地向Microsoft请示汇报,用户心中的不平衡是不言而喻的。至于价格,WindowsXPHome和Pro的价格分别为$199和$299。相比较之下Linux不仅可以免费下载,而且可以安装在任意数目的机器上。对用户具有的亲和力是不言而喻。
可惜的是,对于个人用户来说Linux在价格上的优势在很大程度上被市场上大部分品牌机厂家不提供预装Linux的机器(服务器除外)这一事实所抵销了。由于品牌机厂家在市场上占有很大的份额,因此大部分用户不论用不用Windows,都一样付了Windows的钱。既然钱也付了,操作系统也有了,绝大多数人就不会再去费心做调整。顺便说一下,这也是目前Linux用户群体的计算机水平普遍较高的另一个重要原因,因为对计算机或操作系统感兴趣的人有较大的可能性在并不缺乏操作系统的情况下还去安装一个新的操作系统。
不过对公司用户来说,由于Linux不对用户数量设置限制,与Windows的VolumnLicence相比其费用方面的优势是十分明显的。
说到费用,需要提到另外一个方面就是许多在Windows下要付费的软件在Linux下有功能相近,相同或更好的免费软件。虽然前面说到Windows在对软件的总体支持上优于Linux,但是Windows占优势的那部分软件对大多数普通个人用户来说并不是不可缺少的(也许游戏除外)。不过Linux在这方面的优势也在很大程度上受到一个因素的削弱:那就是许多Linux下优秀的免费软件也有Windows版本。
术支持
这里所说的技术支持是一个比较含糊的概念,既包括由公司提供的技术服务,也包括用户可以自行找寻的信息。在公司提供的技术服务方面,尽管不时可以听到有人抱怨和Microsoft技术服务人员打交道时的不愉快经历,但这显然是和Windows的用户数量有关的。总体上讲Microsoft对用户(尤其是公司用户)提供的技术服务要优于各Linux公司(当然这种服务不是免费的)。在用户可以自行找寻的信息方面,Microsoft有一个规模庞大的KnowledgeBase,Linux则有LinuxDocumentationProject,而且Linux在互联网上的BBS,Forum和Newsgroup等网站中常常可以看到顶尖的Linux开发者的身影,与Windows不同的是,Linux的开放性使得许多Linux高手对Linux的发展具有一种使命感,他们光顾这些网站就是为了了解用户的反映,发现bug并为Linux的发展积累经验。我这么说倒不是暗示Microsoft的人就不会以同样目的光顾Windows网站,不过就我个人的体会来说这方面Linux群体对用户起到的帮助作用要好于Windows群体的相应帮助。
需要说明的是,对公司用户来说,这后一种帮助在公司决策层面上起不到太大的作用。有一句半开玩笑的话很通俗地概括了许多公司(尤其是大公司)在选用软件(包括操作系统)时的态度,那就是“只选择自己可以将之告上法庭的供应商提供的软件”。Linux群体以及许多Linux公司无法在足够长的服务期限内提供规范的,有法律保障的服务是Linux在竞争桌面操作系统的半壁江山-公司用户-时的一大障碍。
结语
写到这里应该收笔了。通常这类文章都要预测一下Windows和Linux在桌面操作系统市场上的前景。前不久,RedhatLinux公司的总裁发表令人意外的评论说Linux无法在桌面操作系统市场上击败Windows。当然,Linux的热心支持者们并不认同这种看法。两方面的意见在网上争论得非常激烈。讲到预测,插上几句离题的话。小时候听说有外国专家预测在中国本土不会找到很多石油,也有外国专家预测唐山在多少年内将难以重建。这些预测都破产了。那时我就想何以外国专家都如此愚蠢,以至于我们做成的每件事情都可以拉上一两个外国专家做反衬?后来看的预测多了渐渐明白了道理:不是外国专家太愚蠢,而是有太多的“专家”了,什么可能性都让专家“预测”到了。我不是专家,不想也不敢贸然在这里作什么预测。Linux在桌面操作系统市场的前景取决于许多因素:比如各主要商业软件公司会在何时,以何种方式参与Linux软件的开发?比如有多少计算机厂家会提供预装Linux的机器?比如全球性的经济低迷会在多大程度上加速公司和个人为节省开支而使用Linux,比如Microsoft是否会在法庭上败诉?如果败诉受到的惩罚方案如何?等等。除此之外,还需要看到用户群体的行为习惯具有极大的惯性。无论Linux如何改进,仍然有很多人说Linux不方便。为什么?除了Linux本身的部分原因外还因为Windows巨大的用户群体已经形成,Windows的一切已经成为了事实上的标准,任何对Windows的偏离都必然要改变用户群体的习惯,这是所有Windows的竞争者不得不背负的沉重包袱。
细致而尽可能准确地分析所有这些因素不是一篇短短(尽管现在已经不太短了)的文章所能胜任的。幸好计算机技术这二十年的发展始终没有让人们久等过,看到这场操作系统大战的阶段性结果相信也不会对我们的耐心形成太大的挑战。
本文的一个假设的情况是Linux和Windows争夺桌面操作系统用户,离开了这个前提,离开了这个评论的角度,关于两个操作系统的比较当然就会有不同的结果。至于Linux是否应该和Windows来争夺污浊的桌面操作系统市场,这是一个不同的话题。有朋友提到Linux过分地向桌面发展会有损其稳定性。Linuxkernel2.4在推出后很长一段时间无法达到令人满意的稳定性使得有人一度在kernel-mailing-list上发出“Linusdoesnotscale”这样的感慨和怀疑。不过我认为,kernel2.4的问题不是因为Linux向桌面发展造成的,kernel2.4的发展最主要的受益者是server而不是桌面用户。我个人的想法是Linux由于其模块结构,是有希望在reliable,stable,scalable的内核和一个能被普通用户接受的GUI两方面同时取得成功的(至少在技术上是可以的,在商业社会模式下是否事实上可以当然谁也没法保证,许多GPL软件已经开始偏离GPL了,这在多大程度上代表一种趋势还有待观察)。
两系统的优点、缺点上面都说得很明白了。
虽然很明显是抄来的,呵呵。
我就来点非技术上的东西吧:
1、在当前,对于一般用户来说,win是我们的首选。虽然微软不近人情的防盗机制让人非常反感,但多数人还是能“免费”或“花钱”使用它。就算你无法免费使用它,对于90%以上的人还是只能用win,而不是linux,因为你实在无法在linux下满足你的工作、娱乐方面的需要。所以就当前的一般的台式机、笔记本来说,人员的主要工作还是只能在win下。
2、就算是内行高手,喜欢linux的朋友,他们的机器上一般也同时存在win。因为就算在linux下他能完成他的工作、学习、娱乐,但大家用的都是win,很多win下的东西你不用,别人得用,搞到你机器上来你没win就办不成事了。
3、对于一般用户,最大的问题还是在于linux下的可使用的软件太少太少了,少到除了系统自带的一些软件,你几乎就难于找到几款真正能给你方便和快乐的东西。
4、对于linux的近期未来,本人是不看好的,个人认为它还会半死不活的存在着。对于win的近期未来,只能是看好它,就算你不喜欢它。强大的公司资本在支持着它,只要能赚钱,win自然会越做越好。一个明智的公司应该能让多数它的客户满意否则,它就只能是倒台。当然,一个明智的公司也少不了从客户手里尽可能的榨取最大的利润,这是资本家的本质。它不是为用户服务的,它是为他自已服务的。当然,也可以反过来说,它是用服务来赚钱。
5、就当前,一个不赚钱的操作系统能发展到超越赚钱的win,于我而言还是一件不可想象的事。操作系统的编写理论上应该是一个团体的合力之作。象linux这玩靠东一个人,西一个人今天写点,明天加点儿搞出来的东西也许能用来玩玩,想全面超越win我看还是遥远的事。
我不是什么专家,也不是搞市场调查的。不过,我用Windows系统13年了,其中也用了Linux和Solaris3年,我个人觉得在系统配置管理上面来说,Linux和Solaris有着Windows不可取代的优势。我们都知道Windows的配置文件都是基于注册表文件的,也就是说,如果注册表被毁了,那么Windows系统也就岌岌可危了,由于Windows是不开源的,如果你想要自己通过修改文件来恢复系统,这简直是不可能的事情。而对于Linux和solaris系统,他们无论是软件还是硬件的配置文件都是基于文件的,而且,是开源的,如果你对这两个系统有足够的了解(你甚至可以买本书自学),你可以通过在Text界面使用文本编辑器编辑这些文件来修复系统的。Windows的主要图形界面是基于Explorer进程度的,而这个进程也是经常死的,而Linux和Solaris则不同,他们是基于Text系统的,而Text很少出现死机的现象,因此,你可以在不重新启动计算机的情况下重新启动图形界面,甚至在图形界面完全瘫痪的时候你也可以完成你所有的工作。
其实两个系统在几个大的系统上都有着很大的区别的。具体的就等那些高手来解释吧。:)希望对你有用哈。
如何用Linux连接Windows的远程桌面?
1.首先,开启Windows远程连接,这个是远程桌面连接的前提,直接在“我的电脑->属性->远程设置”中勾选就行,如下:2.接着就是在Linux中安装rdesktop,以Centos7为例,需要运行如下3条命令,先下载安装rpm包,获取yum源,然后才能直接安装(如果是Ubuntu系统,则直接apt安装即可):wgethttp:\/\/li.nux.r...
怎么看别人网站服务器用的是 Linux 还是 Windows
最简单实用的是通过ping返回的ttl判断,一般windows的ttl默认是128,linux的为64。所以大概就能判断了。第一个图是windwos主机第二个是linux主机。
windows 中如何用SSH 连接 linux
1、百度搜索“SSH Secure Shell Client”下载并安装。2、打开我们安装好的SSH Secure Shell Client。3、点击Profiles选择add profiles 并添加profils名称(自定义一个名字)4、然后点击刚定义好的profiles,出现如下界面,填写远程linux的ip,用户名,...
windows分区和linux分区的区别
这是MS-DOS和最早期的Windows 95操作系统中使用的磁盘分区格式。它采用16位的文件分配表,是目前获得操作系统支持最多的一种磁盘分区格式,几乎所有的操作系统都支持这种分区格式,从DOS、Windows 95、Windows OSR2到现在的Windows 98、Windows Me、Windows NT、Windows 2000、Windows XP都支持FAT16,但只支持2GB的硬盘...
socket编程在windows和linux下的区别
Linux中有变量socklen_t,Windows中直接为int。因为linux中的socket与普通的fd一样,所以可以在TCP的socket中,发送与接收数据时,直接使用read和write。而windows只能使用recv和send。设置socet选项,比如设置socket为非阻塞的。Linux下为 [cpp]flag = fcntl (fd, F_GETFL);fcntl (fd, F_SETFL, flag ...
linux和windows的系统默认路径是什么,如何设置
新建用户ftp1,限速为200K\/S,允许上传下载删除新建文件夹。进入目录\/etc\/vsftpd,用vi编辑器打开vsftpd.conf主配置文件:直接添加以下选项: [root@LidadeFedora vsftpd]# service vsftpd restart添加用户ftp1,设置登录脚本为 \/sbin\/nologin:vsftp默认目录为:\/var\/ftp,为方便测试,在\/var\/ftp下新建一个...
java编程在linux下和windows下有什么区别。。。
几乎没有区别,这个你要理解“JAVA是跨平台”的原理,本质是由于JAVA是基于jdk,jre环境下运行的,所以不论是LUNIX还是WINDOWS,有这两者的配置,即可进行JAVA编程,没什么大区别,否则就不叫跨平台了。如果硬要说区别的话,那就是Java的相关软件(如jdk、IDE)在Linux平台下安装部署是比windows麻烦,...
局域网里用windows访问linux系统服务器网站 是怎么弄的啊? 急用 请各...
2. 安装好之后,继续运行 service httpd start 启动服务,如果成功会提示[ ok ] 或者 [确定]3. 在客户端windows下,打开IE,输入liinux的IP地址 (如果你不知道LINIUX的IP地址,那么在LINUXX下执行ifconfig eth0 可以看到。我的qq : 1752542070 ...
FreeBSD做服务器的好处是什么?比较WIN和LINUX的区别.
比All In One WP Security略好,但即使刚入门,也比windows经常打补丁放心的多。只是FreeBSD调试wordpress还需要提高更多的技术,不是简单的pkg install就完了,需要对nginx、php、mysql有足够的掌握,这些看起来复杂,但会了又觉得其乐无穷,而且绝对会培养起传统黑客的精神和体会到简洁的强大。
uncle li is in a van with big windows是什么意思
Uncle Li 是专有名词,需要大写;van 指厢式货车,with big windows是后置定语,意思是 “李叔在一辆装有几扇大窗户的厢式货车里”。
赤沾银杏: linux 的优点:稳定的系统:linux 本来就是建立在 unix 上面发展出来的操作系统,因此,linux 具有与 unix 系统相似的的程序接口跟操作方式,当然也继承了 unix 稳定并且有效率的特点.多任务、多使用者:与 windows 系统不同的, linux 主机上可以同时允许多人上线来工作,并且资源的分配较为公平,比起 windows 的单人假多任务系统要稳定的多啰!你可以在一部 linux 主机上面规划出不同等级的使用者,而且每个使用者登入系统时的工作环境都可以不相同,此外,还可以允许不同的使用者在同一个时间登入主机,以同时使用主机的资源
凌云县17139673227: Linux 与 Windows 相比,优点体现在哪?
赤沾银杏: 1.Linux可以看到源代码,windows不行. 这一点直接导致的结果就是在特殊应用的场合可以自行剪裁和定制所需的内核模块,这对于高级系统内核管理优化和驱动程序的开发相当有利,另外也因为代码可见,不用担心恶意功能或者后门,对于军政企的使用比较有利.另外在系统出现严重问题的时候,可以自行修改代码或者接个几k的patch就能编译然后使用,而windows你得等微软的补丁. 2、Linux命令行功能强大,可以做任何事情,windows也有命令行,但是属于附属品.
凌云县17139673227: windows操作系统与linux操作系统相比各有什么优缺点 - ?
赤沾银杏: 1、Linux是开源的, Windows不是开源的 2、Linux的稳定性比Windows更好 3、Windows比Linux更容易学习使用(相对而言) 4、Linux的应用比Windows更广泛,采用Linux内核的系统远多于Windows的.
凌云县17139673227: windows相对于linux有什么优势吗? - ?
赤沾银杏: windows最大的优势就是他的用户基础.windows是商业组织,他们有足够多的钱做广告,仅此而已.而且他们有资本与电脑生产商讨价还价.linux因为是开源的,所谓的entertainment版也只是为了开发团队能够维持下去而已,根本没多少钱做广告.再有就是中国电脑教育的失误了,从一开始就是MS-DOS,然后就是windows,初级电脑教育都是以windows作为基础的.大部分的初级用户根本都不知道还有linux.所有的教学软件也都是windows下的,从一开始就先入为主的占据了初学者的大脑.linux哪来的空间?
凌云县17139673227: linux操作系统与windows操作系统相比,linux操作系统有哪些优点 - ?
赤沾银杏: 第一就是开源了,这点对于搞软件开发的很给力 第二就是免费得 并且版本多 选择性大 第三就是体积小 占用内存小 第四就是安全(超级用户的权限很大) 第五就是稳定性 一般大型的服务器 工作站都是用linux或unix 等等 更多关于Linux的系统,请关注《Linux就该这么学》这本书
凌云县17139673227: linux操作系统与windows操作系统的优缺点 - ?
赤沾银杏: 个人的日常办公的话,当然windows胜出,主要原因是windows上的办公软件或其他软件支持的比较多. 但是如果是做服务器的话,Linux比windows更加稳定,而且Linux比windows来的更加容易管理.
凌云县17139673227: Linux与Windows相比的优点与不足 - ?
赤沾银杏: linux 是个开源的系统,从91年诞生到现在已经有很多人去使用它,去修改它,所以它有很强的兼容性,linux的优点可以总结到一下几点:1低廉性、2广泛性、3灵活性、4兼容性、5移植性,特别是嵌入式软件开发适合用linux的系统! windows是目前全球使用最多的操作系统,它涉及的方面较全,且它拥有自己的一些配套的应用软件,往往这些软件支持windows操作系统,不仅这些,windows操作系统往往对电脑的配置有要求.你可以从最早的windows1.0到现在的windows 7或者是2012年推出来的windows 8操作系统看出,如果要说它的优点只能说windows是目前世界上最强大的,最全面的操作系统!
凌云县17139673227: Linux与Windows比较有哪些优势???
赤沾银杏: 就我个人7、8年混合环境IT坐下来看的话,其实最大的优势就是,开源,也就是免费啦.可不要小看免费这两个字啊,这不单单是指那个操作系统的费用,其上的所有应用都会因此而产生费用.尤其是在企业级环境中,比如你做http服务,...
凌云县17139673227: windows和linux相比 它们各有什么优势? - ?
赤沾银杏: 同样作为操作系统,Linux与Windows相比主要的优势和劣势有哪些?做为公司的管理人员,我准备进行采购.对于以Linux作为操作系统,一直是一个讨论中的问题,这取决于你问谁以及他们的建议,它的优劣可以很容易的显现出来:优势 购...
凌云县17139673227: windows和Linux相比的优势. 最好详细点杜绝抄袭?
赤沾银杏: windows系统易上手,窗口界面易掌握,而且多数软件也是运行在windows平台上,对软件有很好的兼容性,缺点是系统漏洞多,易中毒遭到攻击,系统的稳定性较差,尤其是个人用户版经常会出现要重装系统的问题. linux系统运用在大型企业,政府部门,金融保险类行业的服务器上面,一则稳定,二则不易遭到病毒和网络攻击,相当的安全,缺点是:大多数的操作需在命令行模式下操作,需要熟悉linux的各种命令与shell编程才能很好的使用它