当我在命令行中输入adb lolcat
时,经常看到下面这两行
--------- beginning of /dev/log/main
D/dalvikvm( 2586): GC_CONCURRENT freed 651K, 7% free 12236K/13063K, paused 7ms+4ms
D/dalvikvm( 2586): GREF has increased to 201
W/AudioHardwareALSA( 2071): badstate and do recovery.....
--------- beginning of /dev/log/system
I/ActivityManager( 2159): START {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.android.mms/.ui.ConversationList bnds=[909,207][1011,300]} from pid 2586
在logcat的输出中 /dev/log/main 和 /dev/log/system 是代表什么意思呢?
谢谢!
参考 http://elinux.org/Android_Logging_System
创建的系统日志用来在一个单独的缓冲中('/dev/log/main'外)保持系统信息。所以,一个冗长的应用程序不能溢出系统消息,会导致它们丢失。
应该是log路径,里面包含调试信息,通常未开启会报这个错误
Unable to open log device ‘/dev/log/main’: No such file or directory
应该是缓存LogCat的信息用的
kernel中为系统的不同部分提供了四个不同log缓存区:
/dev/log/mian : 主应用程序log,除了下三个外,其他用户空间log将写入此节点,包括System.out.print及System.erro.print等
/dev/log/events : 系统事件信息,二进制log信息将写入此节点,需要程序解析
/dev/log/radio : 射频通话相关信息,tag 为"HTC_RIL" "RILJ" "RILC" "RILD" "RIL" "AT" "GSM" "STK"的log信息将写入此节点
/dev/log/system : 低等级系统信息和debugging,为了防止mian缓存区溢出,而从中分离出来