Email me: jollen # jollen.org

more: Jollen 的 Embedded Linux 教育訓練

« January 2009 | (回到Blog入口) | March 2009 »

February 2009 歸檔

February 5, 2009

二零零九年十大 Linux 與 open source 發展預測、Openmoko 新武器

幾天前,一則新聞「2009 年 Linux 與 open source 十大預測」指出,Android 將會大放異采。報導原文可見 [10 predictions for Linux and open source in 2009],另外,這裡也有一份簡體中文版的報導 [2009年Linux和开源软件的10大预测]。

十大事件預測的第一名是 Android,報導推測指出,2009 年將是 Android 重要的一年。文中也提到 Openmoko 的 GTA02(Neo FreeRunner)也會採用 Android 系統。對於 FreeRunner 採用 Android 系統的話題,網路上有許多討論,不過簡單來說,移植 Android 到 FreeRunner 上是社群進行的一個專案,而將 FreeRunner 搭載 Android 進行市場推廣與銷售,則是行銷端的一個想法。至於未來是否會讓 GTA02 搭載 Android 並推廣到其他市場,則是一個「還不確定」的問題。

此外,Openmoko 仍舊持續在開發自已的 software stack。在 Om2008.8 之後,將起而代之的新版本是 [FreeSmartphone.Org] 以及 [Paroli],這是一個基於 [Enlightenment] 與 Python 技術的行動通訊平臺,簡單來說,FSO 與 Paroli 將 Python 帶進行動通訊裝置,讓開發者能只用 Python 進行手機軟體發展;新的 FSO/Paroli 底層系統則是採用 Enlightenment 技術。

在十大事件預測報導中的第八名就是 Enlightenment,報導指出「Enlightenment 桌面將會推出穩定版 E17」,可見 Enlightenment 也會是 2009 年受矚目的一個 open source 專案。

February 19, 2009

Fyp:LXDE 與 FreeRunner

過去 Debian 的使用者可以將 [Debian for FreeRunner] 安裝在 FreeRunner 上,並安裝 LXDE 享用輕量級的桌面環境。現在有一個基於 Debian for FreeRunner 的新 distribution 己經將 LXDE 正式整合進來了。

源自台灣,現在已是知名的開放源碼專案 [LXDE] 現在已經被 Openmoko 的社群移植到 Neo FreeRunner 了。這個以 LXDE 桌面環境,以及 [Zhone] 為基礎的新 distribution 稱為 [Fyp],以下是 Fyp 的實機畫面。


(圖片來源:Openmoko Wiki)

Zhone 全名是 Zen Phone,也就是「禪之手機程式」。Zhone 是一個簡單的撥號與簡訊收發程式,Zhone 基於 [FSO] 的應用程式框架,全部採用 Python 撰寫。一個手機的撥號軟體,也可以做得這麼簡約有內涵,或許正是「禪之手機程式」所要表達的意境。

不過根據 [大陸網友的實測],Fyp 在 FreeRunner 上比較難以操作,原因是使用手指觸控,比較難以操作傳統的桌面環境與應用程式:「除了zhone这个大大的界面外,其他的程序用手指简直无法操作」。因為 FreeRunner 的觸控螢幕只有 2.8 吋,所以應該幾乎很難以手指進行操作;但從這個使用者的角度來看,客製化桌面環境的應用,在未來的消費性裝置就是一個重要的技術了。目前市面上有許多小筆電(Netbook)也引進了客製化桌面的技術,讓使用者能更方便操作系統。

February 20, 2009

自行編譯 Neo FreeRunner 的 kernel

怎麼編譯 Openmoko 的 kernel for Neo FreeRunner 呢?請依照以下步驟進行操作。

1. 取得 Neo FreeRunner 的 kernel 原始碼

Openmoko 專案的所有原始碼都存放於 git.openmoko.org,到 [Openmoko 的 kernel 原始碼目錄樹] 底下,可以看到裡頭有完整的 kernel 原始碼,以及開發中的分支。首先執行以下指令,將所有的 kernel 原始碼取出:

$ git clone git://git.openmoko.org/git/kernel.git linux-2.6

所有的原始碼都被放置於 linux-2.6/ 目錄下。

2. 取出 Andy 的 branch

Andy 是 Openmoko 的 kernel 開發者,我們想要使用的是開發中的版本,就要取出 Andy 的分支。Openmoko 的 kernel 開發者,會隨時將新程式碼放置於開發中的版本。Openmoko 的 kernel 也會與 mainline 的 kernel 做合併(patch merge)的動作。取出 Andy branch 的指令如下:

$ cd linux-2.6
$ git checkout origin/andy-tracking

3. 取得 GTA02 的 kernel 設定檔

Openmoko 提供 GTA01/GTA02/GTA03 的 kernel 設定檔,只要將 GTA02(Neo FreeRunner)的設定檔取出使用即可,不需要再自行設定 kernel 選項:

$ cp arch/arm/configs/gta02_moredrivers_defconfig .config

4. 取得 Openmoko 的 toolchain

