2013-04-08 9 views
6

systrace Android narzędzie nazywa wewnętrznie narzędzie o nazwie atrace który jest i rozbudowę ftrace lub strace (narzędzia Linux).Narzędzie Android Systrace używa wewnętrznie strace lub ftrace?

Jeśli łączymy za pomocą emulatora konsoli (ADB shell) do Androida Jelly Bean możemy wykonać strace narzędzie ale nie może wykonać ftrace narzędzia (komenda nie jest zainstalowany).

Wykonanie pewnych reseach w internecie znalazłem że strace jest poprzednikiem ftrace: http://crtags.blogspot.de/2012/04/dtrace-ftrace-ltrace-strace-so-many-to.html

Patrząc Android kod źródłowy, najbardziej „wewnętrzny” odniesienia, który znalazłem to nazwiska .h file: http://androidxref.com/4.1.1/xref/frameworks/native/include/utils/Trace.h

Myślę, że plik ten zostanie następnie przetłumaczony na macierzysty sterownik dla systemu Linux.

Jednak jestem nadal nie wiem, czy ten sterownik realizacja należy do strace lub ftrace. "Normalnie", powinno być ftrace ponieważ jest nowsza, ale w tym przypadku nie wiem, dlaczego nie możemy uruchomić ftrace z emulatora. Natomiast, strace jest całkowicie dostępny z emulatora.

Następnie Czy ktoś wie, czy systrace Android narzędzie korzysta na bardzo niskim poziomie strace lub ftrace?

Dziękujemy!

Odpowiedz

5

mam postępować zgodnie z instrukcjami znalezione tutaj, związane ftrace,: http://www.linuxforu.com/2010/11/kernel-tracing-with-ftrace-part-1/

Wszystko działa idealnie. Nie mogłem wykonać wcześniej komendy ftrace, ponieważ interakcja i pobieranie danych odbywa się za pośrednictwem ścieżek logicznych.

Aby wykonać ftrace, po poprawnej konfiguracji (wiele kroków ...), Wewnątrz adb shell:

[email protected]:# cat /sys/kernel/debug/tracing/trace > mytracefile.txt 

atrace ułatwia proces konfiguracji, dzięki czemu możemy prześledzić dostęp do informacji w następujący sposób:

[email protected]:# atrace -s -w -t 100 > mytracefile.txt 

Z drugiej strony, Znalazłem informacje na temat wykonywanie strace tutaj: http://www.hokstad.com/5-simple-ways-to-troubleshoot-using-strace

Wszystko wskazuje przykłady zostały pomyślnie zrealizowane w moim otoczeniu USI ng adb powłoki.

Interakcje i dostęp do wyników obu narzędzi są bardzo różne.

Teraz mogę powiedzieć, że systrace Android narzędzie oparte jest na atrace która z kolei opiera się na ftrace.

strace jest również wspierany ale służy do innego celu i nie jest związana z systrace.

Pozdrawiam,

Powiązane problemy