Suche senden
Hochladen
PF開発に使えるAOSPのツール達
•
3 gefällt mir
•
3,319 views
L
l_b__
Folgen
第10回横浜PF部勉強会資料
Weniger lesen
Mehr lesen
Technologie
Melden
Teilen
Melden
Teilen
1 von 43
Jetzt herunterladen
Downloaden Sie, um offline zu lesen
Empfohlen
レシピの作り方入門
レシピの作り方入門
Nobuhiro Iwamatsu
仮想化環境におけるパケットフォワーディング
仮想化環境におけるパケットフォワーディング
Takuya ASADA
Linux 4.x Tracing: Performance Analysis with bcc/BPF
Linux 4.x Tracing: Performance Analysis with bcc/BPF
Brendan Gregg
Faster packet processing in Linux: XDP
Faster packet processing in Linux: XDP
Daniel T. Lee
eBPF Perf Tools 2019
eBPF Perf Tools 2019
Brendan Gregg
ZynqMPのブートとパワーマネージメント : (ZynqMP Boot and Power Management)
ZynqMPのブートとパワーマネージメント : (ZynqMP Boot and Power Management)
Mr. Vengineer
ARM Trusted FirmwareのBL31を単体で使う!
ARM Trusted FirmwareのBL31を単体で使う!
Mr. Vengineer
Wiresharkの解析プラグインを作る ssmjp 201409
Wiresharkの解析プラグインを作る ssmjp 201409
稔 小林
Empfohlen
レシピの作り方入門
レシピの作り方入門
Nobuhiro Iwamatsu
仮想化環境におけるパケットフォワーディング
仮想化環境におけるパケットフォワーディング
Takuya ASADA
Linux 4.x Tracing: Performance Analysis with bcc/BPF
Linux 4.x Tracing: Performance Analysis with bcc/BPF
Brendan Gregg
Faster packet processing in Linux: XDP
Faster packet processing in Linux: XDP
Daniel T. Lee
eBPF Perf Tools 2019
eBPF Perf Tools 2019
Brendan Gregg
ZynqMPのブートとパワーマネージメント : (ZynqMP Boot and Power Management)
ZynqMPのブートとパワーマネージメント : (ZynqMP Boot and Power Management)
Mr. Vengineer
ARM Trusted FirmwareのBL31を単体で使う!
ARM Trusted FirmwareのBL31を単体で使う!
Mr. Vengineer
Wiresharkの解析プラグインを作る ssmjp 201409
Wiresharkの解析プラグインを作る ssmjp 201409
稔 小林
Android起動周りのノウハウ
Android起動周りのノウハウ
chancelab
BPF: Tracing and more
BPF: Tracing and more
Brendan Gregg
LISA2019 Linux Systems Performance
LISA2019 Linux Systems Performance
Brendan Gregg
Linux Profiling at Netflix
Linux Profiling at Netflix
Brendan Gregg
Blazing Performance with Flame Graphs
Blazing Performance with Flame Graphs
Brendan Gregg
ゼロからはじめるKVM超入門
ゼロからはじめるKVM超入門
VirtualTech Japan Inc.
PG-REXで学ぶPacemaker運用の実例
PG-REXで学ぶPacemaker運用の実例
kazuhcurry
Docker Swarm入門
Docker Swarm入門
Masahito Zembutsu
고려대학교 컴퓨터학과 특강 - 대학생 때 알았더라면 좋았을 것들
고려대학교 컴퓨터학과 특강 - 대학생 때 알았더라면 좋았을 것들
Chris Ohk
いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪
いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪
Kunihiro TANAKA
DockerとPodmanの比較
DockerとPodmanの比較
Akihiro Suda
Linux Performance Analysis: New Tools and Old Secrets
Linux Performance Analysis: New Tools and Old Secrets
Brendan Gregg
Dpdk performance
Dpdk performance
Stephen Hemminger
eBPF Trace from Kernel to Userspace
eBPF Trace from Kernel to Userspace
SUSE Labs Taipei
組み込みLinuxでのGolangのススメ(Go con版)
組み込みLinuxでのGolangのススメ(Go con版)
Tetsuyuki Kobayashi
DPDK: Multi Architecture High Performance Packet Processing
DPDK: Multi Architecture High Performance Packet Processing
Michelle Holley
Velocity 2017 Performance analysis superpowers with Linux eBPF
Velocity 2017 Performance analysis superpowers with Linux eBPF
Brendan Gregg
[KubeCon NA 2020] containerd: Rootless Containers 2020
[KubeCon NA 2020] containerd: Rootless Containers 2020
Akihiro Suda
Kernel Recipes 2017: Using Linux perf at Netflix
Kernel Recipes 2017: Using Linux perf at Netflix
Brendan Gregg
10GbE時代のネットワークI/O高速化
10GbE時代のネットワークI/O高速化
Takuya ASADA
Androidの新ビルドシステム
Androidの新ビルドシステム
l_b__
Open binder
Open binder
l_b__
Weitere ähnliche Inhalte
Was ist angesagt?
Android起動周りのノウハウ
Android起動周りのノウハウ
chancelab
BPF: Tracing and more
BPF: Tracing and more
Brendan Gregg
LISA2019 Linux Systems Performance
LISA2019 Linux Systems Performance
Brendan Gregg
Linux Profiling at Netflix
Linux Profiling at Netflix
Brendan Gregg
Blazing Performance with Flame Graphs
Blazing Performance with Flame Graphs
Brendan Gregg
ゼロからはじめるKVM超入門
ゼロからはじめるKVM超入門
VirtualTech Japan Inc.
PG-REXで学ぶPacemaker運用の実例
PG-REXで学ぶPacemaker運用の実例
kazuhcurry
Docker Swarm入門
Docker Swarm入門
Masahito Zembutsu
고려대학교 컴퓨터학과 특강 - 대학생 때 알았더라면 좋았을 것들
고려대학교 컴퓨터학과 특강 - 대학생 때 알았더라면 좋았을 것들
Chris Ohk
いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪
いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪
Kunihiro TANAKA
DockerとPodmanの比較
DockerとPodmanの比較
Akihiro Suda
Linux Performance Analysis: New Tools and Old Secrets
Linux Performance Analysis: New Tools and Old Secrets
Brendan Gregg
Dpdk performance
Dpdk performance
Stephen Hemminger
eBPF Trace from Kernel to Userspace
eBPF Trace from Kernel to Userspace
SUSE Labs Taipei
組み込みLinuxでのGolangのススメ(Go con版)
組み込みLinuxでのGolangのススメ(Go con版)
Tetsuyuki Kobayashi
DPDK: Multi Architecture High Performance Packet Processing
DPDK: Multi Architecture High Performance Packet Processing
Michelle Holley
Velocity 2017 Performance analysis superpowers with Linux eBPF
Velocity 2017 Performance analysis superpowers with Linux eBPF
Brendan Gregg
[KubeCon NA 2020] containerd: Rootless Containers 2020
[KubeCon NA 2020] containerd: Rootless Containers 2020
Akihiro Suda
Kernel Recipes 2017: Using Linux perf at Netflix
Kernel Recipes 2017: Using Linux perf at Netflix
Brendan Gregg
10GbE時代のネットワークI/O高速化
10GbE時代のネットワークI/O高速化
Takuya ASADA
Was ist angesagt?
(20)
Android起動周りのノウハウ
Android起動周りのノウハウ
BPF: Tracing and more
BPF: Tracing and more
LISA2019 Linux Systems Performance
LISA2019 Linux Systems Performance
Linux Profiling at Netflix
Linux Profiling at Netflix
Blazing Performance with Flame Graphs
Blazing Performance with Flame Graphs
ゼロからはじめるKVM超入門
ゼロからはじめるKVM超入門
PG-REXで学ぶPacemaker運用の実例
PG-REXで学ぶPacemaker運用の実例
Docker Swarm入門
Docker Swarm入門
고려대학교 컴퓨터학과 특강 - 대학생 때 알았더라면 좋았을 것들
고려대학교 컴퓨터학과 특강 - 대학생 때 알았더라면 좋았을 것들
いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪
いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪
DockerとPodmanの比較
DockerとPodmanの比較
Linux Performance Analysis: New Tools and Old Secrets
Linux Performance Analysis: New Tools and Old Secrets
Dpdk performance
Dpdk performance
eBPF Trace from Kernel to Userspace
eBPF Trace from Kernel to Userspace
組み込みLinuxでのGolangのススメ(Go con版)
組み込みLinuxでのGolangのススメ(Go con版)
DPDK: Multi Architecture High Performance Packet Processing
DPDK: Multi Architecture High Performance Packet Processing
Velocity 2017 Performance analysis superpowers with Linux eBPF
Velocity 2017 Performance analysis superpowers with Linux eBPF
[KubeCon NA 2020] containerd: Rootless Containers 2020
[KubeCon NA 2020] containerd: Rootless Containers 2020
Kernel Recipes 2017: Using Linux perf at Netflix
Kernel Recipes 2017: Using Linux perf at Netflix
10GbE時代のネットワークI/O高速化
10GbE時代のネットワークI/O高速化
Andere mochten auch
Androidの新ビルドシステム
Androidの新ビルドシステム
l_b__
Open binder
Open binder
l_b__
Stagefright入門
Stagefright入門
l_b__
Eclipseを使ったandroid nativeデバッグ
Eclipseを使ったandroid nativeデバッグ
l_b__
Yapf2013
Yapf2013
l_b__
JellyBeanのソースをとりあえず眺めてみた(手抜き)
JellyBeanのソースをとりあえず眺めてみた(手抜き)
l_b__
ABS2015 のセッション紹介
ABS2015 のセッション紹介
l_b__
Stagefright入門
Stagefright入門
l_b__
Android組み込み開発テキスト pandaboard es編
Android組み込み開発テキスト pandaboard es編
OESF Education
Android組込み開発基礎コース Armadillo-440編
Android組込み開発基礎コース Armadillo-440編
OESF Education
Intentの概要
Intentの概要
l_b__
Android デバッグ小ネタ
Android デバッグ小ネタ
l_b__
Androidのリカバリシステム (Androidのシステムアップデート)
Androidのリカバリシステム (Androidのシステムアップデート)
l_b__
Android,Brillo,ChromeOS
Android,Brillo,ChromeOS
l_b__
僕らのデータ同期プラクティス
僕らのデータ同期プラクティス
Yukiya Nakagawa
AndroidとSELinux
AndroidとSELinux
android sola
Andere mochten auch
(16)
Androidの新ビルドシステム
Androidの新ビルドシステム
Open binder
Open binder
Stagefright入門
Stagefright入門
Eclipseを使ったandroid nativeデバッグ
Eclipseを使ったandroid nativeデバッグ
Yapf2013
Yapf2013
JellyBeanのソースをとりあえず眺めてみた(手抜き)
JellyBeanのソースをとりあえず眺めてみた(手抜き)
ABS2015 のセッション紹介
ABS2015 のセッション紹介
Stagefright入門
Stagefright入門
Android組み込み開発テキスト pandaboard es編
Android組み込み開発テキスト pandaboard es編
Android組込み開発基礎コース Armadillo-440編
Android組込み開発基礎コース Armadillo-440編
Intentの概要
Intentの概要
Android デバッグ小ネタ
Android デバッグ小ネタ
Androidのリカバリシステム (Androidのシステムアップデート)
Androidのリカバリシステム (Androidのシステムアップデート)
Android,Brillo,ChromeOS
Android,Brillo,ChromeOS
僕らのデータ同期プラクティス
僕らのデータ同期プラクティス
AndroidとSELinux
AndroidとSELinux
Ähnlich wie PF開発に使えるAOSPのツール達
自動テスト知識体系TABOKのご紹介
自動テスト知識体系TABOKのご紹介
Shinsuke Matsuki
OpenMDAOの最適化を試す(第23回オープンCAE勉強会@関西)
OpenMDAOの最適化を試す(第23回オープンCAE勉強会@関西)
TatsuyaKatayama
システムテスト自動化標準ガイド 5章発表資料
システムテスト自動化標準ガイド 5章発表資料
Masatoshi Itoh
【DevLOVE現場甲子園2013】Software Engineer in Test @ 楽天の検索基盤の現場
【DevLOVE現場甲子園2013】Software Engineer in Test @ 楽天の検索基盤の現場
Kotaro Ogino
Introduction to boost test
Introduction to boost test
Kohsuke Yuasa
Agileツール適合化分科会(テスト自動化ツール)
Agileツール適合化分科会(テスト自動化ツール)
masanori kataoka
Twitter4Jとテスト
Twitter4Jとテスト
Yusuke Yamamoto
Introduction to Continuous Test Runner MakeGood
Introduction to Continuous Test Runner MakeGood
Atsuhiro Kubo
Getting Started with Testing using PHPUnit
Getting Started with Testing using PHPUnit
Atsuhiro Kubo
NET5 and Diagnostics
NET5 and Diagnostics
Kazushi Kamegawa
ビルドプロセスとCI #STAC2014
ビルドプロセスとCI #STAC2014
Koji Hasegawa
Go1.8 for Google App Engine
Go1.8 for Google App Engine
Takuya Ueda
OSC福岡 20111203
OSC福岡 20111203
Hiroshi Bunya
PostgreSQLではじめるOSS開発@OSC 2014 Hiroshima
PostgreSQLではじめるOSS開発@OSC 2014 Hiroshima
Shigeru Hanada
Dakota+openFoam1
Dakota+openFoam1
守淑 田村
OpenDocument interoperability test workshop
OpenDocument interoperability test workshop
Makoto Takizawa
Gamedevenvstudy1
Gamedevenvstudy1
Takashi Kokawa
Programming camp Codereading
Programming camp Codereading
Hiro Yoshioka
Visual Studio App Centerを公式サンプルアプリから学ぼうiOS(swift),Android(java)
Visual Studio App Centerを公式サンプルアプリから学ぼうiOS(swift),Android(java)
Shinya Nakajima
BDD Frameworkで回帰テストの自動実行を実現する方法
BDD Frameworkで回帰テストの自動実行を実現する方法
潤司 渡部
Ähnlich wie PF開発に使えるAOSPのツール達
(20)
自動テスト知識体系TABOKのご紹介
自動テスト知識体系TABOKのご紹介
OpenMDAOの最適化を試す(第23回オープンCAE勉強会@関西)
OpenMDAOの最適化を試す(第23回オープンCAE勉強会@関西)
システムテスト自動化標準ガイド 5章発表資料
システムテスト自動化標準ガイド 5章発表資料
【DevLOVE現場甲子園2013】Software Engineer in Test @ 楽天の検索基盤の現場
【DevLOVE現場甲子園2013】Software Engineer in Test @ 楽天の検索基盤の現場
Introduction to boost test
Introduction to boost test
Agileツール適合化分科会(テスト自動化ツール)
Agileツール適合化分科会(テスト自動化ツール)
Twitter4Jとテスト
Twitter4Jとテスト
Introduction to Continuous Test Runner MakeGood
Introduction to Continuous Test Runner MakeGood
Getting Started with Testing using PHPUnit
Getting Started with Testing using PHPUnit
NET5 and Diagnostics
NET5 and Diagnostics
ビルドプロセスとCI #STAC2014
ビルドプロセスとCI #STAC2014
Go1.8 for Google App Engine
Go1.8 for Google App Engine
OSC福岡 20111203
OSC福岡 20111203
PostgreSQLではじめるOSS開発@OSC 2014 Hiroshima
PostgreSQLではじめるOSS開発@OSC 2014 Hiroshima
Dakota+openFoam1
Dakota+openFoam1
OpenDocument interoperability test workshop
OpenDocument interoperability test workshop
Gamedevenvstudy1
Gamedevenvstudy1
Programming camp Codereading
Programming camp Codereading
Visual Studio App Centerを公式サンプルアプリから学ぼうiOS(swift),Android(java)
Visual Studio App Centerを公式サンプルアプリから学ぼうiOS(swift),Android(java)
BDD Frameworkで回帰テストの自動実行を実現する方法
BDD Frameworkで回帰テストの自動実行を実現する方法
Kürzlich hochgeladen
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
Toru Tamaki
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
Toru Tamaki
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
Toru Tamaki
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
sugiuralab
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
iPride Co., Ltd.
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Yuma Ohgami
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
Hiroki Ichikura
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
Ryo Sasaki
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
taisei2219
Kürzlich hochgeladen
(9)
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
PF開発に使えるAOSPのツール達
1.
横浜Androidプラットフォーム部 第10回勉強会 PF開発に使えるAOSPの ツール達 ~生命、宇宙、すべての答えがそこに~ 2011/06/25 @l_b__
2.
今日紹介するのは ● DDMSとかTraceViewとか http://developer.android.com/guide/developing/tools/index. html で紹介があるツールは対象外。 ● AOSP内のプラットフォーム開発に役立ちそうなツールをピック アップしてみました。
3.
どんなツール? ● プロファイラなどの性能解析 ● ユニットテストなどテスト実行 ●
その他色々 ※分類は適当です。
4.
性能解析系ツール ● blktrace ● netperf ●
oprofile ● strace ● valgrind ● procstatlog ● RpcPerformance ● bugreport/dumpsys ● latencytop ● librank/procmem/procrank ● showmap ● showslab
5.
テスト実行 ● axl ● embunit ●
emma ● gtest ● StrictModeTest ● cpueater ● /system/extra/testsの下のテストツール
6.
その他色々 ● apkcheck ● jdwpspy ●
yuv420sp2rgb ● bsdiff ● jdiff ● netcat ● tcpdump ● input ● rawbu ● screencap ● svc ● BugReportSender ● netcfg ● logwrapper ● run-as ● sdcard ● sound
7.
blktrace ● BlockデバイスのI/Oをトレースするツール ● /externals/blktrace ●
デバイスの/system/bin/blktrace ● ビルドされるにはAndroid.mkで最初のフラグをtrueに、各 LOCAL_MODULE_TAGSをoptionalにする必要があります。 ● # blktrace -d [ブロックデバイスファイル] -o -| blkparse -i で実行し、Traceを出力。
8.
netperf ● ネットワークベンチマークテスト ● http://www.netperf.org/netperf/ ●
/externals/netperf ● デバイスの/system/xbin/netperf ,netserver(engビルド時) ● サーバのnetserverを起動し、クライアントのnetperfを実行する とこの二つの間のネットワークパフォーマンスを計測 ● netserverの中でログファイルが/tmp/netperf.debugと定義さ れているので書き換える必要がありそう
9.
oprofile ● Linux向けシステムプロファイラ ● http://oprofile.sourceforge.net ●
/externals/oprofile ● デバイスの/system/xbin/oprofiled,opcontrol ● opcontrolでプロファイラの開始/終了をコントロール。 プロファイリング中にアプリを実行すると、その際のシステム全体の プロファイリング結果を取得できる。
10.
strace ● カーネルシステムコールのトレース ● http://sourceforge.net/projects/strace/ ●
/externals/strace ● デバイスの/xbin/strace ● カーネルのptraceを使ってシステムコール、シグナルをトレース するので、カーネルのトレース情報しか取得できないが、動作は 軽い。
11.
valgrind ● メモリリークや不正アクセス検出など様々な機能を持ったメモリデ バッガ ● http://valgrind.org/ ●
/externals/valgrind (Masterブランチのみ) ● /system/bin/valgrind ● # valgrind [実行バイナリ] で実行。仮想マシン上でバイナリを 動作させ、その動作結果を出力する。 ● 仮想マシン上で実バイナリを動作させるので、実際の動作シーケ ンスに沿ってメモリアクセスをチェックできるが、動作は重い。
12.
procstatlog ● /procの下のstatファイルを一定間隔で読み取ってログ出力す る。 ● /packages/experimental/procstatlog ●
デバイスの/xbin/procstatlog ● ビルドするにはLOCAL_MODULE_TAGSの追加が必要 ● /proc/*/stat , /proc/*/wchan , /proc/binder/stats , /proc/diskstats , /proc/net/dev , /proc/stat , /proc/yaffs , /sys/device/system/cpu/cpu0/cpufreq/stats/ time_in_space の内容を出力。
13.
RpcPerformance ● AndroidフレームワークRPCの呼び出しベンチマーク ● /packages/experimental/RpcPerformance ●
デバイスの/data/app/RpcPerformance.apk ● 右画面のように様々なIOの R/W時間を計測
14.
bugreport/dumpsys ● bugreportはdumpstateデーモンに接続して様々なログを取得 して標準出力に出力する。 ● dumpsysはdumpstateデーモンから呼ばれ、ServiceManager に登録されたサービスを取得してdump出力する。 ●
/frameworks/base/cmds/bugreport,dumpsys ● デバイスの/system/bin/bugreport,dumpsys ● logcatの情報、/proc以下の情報、dmesgやdalvikのトレース出 力など、ほとんどのデバッグ情報が網羅されています。 ● /framework/base/cmds/dumpstate/dumpstate.cを見ると 何が取得できるか記述されています。
15.
laytencytop ● システムのレイテンシになるプロセスをチェックする。 ● http://www.latencytop.org/ ●
/system/extras/latencytop ● デバイスの/system/xbin/latencytop ● /proc/sys/kernel/latencytopを見てどのプロセスがボトルネッ クになっているかをチェック ● カーネルがlaytencytopに対応ビルドされている必要あり。
16.
librank/procmem/procrank ● /proc/*/pagemapや/proc/*/maps,/proc/kpagecount, /proc/kpageflagsを解析して出力 ● /system/extras/librank,procmem/procrank ●
デバイスの/system/xbin/librank,procmem,prokrank ● 本体は/system/extras/libpagemap ● libpagemapの解析結果をどのように表示するかでコマンドを使い 分けているようです。
17.
showmap ● /proc/*/smapsを出力 ● /system/extras/showmap ●
デバイスの/system/xbin/showmap ● 各プロセスの仮想メモリ空間内の領域を表示します。
18.
showslab ● /proc/slabinfoを出力 ● /system/extras/showslab ●
デバイスの/system/xbin/showslab ● スラブレベルのをメモリ使用率を表示します。
19.
axl ● HTTPクライアントに拷問的なテストをするためのWebサーバ ● /development/tools/axl ●
ホスト側のPythonスクリプトがWebサーバとして起動
20.
embunit ● 組み込みC向けユニットテスト ● http://embunit.sourceforge.net/ ●
/externals/embunit ● デバイスでは/system/lib/libembunit.so ● テストする関数のテストケースを自分で書いていくという点は通常 のユニットテストと同じ。
21.
emma ● Javaのコードカバレッジツール。 ● http://emma.sourceforge.net/ ●
/externals/emma ● デバイスの/system/framework/emma.jar ● ホスト向けのemmalib.jarも生成 ● あまり日本語の資料が無いようなので今が調べ時かも。
22.
gtest ● Google C++
Testing Framework ● http://code.google.com/p/googletest/ ● /externals/gtest ● デバイスの/data/app/の下に複数のテスト用実行バイナリを生成 ● 同じようにユニットテストを書きたいときに参考になりそうです。
23.
StrictModeTest ● StrictModeに違反する処理を行うテストアプリ ● /packages/experimental/StrictModeTest ●
デバイスの/data/app/StrictModeTest.apk ● StrictModeについては第6回勉強会の恐竜先生の資料を参 照。https://docs.google.com/viewer? a=v&pid=explorer&chrome=true&srcid=0B6_eMBCvatAN2I1YWY0YTQtYTA4Ni00YzQ2LWFjOTMtNDBkOGY3ZTk5MGM5&hl=en& pli=1
24.
cpueater ● CPU使用率を100%にするデーモン ● /system/extras/tests/cpueater ●
デバイスの/system/xbin/cpueater ● 高負荷状態でのアプリ動作チェックに使えます。 ● 中ではひたすらlife_universe_and_everything = 42*2を計算 しています。
25.
/system/extras/tests ● システム関連(HW寄り)のテストアプリ ● /system/extras/tests/bionic,directiotest,framebuffer, fstest,icachetest,memtest,pftest, schedtest,sdcard,timetest ●
デバイスの/system/xbin 配下 ● Bionicのテスト、ブロックデバイスI/Oテスト、Framebuffer描画 テスト、ファイルシステムパーミッションチェック、CPUキャッシュテ スト、メモリI/Oテスト、メモリアラインメントテスト、スケジューリング テスト、SDカードパフォーマンステスト、クロックテスト
26.
apkcheck ● Android APK
Checker ● /development/tools/apkcheck ● ホストのapkcheck,apkcheck.jar ● /framework/base/apiの下のAPI xml同士を比較するようで す。
27.
jdwpspy ● DalvikVMのjdwp通信内容をダンプする ● /development/tools/jdwpspy ●
ホスト側のjdwpspy ● DDMS等がVMと接続するときのJavaDebugWireProtocol通信 データを横取りしてダンプします。
28.
yuv420sp2rgb ● YUV4:2:0画像をRGB24bitに変換 ● /development/tools/yuv420sp2rgb ●
ホスト側のyuv420sp2rgb ● 画像ファイルから画像ファイルに変換。
29.
bsdiff ● バイナリ同士の差分チェック、差分ファイルの生成 ● http://www.daemonology.net/bsdiff/ ●
/externals/bsdiff ● ホストのbsdiff,bspatch ● OTAに使われていると思われます。
30.
jdiff ● Javadocの差分を見てJava APIの変更点を抽出するDoclet ●
http://javadiff.sourceforge.net/ ● /externals/jdiff ● ホスト側のjdiff.jar ● バージョン間のAPI差分ドキュメントはこれで作られています。
31.
netcat ● TCP/UDPデータ送受信ツール ● http://nc110.sourceforge.net/ ●
/externals/netcat ● デバイスの/system/xbin/nc ● クライアント/サーバの双方になるパケット読み書きツールです。
32.
tcpdump ● ネットワークパケットモニタ ● http://www.tcpdump.org/ ●
/externals/tcpdump ● デバイスの/system/xbin/tcpdump ● 言わずとしれたネットワークツール。
33.
input ● キーイベントをWindowManagerに送信するコマンド。 ● /frameworks/base/cmds/input ●
デバイスの/system/bin/input ● http://blog.kmckk.com/archives/3808986.html を見てお きましょう。 ● タッチイベントには未対応です。
34.
rawbu ● /dataのバックアップ/リストアコマンド ● /frameworks/base/cmds/rawbu ●
デバイスの/system/xbin/rawbu ● /data内の一時ファイルはバックアップしないので、何が一時ファ イルとして扱われるか見てみるとよいかも。
35.
screencap ● SurfaceFlingerから直接スクリーンショットを取得 ● /frameworks/base/cmds/screencap ●
デバイスの/system/bin/screencap ● 以前はスクリーンショットを取得するにはFramebufferを直接 openしていましたが、Gingerbreadからこのコマンドになっていま す。
36.
svc ● WiFi、データ通信ON/OFF、PowerManagement制御コマンド ● /frameworks/base/cmds/svc ●
デバイスの/system/bin/svc ● ConnectivityManager、BatteryManager,PowerManagerに接 続して制御。 ● 他にコマンドを追加しやすい作りになっています。
37.
BugReportSender ● SDカードにあるBugreportファイルをACTION_SENDで送信 ● /packages/experimental/BugReportSender ●
エラーが出てビルドできず。メンテナンスされていないようです。
38.
netcfg ● ネットワークインターフェースのup/down/dhcp設定コマンド ● /system/core/netcfg ●
デバイスの/system/bin/netcfg ● init.rcで使われています。
39.
logwrapper ● コマンドの標準出力/エラー出力をAndroidのログに出力する ● /system/core/logwrapper ●
デバイスの/system/bin/logwrapper ● # logwrapper [コマンド] [コマンド引数] を実行することでコマ ンドの出力をAndroidのログに保存できます。
40.
run-as ● コマンドを指定したアプリパッケージのuidで実行する ● /system/core/run-as ●
デバイスの/system/bin/run-as ● # run-as [パッケージ名] [コマンド] [コマンド引数] でコマンドを 実行する。 ● パーミッションチェックに使用できます。
41.
sdcard ● FUSEを使用してFAT形式SDカードをエミュレートする ● /system/core/sdcard ●
デバイスの/system/bin/sdcard ● # sdcard [path] [uid] [gid] でpathを/mnt/sdcardにマウント します。
42.
sound ● wav/mp3を再生・録音する ● /system/extras/sound ●
デバイスの/system/bin/sound ● /dev/msm_pcm_in,/dev/msm_pcm_out,/dev/msm_mp3へ 直接書き込んでいます。
43.
次回予告 libbinderを調べて発表できればなと思っています。 ありがとうございました。
Jetzt herunterladen