Windows/UNIX/Linux系统间的较量

系统
2003年6月,一些计算机黑客举行了一次“篡改者挑战赛”,目标是在6小时内篡改6000个网站的页面。根据所攻破的操作系统的不同为参与者计分。采用Windows系统的网站计1分,UNIX或Linux,3分。也就是说,他们认为UNIX和Linux比较难以攻破。本文主要分析了Windows/UNIX/Linux系统间的故事,看看谁才能笑到最后。

2003年6月,一些计算机黑客举行了一次“篡改者挑战赛”,目标是在6小时内篡改6000个网站的页面。根据所攻破的操作系统的不同为参与者计分。采用Windows系统的网站计1分,UNIX或Linux,3分。也就是说,他们认为UNIX和Linux比较难以攻破。

一、理解误区:

误区一:Linux比windows更容易被攻击

有人认为Linux的代码完全开放,也就是说,任何人都能得到UNIX和Linux中的“透明代码”——包括黑客、心怀不满的员工和竞争对手——而Windows的代码是收到严格保护的知识产权,那么UNIX和Linux就应该比Windows更容易受到攻击了,对吧?

“不对,”Justin Steinman,Novell北美区经理说,“和Windows所谓‘以隐匿求安全’相比,Linux的‘以透明求安全’更为安全。因为整个Linux团体都在完善和关注其代码。一旦有人发现安全漏洞,人们就会对它进行修补,并把补丁程序发布给整个团队。”

Steinman把这种响应速度和微软的“补丁星期二”做了对比。微软每个月的的第二个星期二发布Windows操作系统和其他应用软件的补丁程序。“如果你在第二个星期三发现了漏洞呢?你得等上30天才能得到补丁程序。”他说。

误区二:大多数Windows能干的事Linux干不了

像我们日常用的一些QQ,暴风影音,Word在Linux上都能使用,相对一些更加专业话的软件Linux更是一个先驱者,比如 Matlab, Mathematica, AutoCAD, Candence的,Synopsys的,Avant!的......全都是先有 UNIX的版本(包括Linux),然后再考虑移植给Windows,甚至根本不移植给 Windows,因为 Windows的机器一般没有足够的能力运行这样的程序。

误区三:IDE

有些人在抱怨为什么 Linux没有一个良好的 IDE开发环境。Linux现在已经有一些 IDE了,但是总是有很多问题。你是不是正在寻找,正在期望 Linux某一天可以有一个VC那样的开发环境?你有没有发现你正在进入微软给你设下的怪圈?你为什么一定要用 IDE?你说:"IDE开发迅速,调试方便,适合大型程序......"那说明微软的程序在我们的脑子里已经比较根深蒂固,真的是时候需要好好清醒一下了。

看看大型的 UNIX程序,包括 Linux内核,各种网络服务程序,Xwindow程序在内,哪一个是 IDE搞出来的?还有Candence, Synopsys,Mentor的高性能的图形界面 EDA程序也都不是 IDE写的。微软的人在写 Windows本身的时候也根本不用 IDE!

有的时候,我们甚至将“编辑器”和“编译器”都搞混淆了!一个窗口里输入了代码,点击一个按钮就可以编译程序,但是这里面到底是怎么工作的,不知道!我们被盖在上面的窗口挡住了视线,甚至会以为那个按钮就是编译器!一个 IDE 集成了编辑器,编译器,汇编器,调试器,跟踪器......这个编辑器功能肯定比不上 VIM或 Emacs,编译器比不上 GCC,汇编器比不上 as,调试器比不上 gdb,ddd,跟踪器比不上 strace,ltrace,truss。最后我们得到的是一套整合的很好的低能的程序。

而在 UNIX下就不一样了。你可以用你最喜欢的 VIM编辑程序,你在 VIM里可以调用 GNU make,make可以调用 gcc, ld, ...实际上 make能帮你很多忙。make的出错信息可以被 VIM捕获,VIM能帮你在源程序里定位。你如果喜欢 icc,你可以让 make用 icc而不是 gcc。你如果觉得 gdb跟踪变量时比较麻烦,你可以用 ddd来显示各种数据结构之间的关系。你还可以在 Emacs里调用 gdb,那样就可以同步显示源代码了。而且 VIM和 Emacs还可以编辑很多其它东西,比如信件,LaTeX文档,HTML,配置文件......你不用另外找一个什么编辑器来干这些杂活了。很多程序比如 Mutt, tin都可以在内部使用 VIM,这样就更方便了。

二、安全性方面

1、权限方面:

Quandt指出,Linux和UNIX在架构中采用了“最少特权”概念。她把提供某些门的专用钥匙与提供能打开所有房门的万能钥匙做了比较。在Linux 2.6中,安全架构比以前的版本有了很大改善,支持最少特权,具有以角色为基础的接近权控制,用户只进入他们需要使用的那部分系统即可。

2、用户结构方面:

多用户设计假定用户较多,但坦白讲,对他们信任较少。简单来说,Windows把用户程序和操作系统的核心集成到一起,而Linux和UNIX则把核心区域与用户区域区分开来。

