Android 勉強会 第4回に参加してきました

6月16日に秋葉原ダイビルで開催された「Android勉強会 第4回」に参加してきました。定員を大きく超える応募があったそうで、抽選に当選して何とか参加することができました。副都心線の影響(?)で少し遅れて会場に到着したため、既に席はほとんど埋まっていて100人くらいはいたんじゃないかと思います。

Google I/O, Developer Day ともに参加したのですが、 Android のセッションにはほとんど出なかったので、安藤恐竜さんのプレゼンはかなり参考になりました。それから、やはり動いている実機でプレゼンというのはインパクトがありますね。懇親会にも参加させてもらったのですが、いろいろなメーカーやゲーム業界の人などもいて楽しかったです。Android については、単に携帯電話のプラットフォームと捉えていると判断を誤りそうな感じがします。

ブリリアントサービス 近藤さん

  • Armadilloの実機でAndroidを動かして、自作アプリケーションでプレゼン!
  • Androidデバイスが巷に溢れるはず
  • 一年後がどうなっているかは想像が付かない(いい意味で)
  • メモリ64MBでは厳しいのではないか?
  • サウンドは? - 鳴ります。PCM 48kHz,ALSA
  • 3Dアクセラレーション対応ボードを買えばもっと性能が出るかも

日立ソフトさん

  • モバイルこそセキュリティが重要 → SELinux
  • 実際にlibpngの脆弱性があった
  • カーネルの対応、ユーザランドの移植、セキュリティポリシーの準備が必要
  • 組み込み用でも数万ルールの設定が必要
  • カーネルのチューニングをして、500kbyte以内に抑えている
  • SELinux Policy Editorオープンソースで公開している
  • Android on Zaurus SL-C3200
  • privateとbusinessのセキュリティ権限設定の確認

安藤恐竜さん

  • Binder:
    shared memory方式によるパフォーマンス改善
    プロセス単位のスレッドプール
  • Power Management:
    バッテリーが最大のボトルネック
    Linux PMの上に拡張
    FULL_WAKE_LOCK(cpu,lcd),PARTIAL_WAKE_LOCK(cpu)
  • Bionic:
    カスタマイズされたlibc、組み込み用に最適化
    BSDライセンス(GPLの混入を嫌がった?)
    pthread, setprop/getprop
    POSIX完全準拠ではない
    glibc互換ではない
  • HAL:
    上位層をハードウェアから分離
    pmap
  • Dalvik:
    200-500MhzのCPU
    RAM 64MB ROM 64MB
    バッテリー
  • Dexファイルの構造:
    データをタイプごとに整理
    データにidを付けてポインタのみ上部に格納
    ファイルサイズをjarの半分以下に
  • Zygote:
    ダーティーでシェアードメモリ
    クラスをプリロードし初期化
  • Dalvikはレジスタマシン、通常のJava VMはスタックマシン
  • Androidアプリを開発する上での心得:
    賢くループ
    先にlimitを計算しておく
    CPUとメモリはボトルネックではない、バッテリーがボトルネック
    バッテリーにムーアの法則は成り立たない

イー・モバイルのEMチャージを契約して Ubuntu Hardy から使う

D02NE

先日,イー・モバイルのEMチャージに加入しました。EMチャージは,月額基本料が無料で自分が使う分だけ支払いをするプリペイド形式のサービスです。1パケットあたりいくらという従量課金の他に,1日定額 630円,7日定額 2,205円を選択することができます。自分の場合は,だいたい週に1日くらい外出先で使いたいのと,たまに実家に帰った時に利用したいくらいなので,普通に月額5,000円とかで契約するときよりもお得だと判断しました。3ヶ月利用しないとチャージ金額が消滅するというよく分からない規則はあるものの,2年縛りがないのでいつでも解約できるというメリットもあります。

端末はEMOBILEアウトレットで,7.2Mbps PCカードタイプの D02NE を購入しました。キャンペーン期間中で10,000円分のチャージ付きで17,980円だったので,実質7,980円で買えたことになります。 試しに自宅でスピードを測定してみたのですが,大体このくらいはコンスタントに出るようです。若干IMAPアクセスで引っかかるような感じがあるものの充分満足できるスピードだと思います。

