深入解析Android 5.0係統

深入解析Android 5.0係統 pdf epub mobi txt 電子書 下載2025

出版者:人民郵電齣版社
作者:劉超
出品人:
頁數:708
译者:
出版時間:2015-4-1
價格:CNY 99.00
裝幀:平裝
isbn號碼:9787115384560
叢書系列:
圖書標籤:
  • Android
  • 計算機
  • 編程
  • 軟件開發
  • 進階
  • 計算機科學
  • 計算機相關
  • 看瞭等於沒看
  • Android
  • Android 5
  • 0
  • 係統原理
  • 源碼分析
  • 深入解析
  • 技術
  • 開發
  • 移動開發
  • 計算機
  • 書籍
  • 編程
想要找書就要到 小美書屋
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!

具體描述

《深入解析Android 5.0係統》詳細剖析瞭最新Android 5.0 係統主要框架的原理和具體實現。本書共24章,覆蓋瞭Android 5.0 係統中、下層重要的模塊,對於每個模塊都詳細介紹瞭它們的架構、原理及代碼實現等各個方麵,盡量讓讀者知其然,又知其所以然,達到學以緻用的目的。主要內容為:

Android Build係統核心、Android的Bionic、係統調用的實現方法、Android的Binder、Binder應用層的核心類、Android 的JNI、Android的同步和消息機製、進程間的消息傳遞、Android的Init進程、Android的Zygote進程、Android的資源管理、Android的SystemServer進程、Android的應用管理、Android的組件管理、Android的多用戶模式、Android的圖形顯示係統、Android的窗口係統、Android 的輸入管理、Android的電源管理、Android的存儲係統、Android的網絡管理框架、Android的音頻係統、Android的SELinux模塊、Dalvik和ART虛擬機、Android的Recovery模塊、Android的調試方法、內存泄露的分析、Android的自動化測試等係統的核心知識。

在書中盡可能詳細地給齣瞭代碼的注釋、各種屬性和常量的解釋,以及各種係統中使用的文件格式的介紹,希望讀者能通過本書,獲得對Android 5.0係統進行二次開發的能力,本書是進行係統開發人員的案頭必備書。

《深入解析Android 5.0係統》麵嚮的讀者主要是進行係統開發的工程師,包括應用開發工程師、ROM開發工程師和各種使用Android作為開發平颱的TV和可穿戴式設備(Wear)的開發工程師。本書也可以作為大專院校相關專業師生的學習用書及培訓學校教材。

著者簡介

圖書目錄

第1章 建立Android係統開發環境 1
1.1 安裝操作係統 1
1.1.1 安裝方式的選擇 1
1.1.2 下載和安裝Ubuntu 1
1.1.3 使用Ubuntu遇到的問題 2
1.2 安裝開發包 3
1.2.1 安裝JDK 1.6 3
1.2.2 安裝OpenJDK 1.7 4
1.2.3 安裝編譯需要的開發包 4
1.3 安裝一些有用的工具 4
1.3.1 安裝Android SDK 4
1.3.2 安裝Android Studio 4
1.3.3 安裝Source Insight 5
1.3.4 安裝比較工具Meld 5
1.4 下載源碼 5
1.4.1 Git and Repo簡介 5
1.4.2 源碼版本曆史 6
1.4.3 下載Android源碼 7
1.4.4 下載Kernel源碼 8
第2章 Android的編譯環境——
Build係統 10
2.1 Android Build係統核心 10
2.1.1 編譯環境的建立 11
2.1.2 Build相關的環境變量 14
2.1.3 Build係統的層次關係 15
2.1.4 分析main.mk文件 17
2.1.5 Build係統的編譯目標
介紹 20
2.1.6 分析config.mk文件 22
2.1.7 分析product_config.mk
文件 24
2.1.8 Android 5.0中的64位
編譯 26
2.2 Android的産品配置文件 27
2.2.1 分析hammerhead的配置
文件 27
2.2.2 編譯類型eng、user和
userdebug 31
2.2.3 産品的Image文件 32
2.2.4 如何加快編譯速度 33
2.2.5 如何編譯Android的
模擬器 34
2.3 編譯Android的模塊 34
2.3.1 模塊編譯變量簡介 35
2.3.2 常用模塊定義實例 36
2.3.3 預編譯模塊的目標定義 37
2.3.4 常用“LOCAL_”變量 39
2.4 Android中的簽名 40
2.4.1 Android應用簽名方法 41
2.4.2 Android係統簽名介紹 43
2.4.3 Android簽名漏洞分析 44
第3章 連接Android和Linu內核的
橋梁——Android的Bionic 46
3.1 Bionic簡介 46
3.1.1 Bionic的特性 46
3.1.2 Bionic中的模塊簡介 49
3.2 Bionic C庫中的係統調用 50
3.2.1 係統調用簡介 50
3.2.2 係統調用的實現方法 51
3.3 Bionic中的內存管理函數 52
3.3.1 係統調用brk和mmap 52
3.3.2 內存分配器——dlmalloc
簡介 53
3.3.3 dlmalloc函數用法指南 54
3.4 管道 57
3.4.1 匿名管道PIPE和命名
管道FIFO 57
3.4.2 匿名管道的使用方法 58
3.5 Bionic中的綫程管理函數 59
3.5.1 Bionic綫程函數的特性 59
3.5.2 創建綫程和綫程的屬性 59
3.5.3 退齣綫程的方法 61
3.5.4 綫程本地存儲TLS 62
3.5.5 綫程的互斥量(Mutex)
函數 63
3.5.6 綫程的條件量(Condition)
函數 65
3.6 Futex同步機製 66
3.6.1 Futex的係統調用 66
3.6.2 Futex的用戶態操作 67
3.6.3 Mutex類使用Futex
實現同步 68
3.7 Android的 Log模塊 68
3.7.1 Android Log係統的架構 69
3.7.2 Log係統的接口和用法 70
3.7.3 Log係統的實現分析 71
3.8 可執行文件格式分析 75
3.8.1 ELF格式簡介 75
3.8.2 ELF文件頭格式 76
3.8.3 程序頭部錶 77
3.8.4 與重定位相關的“節區”的
信息——DYNAMIC段 79
3.8.5 函數的重定位過程 81
3.9 Bionic中的Linker模塊 84
3.9.1 可執行程序的裝載 84
3.9.2 可執行程序的初始化 85
3.9.3 Linker裝載動態庫 87
3.10 調試器——Ptrace和Hook API 91
3.10.1 ptrace函數簡介 91
3.10.2 Hook API的原理 92
3.10.3 利用ptrace實現
Hook API 93
第4章 進程間通信——Android
的Binder 98
4.1 Binder簡介 98
4.1.1 Binder對象定義 98
4.1.2 Binder的架構 99
4.1.3 組件Service和匿名
Binder服務 100
4.1.4 Binder的層次 101
4.2 如何使用Binder 102
4.2.1 使用Binder服務 102
4.2.2 Binder的混閤調用 102
4.2.3 用Jave開發Binder服務 103
4.2.4 用C++開發Binder服務 104
4.3 Binder應用層的核心類 106
4.3.1 IInterface中的兩個宏 106
4.3.2 Binder核心類的關係 107
4.3.3 函數asInterface的奧秘 109
4.3.4 Binder的“死亡通知” 110
4.3.5 Jave層的Binder類 111
4.4 Binder的實現原理 115
4.4.1 Binder的綫程模型 115
4.4.2 Binder對象的傳遞 119
4.4.3 分析IPCThreadState類 122
4.5 Binder驅動 126
4.5.1 應用層和驅動的消息
協議 126
4.5.2 Binder驅動分析 129
4.5.3 Binder的內存共享機製 130
4.5.4 驅動的ioctl操作 131
4.5.5 Binder調用過程 133
4.5.6 處理傳遞的Binder對象 138
4.6 解析名稱的模塊——
ServiceManager的作用 140
4.6.1 ServiceManager的架構 141
4.6.2 ServiceManger提供
的服務 143
4.7 匿名共享內存ashmem 146
4.7.1 ashmem的作用和用法 146
4.7.2 ashmem驅動的實現原理 148
4.7.3 ashemem驅動的代碼
分析 149
4.7.4 進程間傳遞文件描述符 152
第5章 連接Java和C/C++層的
關鍵——Android的JNI 154
5.1 JNI的作用 154
5.2 JNI用法介紹 154
5.2.1 從Java到C/C++ 154
5.2.2 從C/C++到Java的調用 158
5.3 JNI環境 160
5.3.1 結構體JNIEnv 160
5.3.2 JNIEnv的創建和初始化 162
5.3.3 JNI中的異常處理 163
5.3.4 JNI中的引用 164
5.3.5 指明錯誤位置——
“CheckJNI”的作用 165
5.4 ART帶來的JNI變化 165
5.4.1 垃圾迴收的影響 165
5.4.2 錯誤處理的變化 166
5.4.3 堆棧可能引發的問題 166
第6章 Android的同步和消息機製 167
6.1 原子操作 167
6.1.1 Android的原子操作函數 167
6.1.2 原子操作的實現原理 168
6.1.3 內存屏障和編譯屏障 169
6.2 Android native層的同步方法 171
6.2.1 互斥體Mutex和自動鎖
Autolock 171
6.2.2 解決綫程同步——條件
類Condition 173
6.3 Android Java層的同步機製 174
6.3.1 同步關鍵字synchronized 174
6.3.2 Object類在同步中
的作用 175
6.4 Android的消息機製 176
6.4.1 消息模型 177
6.4.2 理解Looper類 178
6.4.3 理解Handler類 180
6.4.4 消息的同步——Message
類的setAsynchronous()
方法 181
6.4.5 分析MessageQueue類 182
6.5 進程間的消息傳遞 186
6.5.1 理解Messenger類 187
6.5.2 建立通信通道——
AsyncChannel類的作用 187
第7章 第一個用戶進程——Android
的Init進程 192
7.1 Init進程的初始化過程 194
7.1.1 main函數的流程 194
7.1.2 啓動
。。。。。。。
· · · · · · (收起)

讀後感

評分

評分

評分

評分

評分

用戶評價

评分

bullshit

评分

三年前初入Android內核所讀,適閤對係統有個大概概覽

评分

搞不清作者到底想不想好好寫這本書,挺厚的,但看完覺得除瞭大框架概念之外,沒什麼技術營養……疏漏就不說瞭

评分

雖然裏麵很多印刷錯誤以及校準錯誤,但是內容來說還是不錯。斷斷續續看瞭一年。其實覺得這種類型的書還是分捲齣比較好。這樣各取所需就行瞭。這種寫法都想一次性全部包括,但是不太可能啊。

评分

去年看過一遍,根本找不到北,還覺得這本書太深奧瞭,今年看過深入理解android(1,2,3)後,又翻瞭翻這本書,突然感覺,一切都是那麼好理解,而且知識覆蓋率也相當大,但都不是特彆深入

本站所有內容均為互聯網搜索引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

© 2025 book.quotespace.org All Rights Reserved. 小美書屋 版权所有