Linux系統與Unix系統的區別和聯絡
阿新 • • 發佈:2019-02-09
Linux何以備受青睞,致使除微軟以外,國際上有名的硬、軟體廠商都毫無例外地與之結盟、捆綁。甚至連世界IT的龍頭老大“藍後巨人”IBM也要“全面擁抱Linux”呢? 首先,Linux作為自由軟體有兩個特點:一是它免費提供原始碼,二是愛好者可以按照自己的需要自由修改、複製和釋出程式的原始碼,並公佈在Internet上。這就吸引了世界各地的作業系統高手為Linux編寫各種各樣的驅動程式和應用軟體,使得Linux成為一種不僅只是一個核心,而且包括系統管理工具、完整的開發環境和開發工具、應用軟體在內,使用者很容易獲得的作業系統。
由於可以得到Linux的原始碼,所以作業系統的內部邏輯可見,這樣就可以準確地查明故障原因,及時採取相應對策。在必要的情況下,使用者可以及時地為Linux打 “補丁”(這正是筆者前面文章中討論的集市模式開發軟體最本質的內容),這是其它作業系統所沒有的優勢。同時,這也使得使用者容易根據作業系統的特點構建安全保障系統,不會由於不瞭解不公開原始碼的 “黑盒子”式的系統預留的什麼 “後門”而受到意外的打擊。 第二,究其根本,Linux是一個UNIX系統變種,因此也就具有了Unix系統的一系列優良特性,Unix上的應用可以很方便地移植到Linux平臺上,這使得Unix使用者很容易掌握Linux。下面簡要地描述UNIX亦即Linux的一系列特色。
2.1 UNIX/Linux的主要特色 早期UNIX的主要特色是結構簡煉、便於移植和功能相對強大,經過30來年的發展和進化,形成了一些極為重要並穩定的特色,其中主要包括: 1. 技術成熟,可靠性高 經過30來年開放式道路的發展,UNIX的一些基本技術已變得十分成熟,有的已成為各類作業系統的常用技術。實踐表明,UNIX是能達到大型主機(mainframe)可靠性要求的少數作業系統之一。目前許多UNIX大型主機和伺服器在國外的大型企業中每天24小時,每年365天不間斷地執行。例如,不少大企業或政府部門,即所謂肩負關鍵使命的場合/部門將其整個企業/部門資訊系統建立並執行在以UNIX為主伺服器的Client/Server結構上。但到目前為止,世界上還沒有一家大型企業將其重要的資訊系統完全建立在NT上。
2. 極強的可伸縮性 UNIX系統是世界上唯一能在膝上型電腦、PC、工作站,直至巨型機上執行的作業系統,而且能在所有主要CPU晶片搭建的體系結構上執行(包括Intel/AMD及HP-PA、MIPS、PowerPC、UltraSPARC、ALPHA等RISC晶片)。至今為止,世界上沒有第二個作業系統能達到這一點。此外,由於UNIX系統能很好地支援SMP、MPP和Cluster等技術,使其可伸縮性又有了很大的增強。目前,商品化UNIX系統能支援的SMP,CPU數已達到幾百甚至更多個,MPP系統中的節點甚至已超過1024個UNIX支援的異種平臺Cluster技術也已投入使用。UNIX的伸縮性遠遠超過了NT作業系統目前所能達到的水平
3. 網路功能強 網路功能是UNIX系統的一又一重要特色,作為Internet網技術和異種機連線重要手段的TCP/IP協議就是在UNIX上開發和發展起來的。TCP/IP是所有UNIX系統不可分割的組成部分。因此,UNIX伺服器在Internet伺服器中佔80%以上,佔絕對優勢。此外,UNIX還支援所有常用的網路通訊協議,包括NFS、DCE、IPX/SPX、SLIP、PPP等,使得UNIX系統能方便地與已有的主機系統,以及各種廣域網和區域網相連線,這也是UNIX具有出色的互操作性(Interoperability)的根本原因。
4. 強大的資料庫支援能力 由於UNIX具有強大的支援資料庫的能力和良好的開發環境,因此多年來,所有主要資料庫廠商,包括Oracle、Informix、Sybase、Progress等,都把UNIX作為主要的資料庫開發和執行平臺,並創造出一個又一個性價比的新記錄。UNIX伺服器正在成為大型企業資料中心替代大型主機的主要平臺。 5. 開發功能強 UNIX系統從一開始就為軟體開發人員提供了豐富的開發工具。成為工程工作站的首選和主要的作業系統和開發環境。可以說,工程工作站的出現和成長與UNIX是分不開的。至今為止,UNIX工作站仍是軟體開發廠商和工程研究設計部門的主要工作平臺。有重大意義的軟體新技術的出現幾乎都在UNIX上,如TCP/IP、WWW、OODBMS等。
6. 開放性好 開放性是UNIX最重要的本質特性。開放系統概念的形成與UNIX是密不可分的。UNIX是開放系統的先驅和代表。由於開放系統深入人心,幾乎所廠商都宣稱自己的產品是開放系統,確實每一種系統都能滿足某種開放的特性,如可移植性、可相容性、可伸縮性、互操作性等。但所有這些系統與開放系統的本質特徵—不受某些廠商的壟斷和控制相去甚遠,只有UNIX完全符合這一條件。 7. 標準化 過去,Unix界被分析家和使用者批判,因為沒有為所有Unix作業系統提供統一的標準。其實,到目前為止,國際標準化組織(ISO)、工業團體恰恰是以UNIX基礎制訂了一系列標準化,如ISO/IEC的POSIX標準、IEEE
POSIX標準、X/Open組織的XPG3/4工業標準以及後來的Spec 1170(因為它包含了1170個應用程式設計介面,後來改名為UNIX’95)標準。不少人對標準及標準化組織的作用及職權產生了誤解。事實上,當標準化組織企圖駕馭互相競爭的力量,和企圖為使用者規定他們的要求時是註定要失敗的。比方說,標準只能用於給出道路的規則,而不應用於製造汽車。如果廠家被強迫完全遵從單一的標準,而不允許他們產品有特色,則使用者將受害,Unix將變成象任何單一廠家的產品一樣,沒有任何特色。 Unix標準組織的真實目標是為使用者和廠家定義一種規定Unix形態的基礎。標準將保證Unix系統是可操作的,並且其應用是便於移植的。但它們也允許相互競爭的開放開發環境能創新和具有技術特色。
當然,由於UNIX是有版權的,而且其源頭有多家,許多廠家自行開發,並強調特色而導致UNIX版本的不統一(相比之下,Linux的核心是統一的,各發行廠家只是在外部作了不同程度的開發,但又都要遵循POSIX等標準,所以不會存在UNIX那種四分五裂的表象)。即便如此,Unix系統已經提供了比任何其他作業系統更多的可互操作性。公共的聯網和系統管理協議允許使用者方便地混用和匹配多種Unix系統。從一種Unix向另一種Unix移植應用只需幾天時間,而在完全不同的作業系統間移植或重寫程式碼需要幾個月甚至幾年時間。 而且Unix工業界還在快速地向前發展,使得互操作性和可移植性更為方便。由獨立的X/Open組織管理的Unix’95為作業系統廠家和應用開發商規定了商品Unix的形態。所有的Unix廠家已經從Unix’95規格說明。
開發或購買遵從Unix’95規格的應用可保證使用者方便地從一個Unix作業系統向另一個移植。但並不強迫使用者購買只遵從Unix’95規格的產品,使用者可以開發和遵從開放且自由競爭的市場購買具有新的擴充的產品,以滿足自己特殊的需要。 這樣,Unix工業界再次為使用者提供了選擇的權力。如果伸縮性和移植性對使用者的業務是最重要的,使用者可以選擇遵從Unix’95的應用;如果先進技術是關鍵,則使用者可選擇某一廠家具有新擴充的應用,當然這些擴充尚未成為標準。 由於Unix不斷髮展,因此,Unix’95標準將繼續發展以接納某些廠家的創新。
2.2 Linux和Windows XX相比有何特點 1. 可完全免費得到 Linux作業系統可以從網際網路上免費下載使用,只要您有快速的網路連線就行;而且,Linux上跑的絕大多數應用程式也是免費可得的。用了Linux就再也不用背”使用盜版軟體”的黑鍋了。 2. 可以執行在386以上及各種RISC體系結構機器上 Linux最早誕生於微機環境,一系列版本都充分利用了X86CPU的任務切換能力,使X86CPU的效能發揮得淋淋盡致,而這一點連Windows都沒有做到。此外,它可以很好地執行在由各種主流RISC晶片(ALPHA、MIPS、PowerPC、UltraSPARC、HP-PA等)搭建的機器上。
3. Linux是UNIX的完整實現 從發展的背景看,Linux與其他作業系統的區別是,Linux是從一個比較成熟的作業系統發展而來的,而其他作業系統,如WindowsNT等,都是自成體系,無對應的相依託的作業系統。這一區別使得Linux的使用者能大大地從Unix團體貢獻中獲利。無論是Unix的作者還是Unix的使用者,都認為只有Unix才是一個真正的作業系統,許多計算機系統(從個人計算機到超級計算機)都存在Unix版本,Unix的使用者可以從很多方面得到支援和幫助。因此,Linux作為Unix的一個克隆,同樣會得到相應的支援和幫助,直接擁有Unix在使用者中建立的牢固的地位。
UNIX上的絕大多數命令都可以在Linux裡找到並有所加強。UNIX的可靠性、穩定性以及強大的網路功能也在Linux身上一一體現。 4. 真正的多工多使用者 只有很少的作業系統能提供真正的多工能力,儘管許多作業系統宣告支援多工,但並不完全準確,如Windows。而Linux則充分利用了X86CPU的任務切換機制,實現了真正多工、多使用者環境,允許多個使用者同時執行不同的程式,並且可以給緊急任務以較高的優先順序。 5. 完全符合POSIX標準 POSIX是基於UNIX的第一個作業系統簇國際標準,Linux遵循這一標準這使UNIX下許多應用程式可以很容易地移植到Linux下,相反也是這樣。
6. 具有圖形使用者介面 Linux的圖形使用者介面是Xwindow系統。Xwindow可以做MSWindows下的所有事情,而且更有趣、更豐富,使用者甚至可以在幾種不同風格的視窗之間來回切換。 7. 具有強大的網路功能 實際上,Linux就是依靠網際網路才迅速發展了起來,Linux具有強大的網路功能也是自然而然的事情。它可以輕鬆地與TCP/IP、LANManager、Windows for Workgroups、Novell Netware或Windows NT網路整合在一起,還可以通過乙太網或調變解調器連線到Internet上。
Linux不僅能夠作為網路工作站使用,更可以勝任各類伺服器,如X應用伺服器、檔案伺服器、列印伺服器、郵件伺服器、新聞伺服器等等。 8. 是完整的UNIX開發平臺 Linux支援一系列的UNIX開發工上,幾乎所有的主流程式設計語言都已移植到Linux上並可免費得到,如C、C++、Fortran77、ADA、PASCAL、Modual2和3、Tcl/TkScheme、SmallTalk/X等。 總而言之,Unix就是可供各種使用者選擇的物件。一個作業系統已經使分散式計算成為現實。一個作業系統正在使新形式的互動娛樂成為現實並正確領導通向新的工程和商業應用的路。這就是Unix所體現的精神。但Unix還不止於此。主要地,Unix給使用者選擇最佳應用、最佳開發環境、最佳網路功能和最佳硬體的自由,以滿足使用者的業務要求。Unix還給使用者選擇何時升級系統的自由,甚至當使用者改變主意時,使用者可以以最少的痛苦來安裝一個新系統,只要業務需要。
Unix專門獻身於使使用者保持選擇的權力。 三、 主要產品的競爭 上面我們從總體上講述了UNIX從而也是Linux的特點,下面我們從伺服器,桌面機和嵌入式三個不同層面上來比較Linux與Windows之間的優缺點、強項和弱處。 3.1伺服器作業系統——Linux與NT 伺服器是涉及一大類機器的統稱,最高階,用作超級計算或頂級企業和網路伺服器的MPP(大規模並行處理機)、SMP(對稱多處理機)、Cluster(叢集機),Mainframe(大型主機);到普通商用資料庫伺服器的中型機,如IBM AS/400,中高檔伺服器如IBM
RS/6000/系列機,HP 9000/K系列,SUN Ultra SPARC中高檔伺服器(如10000系列)、SGI的1000系列等。以及低端,用作郵件、檔案/列印伺服器等的普通PC伺服器,門類繁多,不一而足。在這方面Linux都有其產品,而NT基本上是處於PC伺服器檔次上的作業系統。