要編譯 kernel 就需要 cross toolchain,Openmoko 提供一份預先建立好的 ARM9 toolchain,請由 [這裡] 下載。請下載 20080916 的版本,例如:openmoko-i686-20080916-arm-linux-gnueabi-toolchain.tar.bz2。

Toolchain 的安裝方式是先切換到根目錄('/'),再解壓縮:

$ cd /
$ sudo tar jxf <your-path>/openmoko-i686-20080916-arm-linux-gnueabi-toolchain.tar.bz2

解壓後,可以在 /usr/local/openmoko 目錄下找到 toolchain。

5. 下載 build-kernel.sh/build-image.sh/mkimage

到 [這裡] 下載二個 script 以及 mkimage 工具,並放置於 kernel 原始碼目錄下。別忘了變更屬性為可執行:

$ chmod a+x build-*.sh

另外,將 mkimage 變更屬性後,搬移到系統標準路徑下:

$ chmod a+x mkimage
$ sudo mv mkimage /usr/sbin

Neo FreeRunner 使用 U-Boot 開機程式,所以必須使用 mkimage 工具將 kernel image 包裝成 U-Boot 格式。此工具的原始碼於 U-Boot 原始碼目錄裡可取得。

6. 開始編譯 kernel

先執行 build-kernel.sh 編譯 kernel:

$ ./build-kernel.sh

編譯成功後,再執行 build-image.sh 以產生最後的 image 檔:

$ ./build-image.sh

完成後,可在 kernel 原始碼目錄下找到 'uImage-GTA02.bin' 檔案。uImage-GTA02.bin 就是支援 Neo FreeRunner 的 kernel image 檔,將此檔案以 dfu-util 燒錄到手機裡即可。

以上過程若有任何問題,可以到 [Openmoko 正體中文站] 詢問。

February 26, 2009

CTimes 矽導論壇:Android元年 vs 山寨機氣象變化元年

誰能掌握山寨機的新商業元素,誰就能逐鹿中原。(原文刊載於零組件雜誌2009年1月份)

Android與山寨機的關係,是一個特別另人感興趣的話題。最近實地與北京Androidin社群核心成員交換許多想法,有些觀點很值得台灣硬體廠商參考,筆者就一些討論,整理出部份觀察心得與大家交流。

Android在中國地區投下一顆能量彈,這可能是一顆破壞力驚人的炸彈,不過,最可能的地方是它具備「定向精確爆破」的能力。山寨機的成功,讓不管是本地,或是外來的廠商,都打著「山寨模式」的主意。山寨模式在大陸地區出現快三年的時間,在中國本地的銷售數字為一億台,這還不包括「外銷」到海外的數量。這段期間,中國幾家山寨機廠商,也在短短時間內,一躍成為前幾大的本土品牌手機商。

山寨商的腦筋動得快,現在更把主意打到Android上頭。根據山寨商的說法,Android在中國地區會是一個很好的機會,也就是「智能型Android山寨機」將是下一個山寨風潮。與Android社群合作開發Android系統,是山寨商近來特別感興趣的項目。

根據Androidin(中國本地最大Android社群)的說法,已經有幾家山寨商表示對Android智能手機的興趣,同時也希望能與中國本土Android社群合作,開發不同市場需求的軟體,並針對特定市場做銷售。這也正式開放手機平臺最大的優勢,根據客戶需求彈性並快速客製化軟體的「市場定向爆破」能力。

Android社群在大陸地區越活躍,相對的「Android山寨機」就更有機會。過去由晶片廠商提供完整山寨機軟硬體解決方案的模式,將會逐漸轉變為由社群提供Android山寨機軟硬體解決方案。軟體方面,就不需要多說了,以Androidin社群為例,其社群研發能量,以及社群的人員成份,都非常有實力。以硬體來說,社群需要的是開放式的硬體平臺,因為社群人員需要在此平臺上優化Linux核心,才能提出效能穩定的解決方案。

這樣的變化與市場機會,對台灣廠商來說是很好的轉型機會。若是山寨商接受了Android社群提出的解決方案,那麼品牌硬體就會是一個發展方向,因為在操作系統與軟體可以由使用者任意更新(更換)的情況之下,一個受社群、山寨商以及使用者信賴的手機裝置,就會具有相當的潛力。

在研發方面,硬體廠商確實需要即早建立Linux核心與驅動程式的研發能力。大陸地區有許多具備Linux核心開發能力的社群以及開發者。山寨機廠商的強項是在銷售以及通路,因此研發的工作則是落在晶片供應商,或是Android社群上,這就是大家所知道的「山寨機模式」。

與傳統山寨機相比,Android山寨機需要一些不同的元素,誰能掌握這些元素,誰就能逐鹿中原。

(作者為Androidin台灣地區連絡人,連絡信箱:jollen@androidin.com)

關於 February 2009

此頁面包含了在February 2009發表於Jollen's Blog的所有日記,它們從老到新列出。

前一個存檔 January 2009

後一個存檔 March 2009

更多信息可在 主索引 頁和 歸檔 頁看到。

Top | 授權條款 | Jollen's Forum: Blog 評論、討論與搜尋
Copyright(c) 2006 www.jollen.org