La herramienta Systrace de Android utiliza internamente strace o ftrace?
La herramienta Systrace Android llama internamente a una herramienta llamada atrace que es y extensión de ftrace o strace (herramientas Linux).
Si nos conectamos a través de la consola del emulador (shell ADB) a Android Jelly Bean podemos ejecutar la herramienta strace pero no podemos ejecutar la herramienta ftrace (comando no instalado).
- El archivo html creado por Systrace en blanco
- Android Systrace Ningún archivo ni directorio
- React-native Android Systrace HTML está en blanco en Ubuntu 14.04
- Android DDMS v22.0.1 no puede generar un systrace con Droid Razor 4.1.2
- No se puede ver el informe de seguimiento HTML generado por la herramienta Systrace en SDK de Android
Haciendo algunas reseach sobre el Internet encontré que strace es un predecesor de ftrace : http://crtags.blogspot.de/2012/04/dtrace-ftrace-ltrace-strace-so-many-to.html
Mirando al código fuente de Android, la referencia más " interna " que encontré es el archivo Trace.h : http://androidxref.com/4.1.1/xref/frameworks/native/include/utils/Trace.h
Pienso que este archivo se resuelve entonces a un conductor nativo del linux.
Sin embargo, todavía no puedo saber si este controlador de implementación pertenece a strace o ftrace . "Normalmente", debe ser ftrace porque es más reciente, pero en ese caso no sé por qué no podemos ejecutar ftrace desde el emulador. En contraste, strace está completamente disponible en el emulador.
Entonces, ¿alguien sabe si Systrace Android herramienta utiliza a un nivel muy bajo strace o ftrace ?
¡Gracias!
- Haga que Systrace funcione con el dispositivo 4.1.2 en Mac
- Reaccionar la creación de perfiles nativos. Systrace no muestra JS y Native Modules Thread
- Ejecución de systrace da "preexec_fn no es compatible con Windows" error
- Formato de archivo de seguimiento de Android Systrace
- Error al ejecutar la herramienta systrace en ADB usando un emulador Jelly Bean 4.1 en Windows 7
- ¿Es posible registrar los eventos systrace de Android directamente del código nativo, sin JNI?
- Android: Diferencia entre la herramienta traceview y systrace
- Caída de rendimiento de la animación de Android cuando el dispositivo permanece inmóvil pero se toca
He seguido las instrucciones que se encuentran aquí, relacionadas con ftrace,: http://www.linuxforu.com/2010/11/kernel-tracing-with-ftrace-part-1/
Todo funciona perfecto. No pude ejecutar ftrace antes porque la interacción y la recuperación de datos se realiza a través de rutas lógicas.
Para ejecutar ftrace , después de la configuración correcta (muchos pasos …), dentro de adb shell:
root@android:# cat /sys/kernel/debug/tracing/trace > mytracefile.txt
Atrace facilita el proceso de configuración, por lo que podemos acceder a la información de seguimiento de la siguiente manera:
root@android:# atrace -s -w -t 100 > mytracefile.txt
Por otro lado, he encontrado información sobre la ejecución de strace aquí: http://www.hokstad.com/5-simple-ways-to-troubleshoot-using-strace
Todos los ejemplos indicados se ejecutaron correctamente en mi entorno usando adb shell.
La interacción y el acceso a los resultados de ambas herramientas son muy diferentes.
Ahora puedo decir que systrace Android herramienta se basa en atrace que a su vez se basa en ftrace .
Strace también es apoyado pero sirve a otros propósitos y no está relacionado con systrace .
Saludos,
- La precisión del acelerómetro Xoom de Android siempre es poco fiable
- Cómo eliminar (Android) la barra de título de la aplicación en Xamarin.Forms?