SlideShare a Scribd company logo
研究でAndroidの
 フレームワークを
デバッグするために
 バグ検出ツールを
作ってた話 ( ꒪⌓꒪)
@haruna_nishi
リスのアイコンです


情報学系M2
来月からは
社畜プログラマ見習い


乙女ゲー(一部)と
ロボットアニメ狂い
ところで皆様
AndroidのVMを
改造しようとしたことが
ありますでしょうか
アプリケーションソフトウェア

アプリケーションフレームワーク(Java)

C/C++       Dalvik VM

        Linuxカーネル
普通はないですよね
私もありません (°∀°)
         そんなことするの
        変態さんだけだよね!!
旧湯淺研究室(当時)
  VM?
改造してますよ
Androidのフレームワークをデバッグするために検出ツールを作ってた話
そんな研究室に
配属される事になった私…。▼
果たしてどんな研究課題が
与えられるのだろうか。▼
???

西脇くん。▼
???

湯淺先生! ▼
湯淺教授

VM改造してたら、フレームワークに
バグがあるのを見つけたから、他にもバグが無いか、
適当にコンパイラ拡張して検出器作ってくれないかな。▼
※西脇の心象風景
            , '´  ̄ ̄ ` 、
          i r-ー-┬-‐、i
           | |,,_   _,{|
          N| "゚'` {"゚`lリ     や ら な い か
             ト.i   ,__''_  !
          /i/ l\ ー .イ|、
    ,.、-  ̄/  | l   ̄ / | |` ┬-、
    /  ヽ. /    ト-` 、ノ- |  l  l  ヽ.
  /    ∨     l   |!  |   `> |  i
  /     |`二^>  l.  |  | <__,|  |
_|      |.|-<    \ i / ,イ____!/ \
  .|     {.|  ` - 、 ,.---ァ^! |    | ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄l
__{   ___|└―ー/  ̄´ |ヽ |___ノ____________|
  }/ -= ヽ__ - 'ヽ   -‐ ,r'゙   l                  |
__f゙// ̄ ̄     _ -'     |_____ ,. -  ̄ \____|
  | |  -  ̄   /   |     _ | ̄ ̄ ̄ ̄ /       \  ̄|
___`\ __ /    _l - ̄  l___ /   , /     ヽi___.|
 ̄ ̄ ̄    |    _ 二 =〒  ̄  } ̄ /     l |      ! ̄ ̄|
_______l       -ヾ ̄  l/         l|       |___|
という訳で
作りました
⊂二二二( ^ω^)二⊃ブーン
その名も
SEAN:
Static Error
Analyzer for
Native code
● 使ったコンパイラ
 Clang
● 検出できるバグ


 ネイティブコード中のJNIの規則違反

詳しくは
SEAN: Support Tool for Detecting Rule Violations in JNI Coding
でググって頂ければ論文が読めます
バグ見つけた
のはいいけど
報告する方法が
わからねぇ……っ
ありがとうございました!

More Related Content

PDF
いまさら恥ずかしくてAsyncをawaitした
PDF
触ってみよう! Robotics Studio -レゴマインドストームRCXを動かしてみる
PDF
これからの「async/await」の話をしよう
PDF
scikit-learnとTensorFlowによる実践機械学習 第12章
PDF
ランダムフォレスト回帰
PDF
プログラミング初心者の壁の越え方
PDF
async/awaitダークサイド is 何
PPTX
100116 わんくま勉強会東京42
いまさら恥ずかしくてAsyncをawaitした
触ってみよう! Robotics Studio -レゴマインドストームRCXを動かしてみる
これからの「async/await」の話をしよう
scikit-learnとTensorFlowによる実践機械学習 第12章
ランダムフォレスト回帰
プログラミング初心者の壁の越え方
async/awaitダークサイド is 何
100116 わんくま勉強会東京42

What's hot (13)

PDF
Tensorflow
PDF
C言語講習会資料(後半)
PDF
C言語講習会資料(前半)
PPTX
Swift (with SceneKit) で簡単な3Dゲームを作ってみた
PDF
Python機械学習プログラミング第10章後半
PDF
続Open cv4android
PPTX
わんくまっちゃ445同盟 SilverlightでTdd(仮)
PDF
20130615 組込みの仕事場でRubyを使う
PPTX
Processingについて
PDF
Siv3Dのすゝめ
PPTX
OpenCV 百聞は一見にしかず
PDF
ROS JAPAN Users Group Meetup 04
PDF
p5.js について
Tensorflow
C言語講習会資料(後半)
C言語講習会資料(前半)
Swift (with SceneKit) で簡単な3Dゲームを作ってみた
Python機械学習プログラミング第10章後半
続Open cv4android
わんくまっちゃ445同盟 SilverlightでTdd(仮)
20130615 組込みの仕事場でRubyを使う
Processingについて
Siv3Dのすゝめ
OpenCV 百聞は一見にしかず
ROS JAPAN Users Group Meetup 04
p5.js について
Ad

Viewers also liked (6)

PDF
OpenCV4Androidで画像処理アプリのススメ
PPTX
Javaにおけるネイティブコード連携の各種手法の紹介
PPT
Android Hacks - Hack57
PDF
0621 ndk game
PPT
Android Hacks - Hack47
PDF
OpenCVをAndroidで動かしてみた
OpenCV4Androidで画像処理アプリのススメ
Javaにおけるネイティブコード連携の各種手法の紹介
Android Hacks - Hack57
0621 ndk game
Android Hacks - Hack47
OpenCVをAndroidで動かしてみた
Ad

Androidのフレームワークをデバッグするために検出ツールを作ってた話