タグ

ブックマーク / blog.kmckk.com (6)

  • KMC Staff Blog:Android 4.0で利用されているLLVM

    2011年12月05日 Android 4.0で利用されているLLVM Android4.0(Ice Cream Sandwich)のソースコードを見て、RenderScriptにLLVMの技術が使われているのがわかりました。(正確には3.xからですが、ソースが公開されていなかったので詳細を確認できませんでした。) 技術的な興味で少し調べたのでここにメモを残します。 Android RenderScript on LLVM この資料から図を拝借して。 ホスト側で .rsファイルから.bc(bitcode: LLVMの中間言語フォーマット)にコンパイルするとともに、関数の呼び出しのためのラッパーメソッドや変数のgetter/setterメソッドのJavaソースコードが自動生成される。このためJavaとRenderscript間でのやりとりは簡単。JNIは不要。 ターゲット側で (図中ではJa

    TAC
    TAC 2011/12/08
  • KMC Staff Blog:Androidのファイルシステム

    2011年05月31日 Androidのファイルシステム Android端末でのファイルシステムの構成を調べました。 典型的なAndroidのファイルシステム rootはinitrdのramdiskになっています。 その下にsystem, data, cache にフラッシュメモリのパーティションがマウントされます。 rootとsystemはread onlyでマウントされていて、data, cacheはread/writeでマウントされます。 rootの下には/dev, /proc, /sys 等もマウントされます。これらは通常のLinuxと同じです。 KZM-A9-Dualボードに移植するときには、これらのディレクトリツリーをまるごとNFSやSDに置くようにしています。また、実験のために全てread/write可能な状態でマウントします。 Nexus One $ df df Files

    TAC
    TAC 2011/06/01
  • KMC Staff Blog:Android on UbuntuでUbuntu側からAndroidのアプリを起動する

    2010年09月30日 Android on UbuntuでUbuntu側からAndroidのアプリを起動する 9/28に開催されたCELFのBoFでプレゼンとデモをさせていただきました。 このデモの中で使ったAndroid on UbuntuでUbuntu側からAndroidのアプリを起動するためのスクリプトを紹介します。 まずはその時の説明資料です。今回はビデオはありません。 Android On Ubuntu for developerView more presentations from Tetsuyuki Kobayashi. Androidでコマンドラインからintentを発行してアプリを起動するのにamというコマンドが使えます。 それの中身は以下の通り。たった数行のshellスクリプトでした。 /system/bin/am # Script to start "am" on

  • KMC Staff Blog:Androidのログのしくみ

    2010年08月31日 Androidのログのしくみ 先日日Androidの会 関西支部 マニアック勉強会でAndroidのログの話をさせていただきました。そのときの発表資料をここに貼っておきます。 2010.9.2追記 発表資料をアップデートしました。 Logging system of AndroidView more presentations from Tetsuyuki Kobayashi. このスライドの中で最も言いたかったことはほぼこの一枚に集約されています。 (クリックで拡大) 9月3日のCELFテクニカルジャンボリーでも時間をいただいたのでこのスライドをさらに増強して話をします。 2010.9.9 追記 CELFテクニカルジャンボリーでのビデオが公開されたのでここに貼ります。 関連するページ AndroidJavaアプリからスタックトレースをログに出す簡単な方法 An

    TAC
    TAC 2010/09/04
  • KMC Staff Blog:AndroidのNDKツールを使ってrubyをビルドして動かす

    2010年08月26日 AndroidのNDKツールを使ってrubyをビルドして動かす 前回の知識を使ってNDKのツールで先日リリースされたruby-1.9.2をビルドしてAndroid上で動かしてみました。 (2011.7.21) アップデート記事を書きました。 RubyAndroid用にビルドする 開発環境にはUbuntu 9.04 (x86_64)を使っています。 準備 ruby 1.9.2をクロスビルドするためには、そのホストruby 1.9.2がインストールされている必要があります。(ビルド中に実行されるrubyスクリプトが1.9.2用になっているため。) $ tar xvf ruby-1.9.2-p0.tar.bz2 $ mkdir obj $ cd obj $ ../ruby-1.9.2-p0.android/configure $ make $ sudo make in

  • KMC Staff Blog:AndroidのFroyoのJITについて

    2010年05月26日 AndroidのFroyoのJITについて 先日サンフランシスコで開催されたGoogle I/OのキーノートでAndroid2.2(コードネーム:Froyo)でJITコンパイラが搭載されることが発表されました。そしてJITに関するセッションもありました。私はサンフランシスコに行ったわけではありませんが、現地からUSTREAM中継してくれた方がいたおかげでセッションのスライドを見ることができました。また、そのセッションのGoogle Waveにも有用な情報が載っています。それらから情報を拾ってまとめてみました。 いつコンパイルするか?何をコンパイルするか? 通常のJITコンパイラはメソッド単位でコンパイルを行いますが、それ以外の方法としては、メソッドの一部のみをコンパイルする方法があります。後者を"Trace granularity JIT"と呼んでいます。 後者はイ

  • 1