binder

2011年06月07日

6/1 - 6/3 に横浜パシフィコでLinuxCon Japanが開催されました。その中でひとつ話をしてきました。
続きを読む

2011年04月12日

先日4月9日に開催された横浜 Android プラットフォーム部の第7回勉強会でAndroidのプロセス間のメソッド呼び出しの話をしました。
その発表資料を貼っておきます。
続きを読む

2011年03月31日

今回はカーネル側のbinderのドライバ(/dev/binder)の話。

プロセス間通信としてはJavaのRMIやGTKやBluetoothのスタックで使用されているD-Busがありますが、これらは通信の下位層としてはsocketを使用しています。このため特別なカーネルのドライバを必要としません。Androidのプロセス間通信は/dev/binderという独自のドライバを使います。それはなぜなのでしょうか?

続きを読む

2011年03月29日

今回はservice managerのメモ。

initはZygoteを起動するより先に /system/bin/servicemanagerを起動します。

init.rcを見るとFroyoまでは"critical"に指定されている唯一のサービスでした。

(Gingerbreadではinitから分化した/sbin/ueventd も"critical"になっていました。)

続きを読む

2011年03月24日

今回はBinder Threadについて。

Eclipseでアプリケーションのデバッグをするとアプリケーションのプロセスの中に、"Binder Thread #1", "Binder Thread #2" などの名前のスレッドがあるのがわかります。これらはいったい何をしているのでしょうか。

続きを読む

2011年03月22日

今回はAIDLとは何かを調べてみました。前回のことがわかっているとAIDLの理解は簡単です。

続きを読む

2011年03月17日

Androidのシステムでは同時にたくさんのプロセスでJava言語で書かれたプログラムがDalvikVMによって動いています。intentを発行して別のプロセスで処理を実行できることがAndroidでのプログラミングの大きな強みです。

このようなプロセスをまたがったメソッド呼び出しは下位レベルではBinderという技術が使われているのですが、私はいままでそれがぼんやりとしか理解できていませんでした。

ソースコードを無理やり追いかけたら、わかりかけてきたのでメモを残します。

続きを読む

記事検索
最新コメント
アクセスカウンター
  • 今日:
  • 昨日:
  • 累計:

QRコード
QRコード