Email me: jollen # jollen.org

more: Jollen 的 Embedded Linux 教育訓練

« September 2008 | (回到Blog入口) | November 2008 »

October 2008 歸檔

October 15, 2008

Neo FreeRunner 應用程式開發概念圖

Openmoko 的 distribution 現在有許多不同的版本,一大堆名詞總讓人一開始就一頭霧水,像是:Om2007.2、Om2008.8、FDOM、ASU等等。剛開始接觸 Openmoko 以及 Neo FreeRunner 的同學,經常要花一些時間認真讀 Openmoko wiki 才能了解通盤概念。

許多同學只是想要在 FreeRunner 上寫寫簡單的小程式,一開始遇到這些從沒聽過的名詞,花很多時間,有時還是搞不清楚「怎麼在 FreeRunner 上寫小程式」,總是會有一些挫折感。因此,在這裡整理一份簡單的「Neo FreeRunner 應用程式開發概念圖」,幫助同學建立整體概念。

怎麼在 Neo FreeRunner 上寫一個簡單的小程式呢?請看下圖的說明。

programming_freerunner.png

Om2007.2 與 Om2008.8 都是 Openmoko 的官方版本(official distribution),Om2007.2 與 Om2008.8 除了有 Openmoko 自已的開發成果外,也使用了許多 FOSS(Free and Open Source Software)的套件,因此,需要將 Openmoko 的成果與這些 FOSS 套件整理成一個完整的散佈套件,以提供 Openmoko 手機使用,這就是「Openmoko Linux」或「Openmoko Linux distribution」。這樣的概念就像是 Ubuntu Desktop 是一個給個人電腦使用的 Linux distribution,Fedora 也是一個 Linux distribution。

Om2007.2 是 Openmoko 官方的第二個釋出版本,middleware 的主要元件為 libgsmd 與 GTK+。Openmoko 提供 Om2007.2 的 pre-built toolchain 以及一個 sample(放置於 pre-built toolchain 的 openmoko-sample2 目錄)讓開發者可以很方便地撰寫程式,並將編譯好的程式打包成 opkg 後安裝到手機。

Om2008.8 是 Openmoko 官方的第三個釋出版本,同時也是很重要的一個版本,Om2008.8 主要的變更是使用了 Qtopia 的成果,將 Qtopia 移植到 x11 環境,並與其 GTK+ 的環境做整合。此外,也加入了 EFL(Enlightenment)的 UI 環境,並加入了一個可動態安裝套件的 Installer 程式,以及 Locations GPS 應用程式。在視窗管理方面,採用 EFL 的 Illume;同時也有較佳的 theme 支援,也加入了 Qtopia keyboard。Om2008.8 可同時執行 Qtopia/EFL/GTK+/x11 應用程式,並透過 D-Bus 技術做整合,可以說是一個創新的手機軟體平臺。

在 Om2008.8 平臺上,除了能使用 GTK+ 的 pre-built toolchain 來寫程式外,Openmoko 也提供了新版本的 pre-built toolchain。如果您想使用 EFL 來寫程式,可以安裝新版本的 pre-built toolchain,並透過 opkg-target 來安裝 EFL 的開發環境(libevas-dev 與 libetk-dev)至 pre-built toolchain,即可使用 C 來撰寫 EFL 程式。同樣地,我們可以使用上述的 openmoko-sample2 來編譯 EFL 程式,並打包成 opkg 後安裝至手機。

另外一個方式則是使用 Python 來撰寫 EFL 應用程式,直接將 Python script 上傳到 FreeRunner 即可執行,當然也可以打包成 opkg 後再安裝。

過去曾使用 Qtopia 撰寫程式的同學,也能在 Om2008.8 上執行 Qtopia 應用程式;不過,如果是 Qt 應用程式的話,雖然 Om2008.8 裡有包含 Qt library,但比較不建議使用。

October 16, 2008

「Openmoko Linux 2008 開放手機新體驗」簡報上線

今天受邀至台北科技大學資訊工程系演講,講題是「Openmoko Linux 2008 開放手機新體驗」,正好能接續昨天的日記「Neo FreeRunner 應用程式開發概念圖」,在簡報的最後,附上了一小部份的講義「如何在Om2008.8 撰寫 EFL 應用程式並編譯」供同學們參考。

下載簡報 [Openmoko Linux 2008 開放手機新體驗]。Openmoko 近期有許多新消息,有興趣的同學可以至 [Openmoko 中文 Wiki] 查詢。

延伸閱讀

2008.10.15: Neo FreeRunner 應用程式開發概念圖

October 27, 2008

移植 Android 到 Neo1973 與 Neo FreeRunner

Android 於 10 月 21 日正式公開原始碼 [Android is now available as open source],Openmoko 的開發者社群第一時間也出現許多討論 [Android open sourced]。

很快地,「移植 Android 到 Neo1973 與 Neo FreeRunner」的工作也開始了,目前這項移植工作還是「underway」進行中;不過,社群開發者仍紀錄了最新的移植狀況在 Openmoko wiki 上 [Android]。

相關資源

* 2008-08-25: Andorid是否可以porting到FreeRunner

October 31, 2008

Openmoko FreeRunner 與 Google Android: 現況與想法

自從 Android 公開原始碼後,Openmoko 的社群便開始積極進行移植的工作。最近在網路上也開始看到許多這方面的報導:

* Rumor: OpenMoko Android Phone In November?
* OpenMoko Jumps On Android Bandwagon
* Openmoko將在11月推出Android手機?
* 开源手机OpenMoko转投Android门下
* 预计Openmoko将在11月推出Android手机?

這些報導看起來比較像是「謠言」(rumor),有些報導甚致還放了圖片,不過,有圖不一定有真相,明眼人一看就知道這些圖都是「後製」出來的。但是,Openmoko 社群正在移植 Android 至 FreeRunner 也是一個事實。從目前 Openmoko 社群的移植工作來看,主要進行的項目有:

1. 修改 ARMv5 指令集。由於 FreeRunner 採用的 s3c2442 處理器是 ARMv4 指令集,因此必須修改低階的 assembly code。

2. 硬體支援的部份。讓 Android middleware 能在 FreeRunner 的 Linux kernel 上執行。

3. 修改 Android 的 build system。讓 Android 的 build system 能製作 jffs2 格式的 image file,這也是 FreeRunner 採用的 image file 格式。

這些工作看起來都有很不錯的進展,社群開發者也已經將部份成果 patches 提交到 [Android Open Source Project]。Android 開放式手機平臺成功吸引全球目光,但對社群開發者來說,仍然缺少能支援 Android 的「開放手機硬體」,雖然市面已經推出 Android 手機,但仍不是「開放式」硬體,對 open source developer 來說,少了那麼一點樂趣。

如果 FreeRunner 真的能執行 Android 的話,想必一定可以吸引對 Android 有興趣的開發者進入 Openmoko 社群,對 Openmoko 社群的成長也會有所幫助。FreeRunner 是一個完全開放式的手機硬體,因此對 application 開發者、middleware 開發者以及 kernel 開發者來說,都是一個充滿許多樂趣的平臺。

目前台灣也有許多大學實驗室投入 Android 平臺的研究,但不足的地方在於「硬體裝置」的取得。當 FreeRunner 能真正支援 Android 時,對這些研究人員來說,想必也是一個好消息,因為可以把 Android 的研究成果,實際放到真正的手機裝置上執行與測試。

關於 October 2008

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

前一個存檔 September 2008

後一個存檔 November 2008

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

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