ブロードバンドスピードテスト 通信速度測定結果
http://www.bspeedtest.jp/ v3.0.0
測定時刻 2008/05/26 00:59:01
回線種類/線路長/OS:モバイル回線/-/Linux/
サービス/ISP:-/-
サーバ1[N] 2.09Mbps
サーバ2[S] 2.07Mbps
下り受信速度: 2.0Mbps(2.09Mbps,261kByte/s)
上り送信速度: 380kbps(385kbps,48kByte/s)

さて,Ubuntu 8.04 での利用方法ですが,D02NE を使うだけならば特に難しいことはありません。ただし,EMチャージで利用するためには,APNを"rpc.data"に設定する必要があります。このAPNは,初期状態では登録されておらず,ユーティリティソフトから端末に書き込む必要があるみたいです。おそらくATコマンドだけで書き込みできると思うのですが,僕はこの部分だけ付属マニュアル通りにWindows Vistaで設定を行いました。

1. gnome-ppp をインストール

Synaptic パッケージ マネージャもしくは,コマンドラインから次のようにインストールします。
$ sudo aptitude install gnome-ppp

2. カードを挿す

カード自体は挿せば認識します。参考までに dmesg の結果は次のようになっています。噂通り,USBコントローラーの上にUSBモデムが載っているというちょっと変態的な構成。
[10586.077431] pccard: CardBus card inserted into slot 0
[10586.176975] ohci_hcd: 2006 August 04 USB 1.1 'Open' Host Controller (OHCI) Dr
iver
[10586.177046] PCI: Enabling device 0000:06:00.0 (0000 -> 0002)
[10586.177056] ACPI: PCI Interrupt 0000:06:00.0[A] -> GSI 16 (level, low) -> IRQ
 18
[10586.177075] PCI: Setting latency timer of device 0000:06:00.0 to 64
[10586.177081] ohci_hcd 0000:06:00.0: OHCI Host Controller
[10586.177123] ohci_hcd 0000:06:00.0: new USB bus registered, assigned bus numbe
r 7
[10586.177141] ohci_hcd 0000:06:00.0: irq 18, io mem 0xc0000000
[10586.733539] usb usb7: configuration #1 chosen from 1 choice
[10586.734205] hub 7-0:1.0: USB hub found
[10586.734622] hub 7-0:1.0: 1 port detected
[10590.229012] usb 7-1: new full speed USB device using ohci_hcd and address 2
[10590.447178] usb 7-1: configuration #1 chosen from 1 choice
[10590.595858] cdc_acm 7-1:1.0: ttyACM0: USB ACM device
[10590.611456] usbcore: registered new interface driver cdc_acm
[10590.611464] /build/buildd/linux-2.6.24/drivers/usb/class/cdc-acm.c: v0.25:USB
 Abstract Control Model driver for USB modems and ISDN adapters

3. gnome-pppを立ち上げる

4. 設定をする

Setupから「Detect」をクリックして,次のようになっているか確認します。
 
Device: /dev/ttyACM0
Type: Analog Modem
Speed: 460800
Phone Line: Tone
Volume: High
Init Stringsを次のように設定します。
 
ATQ0 V1 E1 S0=0 &C1 &D2
イー・モバイルから指定されたユーザ名とパスワードを入力します。Phone number欄には「*99***2#」と入力します。EMチャージの場合は,rpc.dataに接続するために最後が「2#」になるので注意。

5. 接続する

「Connect」ボタンを押すと接続が開始されます。「Disconnect」ボタンで切断されます。「Details」を見ると通信量が見れるので,従量接続の際に参考にするとよいかもしれません。自分の使い方だと10MBなんてあっという間でした。

ThinkPad X61でAC電源のみにするとCPUクロック制限がかかる

自宅で ThinkPad を使うときには,いつもACアダプタを繋いでバッテリーを外しています。無駄な充放電を繰り返してると,バッテリーはすぐに劣化してしまうし,それは環境の事を考えてもよろしくない。
ところが,最近あることに気が付いてしまいました。僕の X61 は Core2 Duo 2.2GHz で負荷によってCPUスピードを切り替えるように設定してるんですが,なんと負荷がかかっても 1.2GHz までしか上がらない!このことについて Lenovo のページを見ると次のような説明がありました。

