logd作为native service,系统启动过程通过读取rc文件来启动,相关的属性定义在如下logd.rc文件中。
2.2.1 logd启动过程
logd启动后会存在三个用来服务日志系统的socket:分别是
/dev/socket/logd、/dev/socket/logdr、/dev/socket/logdw。
2.2.2 日志打印buffer缓冲区
如下代码中的参数LOG_ID_MAIN:代表buffer缓冲区,DEBUG:代表日志级别。java层调用和native层调用存在轻微差异,很容易进行辨别。native的级别和buffer比较全面,大家可以通过源码参考下。具体的日志buffer缓冲区及日志等级,见下图所示。
/XXX/frameworks/base/core/java/android/util/Log.java
/**
- Send a {@link #DEBUG} log message.
- @param tag Used to identify the source of a log message. It usually identifies
the class or activity where the log call occurs.
- @param msg The message you would like logged.
- @return A positive value if the message was loggable (see {@link #isLoggable}).
*/
public static int d(@Nullable String tag, @NonNull String msg) {
return println_native(LOG_ID_MAIN, DEBUG, tag, msg);
}
-
Android
+关注
关注
12文章
3974浏览量
130528 -
代码
+关注
关注
30文章
4906浏览量
71042 -
日志
+关注
关注
0文章
144浏览量
10893
发布评论请先 登录
STM32H7的启动过程分析
详解STM32启动过程
系统启动过程
嵌入式uCLinux内核启动过程分析
IC启动过程及Vcc电压波形的认知
Windows XP 启动过程详解
详解bootloader的执行流程与ARM Linux启动过程分析

STM32启动过程--启动文件--分析

stm32启动过程

Android日志与logd交互过程

评论