Maemo
Maemo(マエモ)は、ノキアのスマートフォンおよびInternet Tabletというハンドヘルドコンピュータシリーズのオペレーティングシステム。当初はInternet Tablet OSと呼ばれていた。
開発者 | ノキア |
---|---|
OSの系統 | Linux |
ソースモデル | 大部分はオープンソース、一部クローズドソース |
最新安定版 | 5.0 PR 1.3 / 2010年10月25日 |
アップデート方式 | APT と Flashing |
パッケージ管理 | dpkg |
プラットフォーム | ARMアーキテクチャ (Nokia Internet Tablet) |
カーネル種別 | モノリシック (Linux) |
既定のUI | Hildon UI |
ウェブサイト | maemo.org |
他のハンドヘルド用オペレーティングシステムと似ており、あらゆるアプリケーションや設定にアクセスできる「ホーム」画面を中心としたインタフェースになっている。ホーム画面は、アプリケーション起動エリア、メニューバー、カスタマイズ可能エリアなどに分かれ、RSSリーダー、インターネットラジオプレーヤー、Google検索ボックスなどを表示できる。
MaemoはDebian GNU/Linuxベースで、GUI、フレームワーク、ライブラリなどの大部分はGNOMEプロジェクトの成果を使っている。ウィンドウマネージャにはMatchboxを使い、GUIおよびアプリケーションフレームワークにはGTKベースのHildonを採用。
概要
編集Maemoのデフォルト画面は「ホーム」画面、すなわち全てのアプリケーションや設定にアクセスできる中心点である。ホーム画面は以下のようなエリアに分けられる。
- 画面左端に縦に細長く位置しているのがタスクバーで、ウェブブラウザ、通信、アプリケーションメニューなどのアプレットがあるが、内容は変更可能。
- 画面上端の左半分に位置しているのがメニューバーで、アプリケーション名とウィンドウタイトルを表示し、そのアプリケーションのメニューへのアクセスを提供する(File、Edit、View、Tools など)。
- 画面上端の右半分に位置しているのがステータスバーで、バッテリー寿命、無線接続、音量、Bluetooth、明るさなどのアイコンが並んでいる。こちらも内容は変更可能。
- 上記以外の画面の大部分はホームアプレットを表示しており(MacintoshのDashboardのようなもの)、データを表示したり、アプリケーションへのショートカットを表示したりできる。デフォルトではRSSリーダー、インターネットラジオプレーヤー、Google検索ボックス、アドレス帳が配置されているが、もちろん変更可能である。
インタフェースにはタッチスクリーンか方向パッドとセレクトボタン、バック/メニュー/ホームボタンを使用する。文字入力は、手書き文字認識かソフトウェアキーボードが使え、ノキアのN810のようにハードウェアがキーボードを備えていればもちろんそれも使える[1]。
MaemoにはMozillaベースのMicroBウェブブラウザが付属しており、Adobe Flashも完全サポートしていて、無線接続で操作可能である。800×480の画面解像度をサポートしており、大抵のウェブページは水平スクロールせずに閲覧可能。既知の無線ネットワークに自動的に接続し、RSSフィードと電子メールをダウンロードし、自動的に切断することが可能[2]。
ソフトウェアのインストール/アンインストールはアプリケーションマネージャで行う。複数のソフトウェアリポジトリを登録して自動的に更新することも可能。アプリケーションマネージャはインストール済みの全てのソフトウェアの概要を表示できる。USBでPCと接続して同期させることも可能。ユーザーファイルは標準的なリムーバブルストレージと同じように扱える[2]。
コンポーネント
編集MaemoはDebian GNU/Linuxを携帯機器向けに軽量化したバージョンである[3]。GUIはX Window Systemベースで、ウィンドウマネージャにはXomapとMatchboxを使用。またGUIにはGTKツールキットとHildonのウィジェットとAPIを採用している[3]。
通常のDebianで使われている GNU Core Utilitiesの代わりに組み込み機器や携帯機器向けパッケージであるBusyBoxを使い、必要なメモリおよびストレージ容量を削減している(そのぶん機能は若干制限されている)[4]。
主要サウンドサーバとしてESDを採用し、搭載したメディアプレーヤーはGStreamerを使用している。GStreamerがサポートするファイルフォーマットはGStreamerプラグインをMaemo SDKでコンパイルすることで拡張可能である[5]。
ウィンドウはMatchboxウィンドウマネージャが管理しており、一度に1つのウィンドウだけを表示する。携帯機器では画面が小さいため、この方が扱いやすい。
ソフトウェア
編集Maemoには最初から各種アプリケーションが含まれているが、様々なリポジトリから新たにアプリケーションを追加することが可能である。その際に組み込みのパッケージ管理システムであるアプリケーションマネージャを使うこともできるし、APTとdpkgを使うこともできる。
同梱されているアプリケーションとしては、MozillaベースのMicroBブラウザ、Adobe Flash、Gizmo5、Skypeなどがある[6]。
サードパーティー製アプリケーション
編集LinuxとMaemoの大部分がFLOSSであるため、アプリケーションの移植は簡単である。このためサードパーティー製アプリケーションが多数移植されている。Maemo専用に開発されたアプリケーションもあるが、多くは既存のLinux用プログラムの移植である。以下に主なものを挙げる。
- メディアプレーヤー: Canola, MPlayer
- インターネット: Claws Mail, Modest, Midori
- オフィスアプリケーション: Gnumeric(表計算), Abiword(ワープロ)
- インスタントメッセンジャー: Pidgin
- VOIP: Gizmo5, Skype
- ゲーム: The Battle for Wesnoth
- その他: FBReader(電子書籍リーダー), GPE(OpenSync互換のPIM), rdesktop(RDPリモートアクセス), ScummVM(ゲームエミュレータ), Wayfinder、GPSナビゲーションソフト), Free42S(HP-42S電卓エミュレータ), gPodder(ポッドキャスト・クライアント), Vagalume(Last.fmプレーヤー), VNC
- Debian: ARM Debian ディストリビューションをMaemoアプリケーションとしてインストールでき.[7]、各種パッケージを利用可能(OpenOffice、Firefox、Java、GNOMEデスクトップなど)
サポートしているファイルフォーマット
編集ソフトウェア開発
編集ソフトウェアはMaemo SDKを使ってC言語で開発するか、Jalimo JVM[8]を使ってJavaで開発できる。他にもPython、Ruby、Monoが使える。
Maemo SDKはDebian指向のScratchbox Cross Compilation Toolkitに基づいており、開発時のサンドボックス環境を提供する。ScratchboxはQEMUを使ってARMプロセッサをエミュレートするか、sbrshで命令をリモート実行する。Scratchbox互換のルートストラップ(Debianをインストールするためのシェルスクリプト群)はx86とARMELの両方に存在するので、開発とデバッグはx86上で行い、最後のパッケージングをARMELで行うことができる[5]。
ハードウェア
編集MaemoはノキアのInternet Tablet向けに設計されており、その仕様はノキアの高機能携帯電話N-seriesやE-seriesとよく似ている。いずれもプロセッサは TI OMAPというARMのSoCであり、画面が大きく、拡張可能なストレージを内蔵している[9]。Maemoはプラットフォームを限定することで高度に最適化しているため、Internet Tablet以外で動作させるのは非常に難しい。しかし、OSのプロプライエタリでない部分やサードパーティー製アプリケーションはDebianや他のディストリビューション向けにパッケージ化されており、それによって他の様々なハードウェアでも動作する可能性がある[10]。
バージョン履歴
編集バージョン | コード名 | ビルド識別子 | リリース日 | 備考 | |
---|---|---|---|---|---|
OS2005 | 1.1 | - | 2.2005.45-1 | 2005年11月 | |
3.2005.51-13 | 2005年12月 | ||||
5.2006.13-7 | 2006年4月 | ||||
OS2006 | 2.0 | Mistral | 0.2006.22-21 | 2006年5月 | β版 |
1.2006.26-8 | 2006年5月 | ||||
2.1 | Scirocco | 2.2006.39-14 | 2006年11月 | ||
2.2 | Gregale | 3.2006.49-2 | 2007年1月 | 770向けの最後の公式OS | |
OS2007 | 3.0 | Bora | 2.2006.51-6 | 2007年1月 | |
3.1 | 3.2007.10-7 | 2007年3月 | |||
3.2 | 4.2007.26-8 | 2007年7月 | |||
4.2007.38-2 | 2007年10月 | SDHC 破損を修正 | |||
OS2008 | 4.0 | Chinook | 1.2007.42-18 | 2007年11月 | (N810のみ) |
1.2007.42-19 | 2007年11月 | カーネルのみアップグレード(N810のみ) | |||
1.2007.44-4 | 2007年11月 | β版(N800のみ) | |||
2.2007.50-2 | 2007年11月 | ||||
2.2007.51-3 | 2008年1月 | NOLOアップグレードのみ | |||
4.1 | Diablo | 4.2008.23-14 | 2008年6月 | SSUサポート追加 | |
4.2008.30-2 | 2008年8月 | SSUアップデート | |||
4.2008.36-5 | 2008年9月 | ||||
5.2008.43-7 | 2008年12月 | ||||
Maemo 5 | 5.0 | Fremantle | - | - | コミュニティサポートのQtライブラリをバンドル |
- | ? | Harmattan | - | - | 公式サポートのQtライブラリをバンドル |
脚注・出典
編集- ^ Register Hardware review of the N800
- ^ a b Ars Technica review of the N800
- ^ a b “maemo Technology Overview - Maemo Platform Overview”. Nokia Corporation. 2009年6月8日閲覧。
- ^ Abinader, Bruno (1 April 2008). "Re: Systemtap testsuite report for arm architecture". systemtap (Mailing list). 2008年4月28日閲覧。
- ^ a b Software Development Process for maemo SDK maemo.org
- ^ Nokia N810 Specifications List of bundled applications
- ^ Qole Pejorian (2008年10月12日). “Easy Debian moves to Extras”. 2009年6月8日閲覧。
- ^ Maemo - Jalimo
- ^ Device Specifications
- ^ Debian Maemo packaging team
外部リンク
編集- Maemo home page
- Maemo white paper
- Maemo in freedesktop.org
- Scratchbox Cross Compilation Toolkit
- discussion of the Nokia N800 and Internet Tablet OS Apple Newtonのソフトウェア開発者がMaemoのユーザインタフェースの問題点を指摘
- Maemo CJK Support Maemo を日本語(中国語、韓国語)対応にするプロジェクト