無線行動軟體技術
Submitted by mei on 四, 2008-06-12 22:40
無線行動軟體技術主要包括: 裝置(Device)的特性, OS, 開發與執行環境. 行動資訊管理, OMA, MMS 等幾部分.
無線行動軟體技術主要包括: 裝置(Device)的特性, OS, 開發與執行環境. 行動資訊管理, OMA, MMS 等幾部分.
回應
kaiming6591
二, 2008-12-30 12:04
Permalink
Android - Google Phone
1. Android是Google的手機作業系統和相關軟體的總稱,和一般在說「Symbian」、「Windows Mobile」時是相同的。 備註:依當時我去參加Android Platform論壇,其中說到,Android嚴格來說只算是Application,而其OS為Linux,Android只是架構在Linux之上!
2. Android有兩個不同,但相關的組成元件:以 Linux 為核心的 Android 行動平台(這間公司是 Google 在 2005 年買下的)和 Open Handset Alliance,一個由 33 間手機製造商、軟體商和電信業者組成的 Android 推廣聯合會。
3. 並沒有所謂的硬體「Gphone」,而 Google 也沒有打算(或至少沒有公開打算)要進入手機硬體市場。到時候真的做手機的,是 HTC、Samsung、LG 這些手機廠,而因為 Android 的程式碼是開放式的,理論上任何人都可以以 Android 為基礎開發新手機。
4. 雖然平台是開放的,但並沒有辦法保證裝到手機上了之後還是開放的。手機商和電信業者有權利決定是否在特定的機種上允許第三方軟體的安裝。
5. Nokia、Apple、Palm 和 Microsoft 不在這個 33 間公司的名單中。Palm 稍早發佈了新聞稿表示將繼續在 Palm OS 平台上支援 Google 的服務。
6. 第一批 Android 手機預計在 2008 年下半年上市。傳聞中 Google 有用一台 HTC 的概念機「Dream」來示範 Android 平台,而這隻概念機有可能成為第一批使用 Android 的手機之一。
系統架構
至此,我們可以看出 Google 的原則之一“Do no evil”是很有意思的。他們自己的確承諾,而且也願意公開 Android 的程式碼,但是他們給了其他人 “Do evil” 的選擇。這樣還算不算是 Do no evil 呢?當作哲學問題吧。
關於 Android 對 kernel 的修改,Google 的簡報還提供了兩個重點:
1. Binder (IPC):提供有效率的程式間溝通管道(Inter-Process Communication)。Android 系統中有很多服務,而上層的應用程式經常要取用這些服務,一般的 Linux 系統已經提供了不少 IPC 的方式,不過 Android 還是搞了套自己的。雖說文件中解釋原因為「一般 IPC 會造成額外資源花費,以及安全問題」,但其實這些都是可以基於原有架構在 kernel 外頭解決的,為何要改在 kernel 裡頭,筆者對此存疑,也只能等找時間去研究程式碼才知了。
2. Power Management:與桌上型電腦或筆記型電腦不同,手持裝置的電源一向相當有限,必須無所不用其極的去想辦法省電,但又不損及順暢的使用經驗。Android 在此採取了頗為積極的作法:「沒有人說要用,就關掉」。例如某程式在放 MP3 音樂,於是此程式會需要 CPU 的計算能力,那就得開口要。如果與此同時沒其他程式在執行,那麼 LCD 顯示器就可能被關掉,藉以省電。另一特別處,是在於 Linux kernel 一般考慮的都是在電腦上的作法,所以多半只有進入暫停、休眠等等的選擇,而不會如此細緻的去控制到各個小裝置的電源供應。
系統函式庫
這裡說的系統函式庫是指 “native libraries”,是跑在系統裡頭的函式庫,採用的語言不是 Java,提供一些基礎建設。裡頭有幾個值得一提的元件: