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研究之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發現之旅之輸入事件如何在應用端傳遞》
?
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的資源編譯過程》
?
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 工作流程分析》
總結
以上是生活随笔為你收集整理的Android内核学习笔记的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: SQL之数据插入
- 下一篇: HiJson,一个json格式化查看工具