“这是固有的安全。” Sun公司Solaris Security经理Mark Thacker说,“UNIX从最开始就是多用户系统,不是逐渐演变为服务器操作系统的台式机系统。UNIX一直都是把用户领域和核心领域分开的,这是任何源于DOS的操作系统所不具备的。”

3、运行状况方面:

可以裸奔(无需杀毒软件,反广告/间谍防护软件),甚至可以数月不用重启机器,因为它具有独特的内存管理方式。(大家可以想一下如果windows下裸奔会是怎样的后果;windows如果很长一段时间不关机或是重启,那么它运行肯定不会有刚开机时那么流畅),所以说安全上Linux与windows比较没意思。

二、技术特点分析

这一方面就更加没有意思了,甚至可以夸张的一点描述UNIX/Linux可以将Windows秒出十万八千里。

1、内存机制方面

Linux有比 Windows先进的磁盘缓冲技术。你有没有发现你往硬盘写数据的时候,很快就完成了?那是因为 Linux在内存里有很多磁盘缓冲区,你要写到硬盘上的数据先被写到了这些内存里。在一定的间隔时间后,Linux才把数据写回硬盘,这样不但高效,避免了多次硬盘操作,而且减少了文件的不连续,也就是减少了"碎片"。Windows当然也有磁盘缓冲,但是由于它内存管理的低效率,它不敢把大量内存都用来作为磁盘缓冲,因为它没有能力在用的时候随时把内存收回来。

2、与硬件结合性

由于开放源代码的特点LINUX得到AMD和INTEL公司的关注。因为这两家公司都希望在64位芯片时代能够和开放源代码的操作系统系统紧密联系LINUX的发展速度急快,从它的内核就可以看出。LINUX比其他操作系统更能适应芯片技术发展。

3、并行化多任务处理

Linux系统调度每一个进程平等地访问微处理器。由于CPU的处理速度非常快,其结果是,启动的应用程序看起来好像在并行运行。事实上,从处理器执行一个应用程序中的一组指令到Linux调度微处理器再次运行这个程序之间只有很短的时间延迟,用户是感觉不出来的。

经过对最重量级的数据库ORACLE 9i测试,在LINUX下的运行速度比在WIN2003 SERVER要快25%。这一篇,LINUX占了上风。每次ORACLE发布新版数据库的时候,都是会最先发布Linux版本的,而Windows版本的至少要半年以后才发布,深入理解后认为从底层来说俩个版本简直就是2种软件,虽然提供相同的功能。

4、网络信息化

Linux的组网能力非常强大,它的TCP/IP代码是最高级的。Linux提供了对于当前的TCP/IP协议的完全支持,并且包括了对下一代Internet。协议Ipv6的支持。Linux内核还包括了IP防火墙代码、IP防伪、IP服务质量控制及许多安全特性。这些特性可以和像Cisco这样的公司提供的高端路由设备的特性相媲美。此外,利用Redhat Linux提供的Samba组(并不是RedHat Linux独有),Linux可以作为Windows客户机的打印和文件服务器,还可以用做NT的文件和打印服务器。运用Linux包含的AppleTalk模块,Linux甚至可以作为一个Macintosh客户机的文件和打印服务器。

三、市场方面

1、开源性方面:

杨元庆:“Windows不开源严重制约了IT产业发展”,开放源代码是大势所趋,Linux前途广阔。互联网免费的今天,开源性的事物将势必会有更强的生存能力。

2、PC市场方向

全球PC市场出现了历史上最严重的滑坡趋势下,虽然在Window8的强烈攻势下,消费者显得无动于衷,依然转向了智能手机和平板电脑。在如今Android和IOS占据大半江山的背景下,Windows Phone的前景愈发暗淡。显然微软在移动终端高速发展的今天,Windows操作系统存在天然的弱势。

3、费用问题

很多Linux版本是不需要花钱的,恰恰相反,Windows每个版本的安装都是需要另付费用的。

责任编辑:黄丹 来源: 博客
相关推荐

2009-06-23 18:56:51

2012-05-30 13:25:00

2010-12-31 09:42:36

NFS角色账户映射

2010-05-11 18:40:46

Unix系统

2009-11-13 09:36:10

UNIX通讯命令操作系统

2011-12-23 09:21:03

微软云计算linux

2009-12-02 14:50:28

操作系统

2012-11-30 10:40:00

IBMdW

2010-04-28 17:46:19

2010-05-10 19:03:00

Unix文件

2011-03-28 12:42:35

ibmdwDB2

2009-12-16 11:54:35

WindowsLinuxUnix

2010-06-24 09:13:43

2016-12-29 14:33:54

大数据数据可视化

2013-03-11 09:13:59

2013-07-02 11:11:22

Windows VisWindows 8

2024-02-22 14:50:02

2010-11-03 15:27:39

OpenLDAPWindowsUnix系统

2013-03-21 15:27:09

LinuxUnix

2021-01-28 12:42:44

Sudo漏洞Unix
点赞
收藏

51CTO技术栈公众号