
系统核心原理
文章平均质量分 90
介绍Android系统的核心原理
pren2016
现任携程旅行网“资深移动开发工程师”,5年Android开发经验
展开
-
【Android进阶笔记】系统启动流程(init进程、Zygote进程、SystemServer)
文章目录1. 系统启动流程概括2. init 进程启动2.1. init 进程的入口函数2.2. 解析 init.rc 文件3. Zygote 进程启动3.1. 启动过程3.1.1. app_main.cpp3.1.2. AndroidRuntime.cpp3.1.3. ZygoteInit.java3.1.4. ZygoteServer.java3.2. 启动总结4. SystemServer 的处理4.1. 启动 SystemServer 进程4.1.1. 启动 Binder线程池4.1.2. main原创 2021-05-14 15:08:25 · 991 阅读 · 0 评论 -
【Android进阶笔记】虚拟机(Dalvik、ART)
文章目录Dalvik 虚拟机与 JVM 的区别架构区别字节码区别其他区别DVM 运行时堆COW 策略运行时堆垃圾回收GC 日志GC 原因其他字段日志示例ART 虚拟机与 DVM 的区别运行机制区别CPU 区别解释器、JIT 和 AOT简介三者的配合method 的编译运行垃圾回收Android 8 之前Android 8 开始Android 10 开始GC 日志GC 原因垃圾收集器名称其他字段Dalvik 虚拟机Dalvik 虚拟机(Dalvik Virtual Machine),简称 DVM。它并原创 2021-05-13 11:25:10 · 569 阅读 · 0 评论 -
【Android进阶笔记】Binder机制
文章目录1. 传统的Linux进程间通信1.1. 基本原理1.2. 管道和消息队列的原理2. Binder原理2.1. Binder 是什么2.2. 动态内核可加载模块(LKM)2.3. 内存映射(mmap)2.4. Binder 数据流转原理2.5. Binder 和传统 IPC 对比2.5.1. 传统 Linux 跨进程2.5.2. Binder 的优势3. Binder 通信模型3.1. Client / Server / ServiceManager / Binder Dirver3.2. Bind原创 2021-03-08 14:10:33 · 392 阅读 · 3 评论 -
【Android进阶笔记】消息机制(Handler、Looper、MessageQueue、Message、IdleHandler)
文章目录1. Android 消息机制1.1. 消息机制的模型1.2. 消息机制的作用2. MessageQueue2.1. MessageQueue的插入2.2. MessageQueue的读取2.3. MessageQueue的退出3. Lopper3.1. Looper的创建和退出3.1.1. 创建 Looper3.1.2. Looper 的构造方法3.1.3. 退出 Looper3.2. Looper的循环4. Handler4.1. 发送消息4.2. 插队和撤回4.3. 处理消息5. 消息机制方法原创 2021-03-08 14:15:30 · 396 阅读 · 0 评论 -
【Android进阶笔记】事件分发机制
文章目录1. DOWN 事件的流向2. MOVE 和 UP 事件的流向2.1. dispatchTouchEvent 返回 true2.2. onTouchEvent 返回 true2.3. 总结3. setOnTouchListener1. DOWN 事件的流向【关键点】dispatchTouchEvent、onTouchEvent 返回 true:事件就停止传递了(没有谁能再收到这个事件)。dispatchTouchEvent 返回 false:事件停止往子 View 传递和分发同时开原创 2021-03-08 14:20:54 · 186 阅读 · 0 评论