業者想法各異 Java手機的未來發展出現歧路
上網時間 : 2007年07月16日
摩托羅拉、諾基亞和昇陽(Sun Microsystems)這些Java巨擘,針對行動電話軟體的未來發展方向,卻各自採取著不同的做法。這幾家廠商的商用化Java產品間存在著逐漸擴大的差異,同時對於如何開放Java的意見也大相逕庭,這已使廣大的Java開發社群面臨著分裂的危機。
Sun最近針對行動電話發佈了高階軟體開發套件Java Mobile FX,主要是基於該公司最近從Savaje Technologies公司收購而來的桌上型Java軟體。Sun還發佈了開放Java原始碼的計劃。
摩托羅拉和諾基亞公司的主管們表示,Sun發佈了行動電話軟體開發的新聞著實使他們大吃一驚。他們還表達了對於Sun開放原始碼計劃細節的關切。
摩托羅拉和諾基亞這兩家公司的Java發展藍圖,也都是來自於不同開放原始碼軟體庫中的軟體。
“Sun的開放原始碼計劃中有許多議題,使我們感到不安。”諾基亞Java技術資深總監Jon Bostrom表示。在他四年前加入諾基亞之前,Bostrom曾經是Sun公司行動Java研發團隊的主導者之一。
“摩托羅拉開放Java原始碼的方式與IBM完全不同,與諾基亞和Sun也有差別,因此引起了整個Java Community Process (JCP)組織的顧慮。”ARM公司資深產品經理Chris Porthouse指出。ARM公司的晶片可執行於大部份的Java行動軟體。JCP是Sun公司針對建立Java標準的一個產業組織。
各方均同意Java必須開放,而且必須支援下一代具有豐富多媒體功能的更強大手機。他們還希望行動Java可支援Web2.0,以便能讓用戶能透過混搭不同應用的程式碼來建構服務。但是,關於如何最有效地實現這些目標,每家公司似乎都有各自的想法。
Sun發表用Java Mobile FX軟體設計的‘jPhone’原型手機。
Sun推出jPhone
Sun計劃將其Mobile FX視為完整的二進位軟體方案,可用來設計出繪圖和功能豐富的手機,使其外觀感覺就像Apple iPhone一樣。Sun的主要目標是台灣的行動電話製造商,希望將其軟體搭配於明年初出貨的手機中。
為了引起人們的關注,Sun於日前舉行的JavaOne會議上,利用大眾電腦(First International Computer)公司所開發的手機,展示了其軟體原型。
Sun的一位工程師透露,其程式碼是根據Java的桌上型標準版(SE)轉移到Linux核心的基礎上完成的。Sun正擴展原始 Savaje軟體的應用編程介面,使其支援行動服務架構(MSA),這是一套包括Web服務功能的Java標準。該程式碼至少需要32MB的RAM和 200MHz的ARM9處理器。
Java Mobile FX是“一個可將網路盡收掌中的完整桌上型規模環境。”Sun公司軟體部門執行副總裁Richard Green表示。
Sun公司執行長Jonathan Schwartz對於該軟體充滿寄予厚望,他希望使用該軟體的手機最終發展成為開發中國家鏈結至網際網路的設備,“我們總認為PC才能帶消費者進入網際網路,但這並不能反映這個世界的真實機會。”
其他人則抱著懷疑的態度。“Savaje技術以前曾經發表過,但並未成功,因此我不相信Sun可為其帶來多大的改變。我不能理解其價值主張為何。”諾基亞的Bostrom表示。
“SE庫並不能符合32MB的要求,因此他們必須製作子集。我很想知道他們是如何進行的”,他補充道。事實上,Sun推出Mobile FX後,也將會與諾基亞等Java合作夥伴直接形成競爭關係。
“我們正為行動電話提供完整的軟體堆疊,如諾基亞60系列軟體,因此,我我們將會與其競爭。”Sun軟體部門用戶解決方案執行總監Tim Crame表示。
另外,針對下一代行動電話,諾基亞與Sprint正展開合作,並採取一種完全不同的方式。雙方試圖將Java程式碼的應用,從以企業應用為主的OSGi聯盟首次擴大到行動系統中。他們將以預計今年夏天推出的諾基亞E系列手機為一開始,此手機將在Sprint的3G蜂巢式網路上使用。
另外,Sprint公司還將於明年在WiMax網路上測試該軟體。
將行動電話作為伺服器
OSGi支援嵌入式Web伺服器功能和動態可下載系統軟體等物件,因此本質上也可將手機當成一台伺服器。諾基亞和Sprint希望以此打開協同運算模型之門,使手機成為更具彈性與互動性的設備,無需使用中央電腦,就能隨時產生社群聯網功能等服務。
“將手機當作是製造商生產的固定商品,這種想法現在已經落伍了。”Bostrom說,“整個設計週期現在變得太長,大約需要18個月的時間,而對於手機內建的各種功能也必須取得許多人的意見一致。因此,等到手機上市後,已經無法滿足用戶的需要了。”
OSGi軟體更具有彈性,因為“它提供了行動手機中前所未有的元件模型和中介軟體層。”Bostrom指出。
這兩家公司還在軟體中設計了彈性化的管理功能,以便使電信廠商或公司的IT人員能遠端控制或維修手機。
“這正是使Sprint感到興奮的事。這些功能將可為手機帶來真正的差異性。”Bostrom表示。
邁向Java手機的明日之路-摩托羅拉、諾基亞和昇陽對於Java平台存在歧見。
摩托羅拉採用MIDP
摩托羅拉公司想藉由採用Mobile Information Device Profile(MIDP)的Java子集來實現Java的統一。“實現統一的唯一途徑便是利用共通程式碼基礎,而我們在基於MIDP的Java執行環境方面擁有10年的豐富經驗。”摩托羅拉公司蜂巢式事業部研究員Mark VandenBrink指出。
摩托羅拉公司早在1999年就推出了使用MIDP1.0的首款Java手機。去年,該公司發佈了建置MIDP2.0的開放原始碼版本。現在,該公司正著手開發Java標準組織正定義的MIDP 3.0,計劃在今年稍晚發佈。
現正進行定義MIDP 3.0的專業團隊是Java標準組織工作中最大規模的一次,共動員了100多名工程師,VandenBrink表示。新版MIDP建立了被稱為liblets的一種庫單元,可以透過手機依需要而進行動態下載。它還能提高手機的安全性和圖形性能。
MIDP是未來行動設備的最佳基礎,VandenBrink認為。“OSGi軟體雖然有趣,但對大多數用戶而言卻不夠精簡,難以進行有效地建置”,而且它在行動系統中也缺乏追蹤記錄,他表示。
某些分析人士擔心,隨著Sun推出桌上型版本的Java Mobile FX,Sun可能不再支援基於MIDP的Java行動子集。Sun公司的Green在一次記者會上否認這說法,但他透露,Sun正考慮發佈用於行動系統的 Solaris作業系統嵌入式版本,而此舉也為行動應用帶來分裂的可能性。
“我們將竭盡全力開發行動Java平台,”Green表示,“我們對於Solaris的嵌入式版本已經展開了充分的討論。如果為其投入大量精力其實一點兒也不足為奇,但我們的當務之急是先做Mobile FX。”
雖然這項開發計劃的細節是全新的想法,但潛在的問題則仍與Java一樣古老。Sun所開發的語言多年來已經被廣泛用於手機中,目前使用 Java的手機可能有18億部,據Sun透露。但手機上的Java建置方式變化太多,使得開發人員不斷抱怨必須分別為每家OEM或廠商編寫特定的程式。
“Java曾經承諾‘一次寫入,隨處執行’,但至今卻尚未能實現該目標。”摩托羅拉的VandenBrink說,“這是程式碼基礎的標準化問題。”
多年來,摩托羅拉等Java支持者一直要求Sun進行更為開放的Java,以便能形成一種共通的基礎。但是Sun最近的舉動似乎反而進一步加深了分化。
在JavaOne會議上,Sun公司聲稱正透過2.0版的General Public License(GPL),完成其OpenJDK開發套件的開放原始碼工作。該公司還成立了Java開放原始碼的臨時理事會,由兩位Sun公司主管和三位開放原始碼的積極支持者所組成。
諾基亞的Bostrom批評Sun的舉動指出,GPL比作為Apache授權模式替代方案的限制條件更嚴格;同時,理事會賦予了Sun太多的控制權。他指出,“在實際的開放模型中,每個人都有權決定誰有控制權”,他說。“而Sun的舉動卻說明事情都已安排好了,這對諾基亞來說是不公平的。對我來說,一切似乎還不夠開放。”
諾基亞不僅積極參與了Sun公司成立的JCP標準組織,而且也加入了OSGi聯盟的Java標準支持者所促成的Eclipse Foundation。
摩托羅拉的VandenBrink表示,Sun公司透過OpenJDK,已經使其Java編譯器和工具實現開放的原始碼。然而,與摩托羅拉不同的是,Sun並未開放其執行環境,如最新的Mobile FX程式碼。
IBM公司Java技術總監Mark Thomas對於Sun成立理事會的看法則較溫和些。他指出,這只是一個臨時組織,從只有5位成員的小型團隊開始運作將有助於提高工作效率。Thomas 也讚揚Sun的理事會還擴展至開發人員,並邀請他們加入理事會;他深信,像IBM這樣的大型公司可以隨著計劃的進展而擁有最終決定權。
除了針對電腦、行動和消費環境而統一Java開發工具之外,Sun最近還發佈了一款專為內容開發人員所提供的開發工具和腳本語言工具套件Java FX。
Rick Merritt