Nexus One の kernel を入れ替えて認識されるメモリを増やす

512MBのメモリを積んでいる Nexus One ですが、OS には200MBほどしか認識されていません。このまま使っているのは勿体ないので、patched kernel に入れ替えて認識メモリを増やすハックが海外の Nexus One ユーザの間で行われています。

私も我慢できずに dwang が kernel 2.6.29 にパッチを当ててビルドしてくれたものを試してみました。しばらく使ってみたのですが安定して動作しているので、以下に手順を書いておきます。

1. zImageとbcm4329.koをダウンロード

http://drop.io/tqyu5ai#

※zImageは「zImage-2.6.29.6」という名前で保存
(後で分からなくなりそうなので何となく)

2. FASTBOOTモードで起動

電源オフの状態から、トラックボールボタンを押しながら電源を入れます。

3. kernel書き換え

PCと接続してfastbootコマンドを実行。

# fastboot flash zimage zImage-2.6.29.6

rebootします。

4. wifiモジュール置き換え

このままだと、無線LANが使えないのでwifiモジュールを置き換えます。

# adb remount
# adb push bcm4329.ko /system/lib/modules/

以下のように約400MBのメモリが認識されていればOK

# free
              total         used         free       shared      buffers
  Mem:       395152       270860       124292            0         5024
 Swap:            0            0            0
Total:       395152       270860       124292

これでNexus Oneに関しては、アプリ切り替えがほぼオンメモリでPalm OS4レベルの体感速度になった気がします 。当然ながら、動かなくなっても責任は取れないのでkenerl入れ替えは自己責任でお願いします。

Nexus Oneで某キャリアのMMSを使えるようにする

先日、私もNexus Oneを入手しました。WVGA有機ELの綺麗な画面に加えて、1GHzのCPUと512MBのRAMは非常に快適です。すべての操作がサクサク動きます。不思議なことにBlogやtwitterを見ていると、日本では売っていないはずのこの端末を持っている人がたくさんいます。知り合いだけで10人くらいは所有者がいるんじゃないでしょうか。これがグローバル化というやつかもしれません。

というわけで、Nexus Oneでも某キャリアのMMSが使えるようにメッセージアプリをEclairのソースからビルドし直しました。下のスクリーンショットのようにいろいろなUser-Agentに変更する機能を付けたので、黒SIMだけでなく銀SIMでも使えるはず。

ダウンロードはこちらからどうぞ。Mms.apkという名前で保存してください。

前回、インストール方法に関する質問が多かったので、手順も書いておきます。rootedであることが前提です。Nexus Oneを持っているような人だったら余裕だと思うので、方法は自分で調べてください。

$ adb remount
$ adb shell find /system /data -name \*android\*mms.apk\* -o -name Mms.apk -delete
$ adb uninstall com.android.mms
$ adb install Mms.apk

2番目の手順は、最初から入っているMms.apkと署名が異なるため、[INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES]エラーを回避するのに必要です。 また、実際に利用する際には「アクセスポイントの設定」でMMS関連の設定を行うこともお忘れなく。

ヒント

2010/02/06 追記:
銀SIMで使えたというV702NKと708SCをUser-Agent一覧に追加しました。
thanks to chimcityさん

2010/02/11 追記:
X01TのUser-Agent文字列を修正しました。
thanks to 通りすがりの電動刑事さん