Android之内核学习笔记

举报
chenyu 发表于 2021/07/26 23:09:05 2021/07/26
【摘要】 0、Android系统启动 《Android系统启动流程 -- bootloader》 《The Android boot process from power on》 《Android 启动过程介绍》 《Android培训班(86)内核运行之前的引导程序》 这是一系列文章 《Android 分区挂载》 1、init 《深入理解android 卷...

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研究之ServiceForground属性的描述,有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 工作流程分析

文章来源: chenyu.blog.csdn.net,作者:chen.yu,版权归原作者所有,如需转载,请联系作者。

原文链接:chenyu.blog.csdn.net/article/details/53695220

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。