微軟布局術:三大操作系統(tǒng)為何分裂如何統(tǒng)一?
Windows,WindowsRT,WindowsPhone,微軟這三個操作系統(tǒng)品牌之間是什么關系?微軟為什么維持三個面向消費者的操作系統(tǒng)?它們未來會不會走向統(tǒng)一?阻礙系統(tǒng)融合的障礙是什么?
本文引用地址:http://m.butianyuan.cn/article/198588.htm目前,微軟有多個面向客戶的Windows衍生品牌,如:32位(x86)和64位(x64)個人電腦上使用的Windows8.1,ARM平板上使用的WindowsRT,以及智能手機使用的WindowsPhone。據(jù)Canalys公司的調(diào)查分析,三個操作系統(tǒng)中至少有一個是多余的。而WindowsPhone和WindowsRT這兩個系統(tǒng)被定位為“具有相似的開發(fā)人員和客戶”,更是令人感到困惑。既然兩個操作系統(tǒng)都能應用到智能設備,那就出現(xiàn)一個問題——為什么智能設備上要有兩個操作系統(tǒng)?
Canalys的報告不過是事后諸葛。就在上周,微軟設備與音像工程組的組長朱麗.拉爾森-格林在一個瑞銀投資會議上就表示微軟未來“不會繼續(xù)擁有三個操作系統(tǒng)”。拉爾森-格林還簡要描述了兩種操作系統(tǒng)的不同需求—靈活處理不同的任務,一個鎖定以移動,另一個追求高性能。
從某些方面來講,令人高興的是這可以說明WindowsRT系統(tǒng)確信將被封殺。來自瑪麗喬弗里的傳言似乎證實了這一點:WindowsPhone系統(tǒng)功能將會擴展。這種擴展首先是在2014上半年WindowsPhone發(fā)布的8.1版本中,然后是在2015年上半年發(fā)布的更新版本中。WindowsPhone的這種擴展將會使它的API(應用程序編程接口)與WindowsRT的相同,應用程序可同時應用于手機和平板電腦。因此,WindowsRT的市場將會被擠掉。
可以推測依然會有不同的系統(tǒng)扮演不同的角色。
然而,這些都沒有得到官方證實。微軟公司也沒有提供專門的導向和路線圖。這就依賴于你如何理解格林的話——微軟已經(jīng)不再擁有三個操作系統(tǒng)還是將會一直有三個或者更多操作系統(tǒng)。
針對不同CPU,本質(zhì)是同一系統(tǒng)(Windows/WindowsRT)
從某些方面來講,微軟說是三個操作系統(tǒng),這其實是一種誤導。微軟實際上沒有三個客戶操作系統(tǒng),而是三個品牌。WindowsRT系統(tǒng)和與英特爾處理器兼容的Windows系統(tǒng)實際上并不是兩個完全不同的系統(tǒng)。從性能上來講,它們其實是一個操作系統(tǒng)“Windows”為兩個不同的處理器架構而編譯的。
ARMWindows系統(tǒng)比32位的Windows系統(tǒng)具有更嚴格的安全限制。WindowsRT(WindowsonARM)官方僅支持支持用新版的WinRTAPI編寫的第三方軟件。但是WindowsRT發(fā)布后,開發(fā)者很快發(fā)現(xiàn)如果破解掉額外的安全限制,就可以運行Win32API編寫的所有Windows軟件,當然需要為ARM重新編譯。因為該系統(tǒng)的所有組件都是Windows系統(tǒng)現(xiàn)成的,只不過一些部分被重新封裝,所以看起來該系統(tǒng)整個就像是一個Windows用戶界面。
WindowsRT還造成兩個不相關的影響。第一個是使用ARM處理器。第二個是默認的的軟件環(huán)境。這兩個問題都難以解決。得益于最新發(fā)布的Atom處理器,未來英特爾處理器似乎也可能廣泛應用于智能手機上(在過去這絕無可能);然而毫無疑問所有平板電腦和手機所采用的系統(tǒng)仍將堅定地支持ARM芯片(而不是英特爾)。
拉爾森-格林明確表示,微軟將繼續(xù)擁有一個為移動平臺鎖定式的環(huán)境。這樣看來,RT系統(tǒng)嚴格的限制性是其一個永久的枷鎖。所以即使其品牌烙印會慢慢褪去,但是其影響依然存在。
Windows和WindowsRT并非微軟已經(jīng)首次開發(fā)可以被多處理器架構編譯的操作系統(tǒng)。有時WindowsNT也在AlphaAXP,MIPSR4000和PowerPC604處理器上運行。而且不同版本之間也不是普遍的二進制兼容,例如可以在PowerPC上執(zhí)行的未必可以在32位系統(tǒng)上運行,即使兩者都可運行WindowsNT——這是一個特例,因為32位的軟件可以利用一個系統(tǒng)集成的32位模擬器在Alpha系統(tǒng)上運行。但可能是由于人們購買(或者更多時候根本不買)這些WindowsNT系統(tǒng)的多樣性,微軟而沒有意識到有必要給這些系統(tǒng)專門命名。
然而對于針對普通消費者的操作系統(tǒng)而言,就不能如上述那樣模糊處理。精確傳達不同品牌的兼容性非常重要。問題一目了然:微軟目前所做的努力是否真的能讓消費者分清x86Windows和WindowsRT?WindowsRT貌似可以運行32位Windows系統(tǒng)的程序,但事實上這并不可能。雖然它看起來確實像32位Windows系統(tǒng),甚至還擁有同一個桌面、IE瀏覽器和Office辦公軟件。這令消費者十分困惑,難以去分清這兩個品牌的真正區(qū)別。
這似乎像是雞蛋里挑骨頭,但從發(fā)展的成效和軌跡上來看卻絕非如此。微軟并不是在Windows和WindowsRT之間開發(fā)兩個相互競爭的、不兼容的、不統(tǒng)一的平臺,而是在做同一個操作系統(tǒng)并且對之進行二次編譯。在WindowsRT上運行的軟件也能在Windows8上運行,最好的情況是無需更改任何代碼(針對用.NET、HTML/JavaScript語言編寫的軟件),最壞的情況是需要進行重新編譯(針對用C++語言編寫的軟件)。
不同的API,WindowsPhone是孤立的系統(tǒng)
與它們差別最大的是WindowsPhone系統(tǒng)。WindowsPhone7以WindowsCE為內(nèi)核(WindowsCE是微軟公司最輕量級、可定制、嵌入式操作系統(tǒng)),當時它是微軟公司唯一與ARM兼容的操作系統(tǒng)。微軟在把WindowsCE應用到智能手機上擁有豐富經(jīng)驗(WindowsMobile系統(tǒng)也是WinCE的一個變種)。因此WindowsPhone7采用WinCE看起來似乎是一個明智的決定。第三方應用程序使用改版的Silverlight開發(fā),該版本是一個附加了很多特定Phone系統(tǒng)組塊的.NET工作環(huán)境。
到了WindowsPhone8,微軟卻選擇了用NT作為內(nèi)核。NT功能更為強大并且微軟公司為之投入了絕大多數(shù)的研發(fā)力量,所以微軟選擇NT作為WindowsPhone8內(nèi)核也在情理之中(不過這對消費者是不是好事就另說了)。WindowsRT的開發(fā)意味著Windows也可以在ARM架構上運行,所以沒有任何理由再堅持使用WindowsCE。WindowsPhone8和Windows8系統(tǒng)共用了很多主要部件,因而兩個操作系統(tǒng)的底層組件諸如網(wǎng)絡堆棧和安全架構等有諸多共同之處。
為了支持已有的WindowsPhone7的應用程序,WindowsPhone8基本上包含了Phone7上相同的Silverlight工作環(huán)境。然而,WindowsPhone8新的應用程序卻不能使用該環(huán)境。開發(fā)者有兩個選擇,其一是一個與舊的Silverlight環(huán)境相似的新.NET環(huán)境(雖然是完整的.Net運行環(huán)境,但是卻缺乏Silverlight體系所支持的XNA3D圖形API);其二是采用帶Direct3D支持(微軟公司的3D繪圖接口)C++原生代碼。
值得注意的是,WindowsPhone應用程序不僅不能使用Win32的API,而且也不能使用大部分新WinRT的API。
如果開發(fā)人員想在平板和手機應用間共享代碼,也并非全無可能。這不是沒有可能,因為有可能編寫出一種同時適用于手機和普通Windows系統(tǒng)的功能共享的.NET代碼,開發(fā)者稱之為“便攜類庫”(PortableClassLibraries)。而且,WindowsPhone8系統(tǒng)將允許C++語言的開發(fā)者訪問WinRTAPI(有時我們也稱之為WinPRT)的受限子集和Direct3D的大部分功能。來自T.保羅的消息說,在手機和非手機操作系統(tǒng)之間大約有33%的相似度。
這使得WindowsPhone8系統(tǒng)成為一個奇怪的孤立系統(tǒng)。WindowsPhone8與Windows、WindowsRT之間共同的API很少。所以蘋果的iOS系統(tǒng)和安卓系統(tǒng)的手機應用程序可以同時使用在平板電腦上,WindowsPhone的應用程序卻依舊被限制僅在手機上運行。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)linux相關文章:linux教程
c++相關文章:c++教程
評論