1. 程式人生 > >Java和微軟不得不說的故事

Java和微軟不得不說的故事

Windows是非常受人們歡迎的作業系統,它是微軟立足於軟體界的根本所在;Java是非常受人們歡迎的程式語言,它是SUN公司的心血之作,Java最大特點是:一次編寫,可以適應於任何平臺,<!--

包括IBM的大型機,SUN公司的伺服器,裝有Windows的PC機,甚至還包括手機這樣的終端裝置。1996年,微軟遇到了SUN,兩者一拍即合,微軟利用Java開發出IE瀏覽器,它們攜手打敗了網景的瀏覽器,然而,此後發生的事情打碎了SUN的美好幻想。

·Java曾經是Windows的親密戰友

事情還得從80年代說起,當時借PC機東風,微軟與英特爾組成的Wintel聯盟所向披靡,它們踩在藍色巨人IBM的肩上發達起來,微軟生產的Windows作業系統一度控制著整個PC市場,獲得巨大成功,但是它卻忽略了網際網路的發展,被另外一家以生產瀏覽器軟體而聞名的網景公司(Netscape)搶佔了先機,它先於微軟推出瀏覽器軟體。當時,SUN公司以生產UNIX伺服器為主,這種伺服器可以用於網站建設,所以它始終堅持"網路就是電腦"(The Network Is the Computer)的信條。當時,SUN公司也嘗試設計一種名為Java的程式語言,一開始準備將其用在家用電器市場的,Java程式碼靈活小巧,可移植性強,並能夠跨平臺操作,不侷限於某種作業系統,1995年,網際網路大行其道,SUN立刻意識到這是一個機會!因為Java語言結構新穎、可實時操作、而且安全性強,適合用於編寫瀏覽器軟體。由於SUN當時對開發軟體產品尚缺乏信心,所以它免費將Java放在網上,任由人們使用,沒有想到此舉使Java獲得極大的成功和好評。SUN公司的CEO斯科特·麥克尼利從此將自己稱做是"JavaMan"。

微軟為了打敗網景,跟SUN達成某項交易,SUN允許微軟使用Java言來開發IE瀏覽器,當IE成功問世時,微軟將IE捆綁進作業系統中,使得很多電腦使用者不得不使用IE作為預設的瀏覽器軟體。網景受到強烈的衝激,1996年春,網景擁有87%的市場佔有率,1998年就降到40%,最後它也不得不免費供使用者使用,終於在1998年11月,網景被美國線上(AOL)收購。

那麼原本是親密戰友的SUN與微軟是如何翻臉無情?以至Java最後也被Windows無情地拋棄呢?

·Java成了Windows中不受歡迎的客人

1996年9月的某個星期日,微軟資深的軟體工程師艾達姆·波茨瓦斯在幾經考量之後,提筆給時任微軟CEO的比爾·蓋茨寫了一封信,波茨瓦斯當時是微軟瀏覽器部門的主管,在信中,他非常懇切地提醒比爾·蓋茨注意一個正在形成的威脅,這個威脅不是來自別人,正是其盟友SUN公司建立的一種程式語言--Java,這種語言允許程式設計者一次性編寫程式程式碼、就可以在多個不同的作業系統上執行(如從IBM的大型機到Sun公司的Unix伺服器,再到WindowsPC機都能執行,甚至在手機平臺上也可以);而不需要針對每個計算機硬體和作業系統配置的不同而改動程式程式碼,並且這種語言在網路上是安全的。在信中,他寫到:"必須意識到Java不僅僅是一種語言,如果它僅只是一種語言,對微軟是不會造成威脅的。我們願意並且能夠容易地為它建立最佳的表現形式,事情可以圓滿解決了。但是事實上,Java絕不僅僅是一種語言,它是COM的替代者。"--而COM恰恰是Windows基於的程式設計模型。然後,波茨瓦斯用大約1000字解釋了使用Java程式設計是多麼容易,相反,當程式需要執行許多工時,使用C++程式語言則要用到相當多的複雜的程式碼,這比Java麻煩得多。波茨瓦斯也提出了一些對抗Java的方法,其中一條是悄悄地為Java提供某些擴充套件,使得用Java編寫的程式能夠在Windows中工作得更好,但是在其它平臺上卻不能執行。他警告說這項工作應當以誘導而不是衝突的方式來進行,最重要的是微軟必須意識到Java的力量,"我們首先必須承認Java正在與COM相競爭,然後想出對策,而不只是把頭埋在沙子中逃避問題。"

蓋茨在收到這封信時,正是他準備"閉關清修"的前幾天,原來比爾·蓋茨每年都要抽出一點時間來考慮微軟長期發展戰略,人稱"思考周計劃"。蓋茨顯然被這封信嚇壞了,他第二天就回信了:"這可把我嚇壞了。我不清楚微軟的作業系統要為Java的客戶應用程式程式碼提供什麼樣的東西,而這些東西將足夠讓它來取代我們的市場地位。瞭解這一點非常重要,是應該最優先考慮的事情。"(沒想到,這封信成為幾年後司法部針對微軟的反托拉斯案的呈堂證供。)

