http://www.kernel.org/doc/man-pages/online/pages/man5/proc.5.html で書かれているように、/proc/statから、システムが消費した時間(tick単位)を取得することができる。 Android端末で実際に/proc/statにアクセスしてみると、 cpu 970616 85105 578431 25520823 316076 976 33674 0 0 0 のような情報が取得できる。10項目存在する。上記のサイトでは、9項目までは説明がある。CPU利用率ビューアーでは、すべての項目の和を使用した。
static private long getTick() {
try {
String filename = "/proc/stat";
String stat = load(filename);
String[] split = stat.split(" +");
long time = 0;
for (int i = 1; i < split.length; i++) time += Long.parseLong(split[i]);
return time;
} catch (Exception e) {
return 0;
}
}
static private String load(String filename) {
try {
BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(filename)));
String str = reader.readLine();
if (str == null) return null;
reader.close();
return str;
} catch (Exception e) {
}
return null;
}
0 件のコメント:
コメントを投稿