> Android内核
Android内核学习笔记- http://blog.csdn.net/imyfriend/article/details/9946821
0、Android系统启动
《Android系统启动流程 -- bootloader》
《The Android boot process from power on》
《Android 启动过程介绍》
《Android培训班(86)内核运行之前的引导程序》 这是一系列文章
《Android 分区挂载》
1、init
《深入理解android 卷1》 第3章 深入理解init
《Android框架揭秘》第3章 init进程
《Android的init过程详解(一)》
《Android的init过程(二):初始化语言(init.rc)解析》
《Android系统初始化开始位置及流程分析》
《Android的初始化语言脚本init.rc解析》
《Android Init进程源码分析》 init.rc解析过程描述详细,图文并茂。
《Android Init进程分析》
《Android情景分析之详解init进程(以启动zygote为例)》
2、binder
《Android框架揭秘》第六章 -- 第十章 以生动的形式讲述了binder,其中也大量的插图,但是不够详细。值得参考。
《Android系统源代码情景分析》第五章 描叙详细,但是不够生动。值得参考。第六章的6.5小结描述BINDER_TYPE_FD。
《Android_IPC机制与Binder框架》 高焕堂著,形象的描述了从Java层到C++层的binder,偏重应用的实现。
《Android Binder通信》
《ServiceManager 进程启动源码分析》
《图解Android - Binder 和 Service》 描述别树一帜,形象生动,强烈推荐。
《Android Binder线程》 重点描述了binder线程的创建
《本地Binder框架通信原理》
《Binder 机制详解—Binder 系统架构》
《浅析android中getStrongProxyForHandle函数动态申请索引对应的内存空间》
《红茶一杯话Binder(ServiceManager篇)》
3、Ashmem(Anonymous Shared Memory) 匿名内存共享
《Android系统源代码情景分析》第六章 描叙详细。
《Android技术内幕》第二章 2.3.2小结 描述的比较简单,但是对于《Android系统源代码情景分析》第六章的描述可以起到补充的作用。
《3.2.1 匿名共享内存(1)》 《Android安全机制解析与应用实践》第3章
《3.2.1 匿名共享内存(2)》
《3.2.1 匿名共享内存(3)》
《Android Ashmem相关介绍》
4、activity
《Android系统源代码情景分析》第七章 activity启动过程描叙详细。
《Android的设计与实现》 package manager篇(第8~9章)主要讲解了package manager的机制与实现,以及apk的安装方法与过程;activity manager篇(第10~12章)深入阐述了activitymanagerservice的运行机制、应用程序和进程的启动流程,以及进程管理机制。
《Android内核剖析》第十章 AMS内部原理
《解开Android应用程序组件Activity的”singleTask”之谜》
《Activity启动分析》
《android Application Component研究之Activity(一)》比较详细的描述了“task管理”,即startActivityUncheckedLocked函数(主要是处理activity的launchMode和intent的flag)
《android Application Component研究之Activity(二)》
《android:clearTaskOnLaunch的用法》
《Android 笔记之 clearTaskOnLaunch&finishOnTaskLaunch》
《FLAG_ACTIVITY_RESET_TASK_IF_NEEDED》
《android:clearTaskOnLaunch》
《Android开发之旅:活动与任务》
《Activity启动创建 (AcitivtyManageService,ActivityThread,Activity)》
《深入理解Activity启动流程》
5、service
《Android系统源代码情景分析》第八章 service启动过程描叙详细。
《android Application Component研究之Service》 有Forground属性的描述,有unbind过程的分析。
《Android服务之Service(其一)》 有生命周期图,有例子。
《Service》google官方描述。
《Android 中的 Service 全面总结》
《android如何保证service不被杀死》
6、BroadcastReceiver
《Android系统源代码情景分析》第九章 broadcast receiver启动过程描叙详细
《android Application Component研究之BroadcastReceiver》有broadcast发送和分发过程的描述,有Protected Broadcast的讲解,有broadcast超时的过程分析。
7、ContentProvider
《android Application Component研究之ContentProvider》
《存储文件的ContentProvider》
8、Mashup设计思想
《Android开发精要》3.1 基于Mashup的应用设计
9、属性系统(property system)
《android property system 》
《属性系统代码分析》
《Android平台上使用属性系统(property system)》
《Android Property System | Android属性系统》
《深入理解android 卷1》 第3章 3.2.4 属性系统
《Android框架揭秘》第3章 init进程 3.6 属性服务
《Android 系统属性SystemProperty分析》
《Android情景分析之属性服务》
《SEAndroid安全机制对Android属性访问的保护分析》
《Android 的系统属性(SystemProperties)分析》
《Android 属性系统设计分析》 有__libc_prenit的分析
10、创建设备节点文件uevent
《Android框架揭秘》第3章 init进程 3.4创建设备节点文件
《基于android2.3.5系统:开天辟地Android启动机制[二]》
《基于android2.3.5系统:开天辟地Android启动机制[三]》
《android之init进程-uevent》
《为Android应用程序读取/dev下设备而提权》
《android ueventd 本地native部分源码分析》
《Android设备节点的动态管理》
《android提权漏洞CVE-2010-EASY修复》
《Android uevent进程源码分析》
11、zygote和system_server
《深入理解android 卷1》 第4章 深入理解zygote
《Android框架揭秘》第5章 Zygote
《Android系统源代码情景分析》第11章 Zygote和System进程的启动过程
《Android内核剖析》第15章 15.6 Framework资源
《Zygote进程启动过程源代码分析》
《SystemServer进程启动过程源码分析》
《图解Android - Zygote, System Server 启动分析》
12、进程管理和OOM
《深入理解Android 卷2》 第6章 6.6 AMS中的进程管理 从部分代码角度讲解,不是很详细;
《Android开发精要》第5章 组件生命周期解析 5.2 应用进程托管 -- 从上层角度描述为何要进程托管及托管的算法
《Android内核剖析》第十章 AMS内部原理 10.2 内存管理
《Android 操作系统的内存回收机制》
《android 2.3 应用管理机制分析》
《Android内存管理机制详解》
《Android内存阀值修改--内存回收机制配置》
《Linux 2.6 中的页面回收与反向映射》
《Android内存管理原理》
《Android Low memory killer》
《Android 系统内存分析》
《Android开发:性能最佳实践-管理应用内存》
《Android代码内存优化建议-OnTrimMemory优化》
13、Android编译系统
《Android内核剖析》 第18章 Android编译系统
《Android核心原理与系统应用高效开发》 第2章 编译结构和各种构建
《Android编译系统参考手册》
14、WMS
《Android 4.4(KitKat)窗口管理子系统 - 体系框架》
15、电池
《android 电池(一):锂电池基本原理篇》
《android 电池(二):android关机充电流程、充电画面显示》
《android 电池(三):android电池系统》
《android电池(四):电池 电量计(MAX17040)驱动分析篇》
《android电池(五):电池 充电IC(PM2301)驱动分析篇》
《android 2.3 电量管理》
16、input系统
《android 物理按键》
《InputMonitor笔记》
《Android之input系统流程》
《Android之Input子系统事件分发流程》
《Android Input Framework(一)》
《Android4.0 input事件输入流程详解(中间层到应用层)》
《Android 4.2 Input 流程分析》
《安卓4.1: input系统从frameworks到kernel 》
《Android输入输出机制之来龙去脉之前生后世》
《android发现之旅之输入事件如何在应用端传递》
《Android触摸屏事件派发机制详解与源码分析一(View篇)》
17、内存泄露
《Android中native进程内存泄露的调试技巧》
18、intent
《Android开发之旅: Intents和Intent Filters(理论部分)》
20、Dalvik
《 Dalvik虚拟机进程和线程的创建过程分析》
《Android开发工具ADB教程之三:Dalvik虚拟机之jdwp线程》
《Android培训班(54)虚拟机的历史》 这是一个系列文章
《Android 信号处理面面观 之 trace 文件含义》
《Java中System.loadLibrary() 的执行过程》
21、View
《android文本布局引擎》
《Android Text Layout 框架》
《ViewGroup源码分析》
《Android TextView显示中文不对齐问题》
《Android 属性动画 源码解析 深入了解其内部实现》
《Android应用程序UI硬件加速渲染的动画执行过程分析》
22、AMS
《ActivityManagerService分析一:AMS的启动》
23、资源
《framework资源文件》
《如何在Android中写和使用一个自定义的java库》
《如何为Android系统添加一个新的资源包》
《浅谈Android的资源编译过程》
《在android中增加公用资源包(类似framework-res.apk)》
《Android APK应用安装原理(1)-解析AndroidManifest原理-PackageParser.parserPackage》
《Android 资源类型 整理》
《res与res-auto的区别》
《Android中自定义属性的两种方法》
《Android应用资源---样式资源类型(Style)》
《Android应用资源---其他资源类型(More Types)(一)》
《Android应用资源---其他资源类型(More Types)(二)》
《Android应用资源---其他资源类型(More Types)(三)》
《Android xml资源文件中@、@android:type、@*、?、@+含义和区别》
《android三个特殊的资源目录 /res/xml /res/raw 和 /assets》
《Android字符串进阶之三:字体属性及测量(FontMetrics)》
《Styling Views on Android (Without Going Crazy)》
《Android学习系列(39)--Android主题和样式之系统篇(上)》
《Android学习系列(40)--Android主题和样式之系统篇(下)》
《Android系统自带样式(android:theme)》
《浅谈Android的资源编译过程》
《Andriod中Style/Theme原理以及Activity界面文件选取过程浅析》
24、android:persistent属性
《android persistent属性研究》
《Android: HowTo设置app不被系统kill掉》
《android里面的进程回收机制》
《说说Android应用的persistent属性》
25、Handler、Looper和MessageQueue
《Handler Looper MessageQueue 详解》
26、debuggerd
《Android debuggerd 源码分析》
27、log
《解读Android LOG机制的实现》
《Android架构分析之LOG模块》
《Android系统开发中LOG的输出与使用》
《打开Android C文件中的LOG》
《Android日志系统驱动程序Logger源代码分析》
《Android应用程序框架层和系统运行库层日志系统源代码分析》
《Android日志系统Logcat源代码简要分析》
《android log 和logcat 分析(一)》
《android log你不知道的小技巧》
《android中BuildConfig.DEBUG的使用》
《android 代码优化:关闭输出日志》
28、DropBox
《介绍 Android DropBoxManager Service》
29、AppOpsManager
《Android Kitkat的AppOps》
《Android 4.3 隐藏功能 App Ops 分析》
《AppOpsManager 一次简单应用》
30、ADB
《android adb adbd analyse》
《android2.3-adb源码分析》
《Android系统root破解原理分析》
31、BackupManagerService
《第十五篇 Android 的Backup服务管理机制与架构分析》
《BackupManager的使用与解析》
《关于BackupManagerService》
32、UserManager 多用户机制
《Android4.2多用户模式的结构与实现》
33、DisplayManager 多屏幕机制
《DisplayContent、StackBox、TaskStack笔记》
《android 扩展屏幕 多屏显示》
《第十七篇 --ANDROID DisplayManager 服务解析一》
《android wifi display》
《Android WifiDisplay分析一:相关Service的启动》
34、Vold
《Android vold 工作流程分析》