CPU を最大速度で動作させ、消費電力の高い周辺装置 (CardBus カード、USB デバイスなど) を接続している場合、必要な電力が一時的に AC アダプターの容量を超えることがあります。バッテリーを取り付けている場合、一時的な電力のピーク時にバッテリーから電力を供給できます。
ThinkPad コンピューターからバッテリーを取り外すと「Battery Optimized Performance Mode」速度 (低い速度) に切り替わり、ピーク電力の要求を減少させ、ThinkPad コンピューターの電源が切れる原因となる入力電圧の著しい低下を防ぎます。

なるほど,本体付属のACアダプタは 65W のポータブルタイプのもので,これだと一時的に電力が足りなくなる可能性があるそうです。で,ACアダプタを繋いでバッテリを外した際に,この「Battery Optimized Performance Mode」になってしまって 1.2GHz 以上のクロックにならない。Android エミュレータのベンチマーク(安藤恐竜さん作 Kubench)を取った時に遅くておかしいなと思っていたら,このCPU速度制限にひっかかって1.2GHzしか出ていなかったというオチでした。

また,これはまだ未確認情報ですが,別売りの 90W のACアダプタを使えば電力が足りなくなることはないので,CPUのスピード制限は起こらないようです。さて,バッテリーを付けたままにするか90WのACアダプタを購入するか,どっちがいいかなぁ…

ThinkPad X61のキーボード

ThinkPad X61が届いてすぐに、英語キーボードに交換しました。ThinkPadのキーボードには、NMB製とChicony製があるそうで、僕は評判の良いNMB製を選択しました。X40と比べると若干打鍵感が軽い気もするけど、適度なストロークがあって、打っていてとても気持ちがいいです。下の記事を読むと分かるのだけれど、ThinkPadのキーボードに対するこだわりは素晴らしいです。キーの押し初め→中→終わりで、反発力がS字の曲線を描くように設計されていて、このフィーリングを生み出しているそう。

 

交換手順は、背面のねじを4本外してキーボードをスライドさせてコネクタを外すだけととても簡単でした。後から気づいたんだけど、キーボードの交換手順は Lenovoのページ に載ってました。このLenovoのページ、未だにドメインはibm.comなんですね。最近発表されたX300も設計はIBMの大和事業所ということだし、ThinkPadクオリティは、これからも継続されていくようでちょっと嬉しい。

(CentOSをダウンロード中)

ThinkPad X61を購入しました

CPUが SL7100 (1.2GHz)ということなので、X300は断念してX61を注文しました。
CPUアップグレード版が後から出るかもしれないけど、それまで待てません。それにX61は、期間限定セール中でCore2 Duo 2.2GHzモデルが119,910円とお買い得なので、無くなる前に買っておこうと。メモリを増設して、Vista HomeをUbuntuに入れ替えれば満足度の高いマシンになりそう。
一緒にnoteparts.comで、NMB製のUS英語キーボード(42T3467)も入手しました。

IBM ThinkPad X61 Tablet シリーズ 専用 US英語キーボード(NMB製)
IBM ThinkPad X60/X60s/X60 Tablet/X61/X61s シリーズ US英語キーボード(Chicony製)


人気のXシリーズが台数限定特価 期間限定 2/28まで 119,910円〜

やっぱり道具として捉えた場合に、ThinkPadのキーボードとトラックポイントは魅力的です。良くも悪くも道具なわけで、自分がいいと思う物を使うのが一番。僕はハンドリング重視のエリーゼが好みなんです。MacBookを1年半使ってたけど、別にモテなかったというのもある…

さて、X61とはまたしばらく長い付き合いになりそうです。

2/20追記:
キーボードだけ一足先に到着しました。今は上の2つのキーボードともに売り切れみたいです。早めに買っておいてよかった…

ThinkPad X300

2月26日発表らしい。これが本当なら、絶対買う!X61を購入しました


