本文是基于Android 7.0源码,来分析Native Crash流程。 一、Native Crash 从系统全局来说,Crash分为Framework/App Crash, Native Crash,以及Kernel…
标签:Gityuan
WatchDog工作原理
一、概述 Android系统中,有硬件WatchDog用于定时检测关键硬件是否正常工作,类似地,在framework层有一个软件WatchDog用于定期检测关键系统服务是否发生死锁事件。WatchDog功能主要是分析系统…
理解Android Crash处理流程
基于Android 6.0的源码剖析, 分析Android应用Crash是如何处理的。 /frameworks/base/core/java/com/android/internal/os/RuntimeInit.jav…
debuggerd守护进程
基于Android 6.0源码, 分析debuggerd守护进程的工作原理 /system/core/debuggerd/debuggerd.cpp /system/core/debuggerd/tombstone.cp…
简单聊一聊Throwable
一.概述 Android有一套异常处理机制, 分析Crash时最常见的便是先查看其调用栈stackTrace. 对于调用栈, 是从下往上调用的. 其中经常会遇到”Caused by”, 以及”… 8 more”等信息, …
Android系统稳定性简述
一. 稳定性简述 Android系统稳定性对于用户体验至关重要. 对于稳定性问题从表现来看有: 死机重启, 自动关机, 无法开机,冻屏,黑屏以及闪退, 无响应等情况; 从技术层面来划分无外乎两大类: 长时间无法执行完成(…
DropBoxManager启动篇
一、启动流程 DropBoxManagerService(简称DBMS) 记录着系统关键log信息,主要功能用于Debug调试。 Android系统启动过程SystemServer进程时,在startOtherServi…
调试系列2:bugreport实战篇
一、Bugreport 文章Bugreport源码篇(一)从源码角度阐释了Bugreport,那么本文则是从实战角度来说说,如何看懂bugreport,对于通过bugreport获取到内容往往非常长,这里简单划分为19部…
调试系列1:bugreport源码篇
基于android 6.0, 分析bugreport过程 framework/native/cmds/bugreport/bugreport.cpp framework/native/cmds/dumpstate/dum…
Android JNI原理分析
引言:分析Android源码6.0的过程,一定离不开Java与C/C++代码直接的来回跳转,那么就很有必要掌握JNI,这是链接Java层和Native层的桥梁,本文涉及相关源码: frameworks/base/core…
Android EventLog含义
一. 概述 在调试分析Android的过程中,比较常用的地查看EventLog,非常简洁明了地展现当前Activity各种状态,当然不至于此,比如还有window的信息。那么本文就列举以下am相关的tags含义。 本文涉…
Linux系统调用(syscall)原理
引言:分析Android源码的过程中,要想从上至下完全明白一行代码,往往涉及app、framework、native一直到kernel,可能迷失到代码世界,明白了系统调用原理,或许能帮你峰回路转,找到进入kernel函数…