於是,Java成了Windows中不受歡迎的客人,微軟開始對其進行清掃,SUN又豈是好惹的?一場針尖對麥芒的好戲就開場了。

·Java與Windows的殊死鬥爭

作為一對死對頭,微軟和SUN一直官司不斷。1997年,Sun公司以歧視使用Java軟體,旨在維持其視窗作業系統的壟斷地位,違反反壟斷法為由起訴微軟,2001年1月,SUN勝訴,根據雙方達成的和解協議,微軟不得對Windows作業系統中包含的Java語言作任何改動,並獲賠2000萬美元。這是SUN首次與微軟的正面交鋒,誰想這為日後微軟拒絕支援Java語言埋下了伏筆,因為理由很正當,既然你SUN不准我對Java進行改動,而隨著作業系統的發展,不改動Java是適應不了新的形勢,那隻能棄用Java了。

然而,有關Java的事情還不算完,2001年年底,微軟在推出新版作業系統Windows XP和新版IE時,故意不安裝Java軟體,2002年的3月8日,SUN公司向美國加州地區法庭提出起訴,稱此舉造成它直接經濟損失高達10億美元。根據反壟斷法,原告可以要求被告支付實際損失三倍的賠償,因此SUN如果打贏了這場官司,也許最多可以得到30億美元的經濟賠償,看來SUN這回動真格的了!微軟豈能甘心,乾脆一不做二不休,開始了新一輪的報復,2002年6月,微軟稱從2004年起,微軟的Windows作業系統將不再支援Java語言,並解釋這樣做的原因是考慮到安全問題。2002年7月,微軟關閉了一個自動向Windows XP使用者提供Java軟體的站點,據微軟稱,此舉是因為Sun公司聲稱微軟沒有權利通過線上方式發行Java軟體,為了避免產生糾紛,只好停止此項服務。就在雙方口水戰日益升級之際,迎來了有關SUN訴微軟案的第一次聽證會。

SUN起訴微軟的聽證會被安排在2002年12月的第一週,當時,在巴爾的摩市下了近三年來最大的一場雪。整個城市幾乎都停止運轉。但是弗雷德裡克·摩茲法官堅持要求開庭,並且要求幾十位與案件有關的律師到場出席;據審判時一位目擊者說,為了保證早上能夠到庭,法官他自己在會議室中睡了一晚。

幾周後,也就是2002年12月23日,摩茲法官釋出了那份長達42頁的判決書,他裁定微軟公司必須在其Windows作業系統和IE中釋出與其競爭的Java程式語言。這份裁定書可謂是司法界的一部力作,在平實的、以第一人稱的敘述中,摩茲法官回顧了SUN和微軟之間關於Java鬥爭的歷史,充分展示了雙方各自的論據,相當藝術地解釋了為什麼要求在Windows作業系統中提供對Java的支援是對相關各方最好的選擇。從過去的情況來看,每當涉及複雜技術的訴訟時,法官經常在面對著術語時顯得無所適從。但是,摩茲法官給人的印象卻是對Java和.NET相當熟悉,而且他表現出強烈的支援SUN的立場,但是他那對微軟不利的判決是有技術和商業上的事實作為基礎的。

簡而言之,摩茲法官的意見是:在微軟的壟斷下,Java擁有一個並不健全的市場,比如說,大部分PC上所安裝的Java軟體要麼就是舊版本,要麼就是僅適用於Windows的版本,這使得其它軟體開發者對Java平臺產生了厭惡的情緒,這些都是因為微軟反競爭行為的結果,看來微軟已經利用Windows的壟斷地位來破壞SUN對Java的銷售渠道。樹立市場正義的唯一方法是糾正微軟的所作所為,"阻止微軟從它過去的錯誤中獲得將來的利益!"

·拉鋸戰仍在繼續

雖然2002年12月,法官已經作出對SUN有利的判決,並且再一次召集雙方律師,舉行了特別聽證會,2003年1月15日,摩茲法官下令微軟必須在120天完成在其視窗軟體中載入Java的工作。

2003年2月21日,微軟正式提出反訴,稱此案有違公平,微軟公司在其上訴請求中聲稱,即使微軟不在Windows系統中釋出Java技術,Sun公司也不會馬上就面臨任何"不可挽回的傷害"。Sun公司則聲稱說,在Windows系統中釋出Java技術是一個時間敏感性的問題,一再推遲可能會給Sun公司及其技術帶來損害。美國第四巡迴法院已經宣佈將在今年4月3日舉行初步庭審,以此看來,此案究竟如何了結,還是一個未知數。

Java作為一個跨平臺水平,一經問世就受到人們的歡迎,據統計,全世界目前有200多萬Java程式設計師。但即使Java獲勝,也仍然耽誤了最好的發展時機,希望微軟早已經推.NET戰略,並且C#語言就是專門針對Java開發出來的語言,微軟的各種軟體在市場上的佔有率都很高,即使最終的裁決對Java有利,也不會改變微軟目前雄踞軟體世界的局面。

以微軟、SUN的財力物力,對付訴訟的經驗來看,一場拉鋸戰仍然是在所難免的了。

轉載至:http://blog.itpub.net/94135/viewspace-449