スポンサードリンク

SDカードのアライメント(境界)調整

xdaの以下のところ

[DEV][DATA2SD] More space (and more I/O) for your Desire (Updated/EXT4/Flashable ZIP) – xda-developers

2/ Make 2 primary Mb aligned partitions on your SD



をやってみた、という話題。

前述のサイトに、「This helps big time to get a better R/W speed.」という文句があり、実際にやってみたら、ちょっとだけ速くなった。(ベンチマークとったのだけど、保存せずに捨ててしまった)

ただ、劇的には速くはならないので、測定誤差もあるとおもうし、かなり気休め的なのかも。

Android – data2sdでシャットダウン時にアンマウント

カスタムROM使っている方にはあまり関係無いかもしれません。

この記事(仙石浩明の日記: Android 端末 (Nexus One) でアプリを SDカードの ext3 パーティションにインストールする (Apps 2 SD))で書かれているように、公式のROMそのままで、data2sdを自分で実現していると、シャウトダウンの時に、sdカードのマウントが解除できていないようだ。

次回の起動のmount時に怒られるのでそう思っています。

うまくアンマウントする方法ごないかxdaを調べていたらドンピシャの記事を見つけた。

その記事を参考にしたときの作業メモです。

サービスのファイルを書き換えるには、boot.imgの焼きなおしが必要であるため、そうするくらいなら、カスタムROM焼くわい。ということで却下。

/system/bin以下ファイルの書き換えであればrootであれば作業できるので、そうすることにした。

まず /system/bin/shutdown を /system/bin/shutdown.orig と名称を変更する。
次に、以下のようなファイルを作成する。


#!/system/bin/sh

/system/bin/log -p i -t shutdown_script "my shutdown script start"

# wait for other services finished
/system/bin/logwrapper /system/bin/stop
/system/bin/logwrapper /system/bin/sleep 5
/system/bin/logwrapper /system/bin/sync

# umount /dev/block/mmcblk0p2

/system/bin/log -p i -t shutdown_script "+ remount to read-only"
/system/bin/logwrapper /system/bin/mount -t ext2 -oro,remount /dev/block/mmcblk0p2 /system/extsd

/system/bin/log -p i -t shutdown_script "+ remount to read-only finished"
/system/bin/log -p i -t shutdown_script "+ original shutdown command execute"

/system/bin/shutdown.orig

/system/bin/log -p i -t shutdown_script "my shutdown script end"

上記のファイル名を”shutdown”とし、/system/bin/shutdown に配置する。(また、実行権限を与えておく)

そうすることで、/init.rc から /system/bin/shutdown が呼ばれ、上記のシェルスクリプトが実行され、最後には remount,ro してからオリジナルのシャットダウンコマンドを発行するようになっている。stop で、他のサービスの終了を全て待つようにしているので問題ないはず。

ただ、ご使用は自己責任でおねがいします。

参考リンク:
xda-developers – View Single Post – [DEV] Someone ever tried an “init.d/rc0.d” script on Android ?

b-mobile U300 で L2TP/IPSec (Android)

Desire(Android)からVPN(L2TP/IPSec)で家のLinuxサーバに接続したときのメモ。

構築・設定

Linuxサーバには、L2TPサーバとして、xl2tpd、IPSecのスタックとしてopenswanを使った。
2.6系列だとカーネルレベルでIPSecがサポートされているのでそちらを使っても良いと思うのだが、情報量的が多かったopenswanを使った。

構築は さくらのVPSでiPhone用の野良WiFi通信傍受対策のL2TP/IPSec(VPN)を設定したメモ – nori_no のメモ を参考にさせて貰った。

Android側のVPNの設定として注意すべきことは「L2TPセキュリティ保護を有効」のチェックボックスは空にしておく。

接続

構築後、U300のSIMが入っているDesireからVPN(L2TP/IPSec)張ってみると、サーバ側で以下のエラーを出してVPNが切断される。

Apr 24 01:13:30 myserver xl2tpd[14929]: Maximum retries exceeded for tunnel 20276. Closing.

Desire側では大体検知できず、ネットが繋がらなくなって気づくことがほとんど。

解析

xl2tpdのソースを見てみると、L2TPの(キープアライブのための)HELLO電文の応答でリトライアウトしていた。

xl2tpdの実装を見ると、60秒毎にHELLO電文をサーバ側から送信し、5秒の間にHELLO電文の応答がない場合、先述のエラーとなりサーバ側で回線を解放していた。3Gのような無線ネットワーク、なおかつ、U300のようにレイテンシの高い回線だと、通常時でも応答を返すまでに5秒以上かかることがあるようで、接続状態が安定しないようだ。

上記については、xl2tpdの設定ファイルでは変更できなくて、ソースにハードコーディングしてあった。そのパラメタを以下のように書き換えて再コンパイルした結果、かなり安定するようになった。

l2tp.h

//#define HELLO_DELAY 60          /* How often to send a Hello message */
#define HELLO_DELAY (10*60)          /* How often to send a Hello message */
//#define DEFAULT_MAX_RETRIES 5    /* Recommended value from spec */
#define DEFAULT_MAX_RETRIES 60    /* Recommended value from spec */

HELLO電文の送信間隔を10分とし、リトライ回数を60回とする

network.c:248

//        tv.tv_sec = 1;
        tv.tv_sec = 10;

HELLO電文のリトライ間隔を1秒から10秒とする

注意
rfc2661によると、hello電文の間隔について「おすすめは60秒」となっていたので、それを伸ばすことにより、他のクライアントに影響がある可能性があります。

willcom ようやく解約できた

willcom解約

desireを買ったあとの週末に解約のための電話をかけた。電話担当のお姉さんに解約の旨を伝えると「こんなプランもありますよ」といって引き留めてくる。ひきとめられてもすでにdesire買っているので結構ですと冷たか(?)お姉さんに伝えた。

で解約の方法を聞くと電話では無理なようだ。引き伸ばして、3月の料金がとられるのかなーなんて悪い方に考えていたら、捺印した書類さえ2月中にとどいたら電話した当日までの日割りで計算してくれるらしい。

ということで、先月15日で解約できました。

お姉さんに解約の理由を聞かれて「回線が遅いから」と言ったら「ご迷惑をおかけして申し訳ありません」と言われて、なんかいじめているみたいだった、、、

htc desire 開封編

かなり時間がかかってしまいたが、開封編をお届けします。

fedexの袋で送られてきました。

Fedexの袋はプチプチ付きだった記憶が。空けると紙袋、、、紙袋? こんな薄い包装で香港から運ばれてきたようだ。

紙袋を開けたところ。desire の箱と変換アダプタ。expansys がつけたものかな。なかなか気が利きます。

箱を開いてみます。箱はスライド式です。

Desireお目見え

起動しました。SLCD版だけど画面はかなり綺麗。

起動

ドット抜けも無さそうなのでとりあえず一安心。

日本語が選べないのは事前情報で知っていたけど、英語はということでEnglish(Germany)を選択。

マニュアルは英語すらなくて、ドイツ語やイタリア語辺りがはいっていてどうやらヨーロッパのものらしい。

システム情報を表示したところ。2.2(froyo) のようです。てっきり、2.1 かと思っていた。wifi に繋いだらシステムアップデートがあり待つ。

2回目も待つ。アップデート完了。Morelocale2を入れてとりあえずの日本語化(CJKフォントなのでみづらい)

Desire からのテスト投稿

デザイアからwordpressアプリを使って投稿してみるテスト。
そんなことやってるくらいなら早く開封の儀をしろという、、、、