ThinkPad X300 (code-name:小太刀)
Display 13,3" LED Backlight WXGA+ 1440 x 900, 128 DPI
CPU / Chipset Intel Merom Dual Core hybrid LV
Santa Rosa Crestline SFF GMS 800 MHz
Communications GB Ehternet, Bluetooth, WLAN 802.11n, UWB, WWAN WiMax
Hard Drive Solide State 64 GB (1,8" x 8 mm)
Ports and Slot 2 x Mini PCIe, 3 x USB, PC Express Card, Audio, VGA
Battery 3 Cell Li Polymer Battery
   
Memory Up to 4 GB PC2-5300 / 667 MHz
Dimensions 318 x 231 x 18,6 - 23,4 mm
Weight 1.13 kg - 1.44 kg

そして、BusinessWeekの"Building the Perfect Laptop"という記事にいきなり分解写真が公開されている。まだ正式発表前なのにいいんだろうか、と心配になってしまう。でも、せっかくなのでじっくり見させてもらうと、DVDマルチドライブとS-ATA接続の1.8インチ 64GB SSD (Samsung製)、SANYO製のバッテリーが見える。DVDのドライブは使わないときに取り外せると便利なんだけど、それはできないようだ。DVDドライブは取り外し可能で替わりに拡張バッテリーを付けると10時間持つそう。気になる点といえば、タッチパッドが付いてたり、SDカードリーダがないことくらいかな。

追記:
Buy.comで予約を開始しているようで、価格は $2,911.99
CPUはCore2 Duo SL7100(1.2GHz)らしい。えー、CPU以外はステキなのに。。

資料1  資料2  資料3  資料4  資料5  資料6  資料7  資料8  資料9  資料10 
資料11  資料12  資料13  資料14  資料15  資料16  資料17  資料18  資料19 
資料20  資料21  資料22 


他にもX60シリーズの後継に当たる「X200」というモデルも出るらしい。こちらは、従来同様の12インチ液晶で、タッチパッドと光学ドライブなしとのこと。→ 情報元サイト

W52Tをまだ予約してない

iPhoneの着メロにしてみた

iPhoneのリングトーンらしきものが公開されていたので、さっそく自分のケータイの着信音に設定してみました。うーん、誰も気付いてくれなそうだ…

iPhone Ringtone Sheetmusic: Let Angelic Tinkling Remixes Begin

2月発売予定のDSケータイ「D800iDS」を触って来た

2月に発売予定の「D800iDS」が代官山ヒルサイドテラスに展示されているというので、昼休みにちょっと見てきました。703iシリーズが全部で10機種展示されていたのですが、お目当てはこのDSケータイ。



DSの名前が付いているのは偶然ではないのか、液晶2画面の下側がタッチパネルになっていて、まさに「ニンテンドーDS」のようです。実機が展示されていて自由にいじれるようになっていたので、いろいろ触らせてもらいました。勝手にPalmみたいな使い勝手を想像していたのですが、いまいち直感的に操作できる感じがしませんでした。

何が問題かというと、やはりカーソルボタンがないのが辛い。タッチパネルに方向ボタンが表示されるのですが、これをいちいちストラップに付いたスタイラスで操作するのは面倒過ぎます。スタイラスを使わずに指で押すのが標準的な操作らしいのですが、これだとミス操作が頻発しそうでハードウェアキーが欲しいところ。また、同じく面倒だと思ったのが文字入力。手書き入力を試したのですが、漢字を直接書けるわけではなく、ひらがなを一文字ずつ入力して変換していくようです。で、この変換候補がタッチパネルでないほうの液晶に表示されるので、クリックして確定することができません。何でタッチパネル側に変換候補を表示しないのか、僕には理解できませんでした。

というわけで、D800iDSも買い替え候補に入れていたのですが、W51HかW52Tに決まりそうです。
FeliCaが使えないっていう大きな問題もあるけど、X01HTって手もあるかな…

関連リンク:
ITmedia +D モバイル:写真で解説する「D800iDS」 (1/3):
ワイドVGA液晶搭載でBluetoothに対応した「W52T」
ワイドVGA液晶・指紋認証搭載の「W51H」

Yahoo!無線LANスポット申し込み

Yahoo!プレミアム会員向けに公衆無線LANサービス「Yahoo!無線LANスポット」の提供を開始した。月額料金は210円。なお、一般ユーザーには2007年6月より月額525円でのサービス開始が予定されている。2007年5月31日までYahoo!プレミアム会員限定の試用キャンペーンを実施し、期間中に限り無料でサービスを提供する。

Yahoo!プレミアム会員ならば、2007年5月末まで無料だそうなので申し込んでみた。利用可能な場所で一番多いマクドナルドはあまり行かないから、あくまでも緊急用かな。 アクセスポイント一覧 をノートPCのHDDに保存しておくか、GPS携帯から検索できるようなサイトがあると便利かも。


関連リンク

Yahoo!無線LANスポット