最强Android书:架构大剖析

最强Android书:架构大剖析 pdf epub mobi txt 电子书 下载 2026

出版者:电子工业出版社
作者:【美】Jonathan Levin
出品人:
页数:360
译者:崔孝晨 等
出版时间:2018-7
价格:89
装帧:平装
isbn号码:9787121318139
丛书系列:
图书标签:
  • Android
  • 进阶
  • 计算机
  • 框架
  • 操作系统
  • 头秃|:)
  • 错误翻译
  • Android
  • 架构
  • 开发
  • 技术
  • 编程
  • 移动开发
  • 源码分析
  • 设计模式
  • 进阶
  • 实战
想要找书就要到 小美书屋
立刻按 ctrl+D收藏本页
你会得到大惊喜!!

具体描述

《最强Android书:架构大剖析》通过实验而不是源码,将Android 系统层层拆解,令读者深刻透彻地掌握Android 系统的内部技术:以init 进程为切入点详细阐述了Android 的启动过程和关键服务;从Android 作为资源协调者和服务提供者的角度,重点分析了servicemanager 和system_server 这两个进程。同时,作者比较了Linux 与Android 系统的区别,并对Android 系统的安全性做了深入的阐述。

《最强Android书:架构大剖析》采用了大量的图表示例和实验,表达新颖清晰,让读者能直观地掌握Android 的技术精髓。

《最强Android书:架构大剖析》适合广大移动开发者及对Android 系统感兴趣的人员阅读。

作者简介

JonathanLevin是一位经验丰富的技术培训师和咨询师,他的关注点是"三大系统"(Windows、Linux和MacOS)以及它们的移动版本(Android和iOS)原理。15年来,Jonathan坚持传播内核工程和修改技术的真知灼见,在DefCON会议上发表了很多技术演讲。他是Technologeeks.com公司的创始人和首席技术官(CTO)这是由一些志趣相投的专家合伙创办的公司,致力于通过技术培训传播知识,通过咨询解决棘手的技术难题。他们的专业领域覆盖软件架构中的实时及其他关键部分、系统/核级编程、调试、逆向工程以及性能优化。

译者简介

崔孝晨,教师,专注于信息安全领域,研究深入。翻译出版了多部著作,包括《黑客大追踪》、《Android安全攻防实战》,并致力于推动安全技术的发展。

目录信息

关于本书 XIV
第1 章 Android 体系结构的变革之路 1
1.1 Android 系统版本的历史变迁 2
Froyo(冻酸奶) 3
Gingerbread(姜饼人) 3
Honeycomb(蜂巢) 4
Ice Cream Sandwich(冰激凌三明治) 5
JellyBean(果冻豆) 5
KitKat(奇巧) 6
Lollipop(棒棒糖) 7
Marshmallow(棉花糖) 8
Nougat(牛轧糖) 9
1.2 Android 与Linux 11
并非另一个Linux 发布版本 11
然后Android 就登场了 12
与Linux 的异同 13
Android 的框架 15
Dalvik 虚拟机 18
JNI 19
原生二进制可执行文件 20
Bionic 22
Android 的原生库 25
源自其他项目的原生库 27
硬件抽象层 28
Linux 内核 29
1.3 Android 的衍生产品 30
谷歌官方的衍生产品 30
非谷歌官方的衍生品 33
1.4 对前方道路的思考 36
兼容64 位 36
ART(Android 运行时) 37
多画面 38
把Android 用作台式机操作系统 38
Android 和ARA 项目 39
Brillo 40
本章小结 40
参考文献 41
第2 章 Android 的分区和文件系统 43
2.1 分区架构 43
需要许多单独分区的原因 44
GUID 分区表 45
闪存(Flash Storage)系统 46
文件系统 46
Android 设备中的分区 49
2.2 Android 文件系统中存储的内容 53
root 文件系统 53
/system 分区 54
/data 分区 65
/cache 分区 71
/vendor 目录 72
SD 卡 73
2.3 受保护的文件系统 74
OBB:Opaque Binary Blobs 74
ASec:Android 安全存储(Android Secure Storage) 76
2.4 Linux 伪文件系统 78
cgroupfs 78
debugfs 79
functionfs(/dev/usb-ffs/adb) 80
procfs(/proc) 81
pstore(/sys/fs/pstore) 81
selinuxfs(/sys/fs/selinux) 82
sysfs(/sys) 83
本章小结 84
参考文献 84
第3 章 Android 的启动、备份和重置 86
3.1 Android 系统镜像 87
Boot Loader 89
Boot 镜像 93
内核 95
RAM disk 97
/System 和/Data 分区镜像 99
3.2 启动过程 101
固件启动过程 101
内核启动过程 105
3.3 关机和重启 109
3.4 应用的备份和恢复 112
命令行工具 113
本地备份 114
监视备份操作 117
3.5 系统重置(recovery)和升级 119
OTA(Over-The-Air)升级包 121
制作你自己的ROM 124
制作ROM 时可用的网上资源 128
本章小结 130
参考文献 130
第4 章 init 132
4.1 init 的角色和任务 132
系统属性 134
.rc 文件 140
总结:init 的执行流程 146
4.2 init 和USB 150
4.3 init 的其他角色 152
ueventd 153
watchdogd 154
本章小结 154
XIV ┃ 最强Android 书:架构大剖析
本章讨论所涉及的文件 155
第5 章 Android 的守护进程 156
5.1 core 类中的服务 156
adbd 156
servicemanager 160
healthd 161
lmkd(Android L) 165
logd(Android L) 168
vold 173
5.2 网络相关服务 182
netd 182
mdnsd 187
mtpd 187
racoon 188
rild 189
5.3 图形及多媒体服务 190
surfaceflinger 190
bootanimation 192
mediaserver 194
drmserver 196
5.4 其他服务 197
installd 197
keystore 200
debuggerd[64] 204
gatekeeper(Android M) 207
sdcard 208
Zygote[64] 211
本章小结 214
本章讨论涉及的文件 214
参考文献 215
第6 章 框架服务的架构 216
6.1 再探servicemanager 217
6.2 服务调用的模式 222
优点和缺点 224
序列化和Android 接口定义语言(AIDL) 225
6.3 Binder 228
简明历史 228
那么,Binder 究竟是什么 229
使用Binder 230
分析Binder 的当前使用情况 231
6.4 system_server 232
启动及执行流程 232
修改启动时的行为 234
本章小结 237
本章讨论涉及的文件 237
参考文献 237
第7章 从Linux 角度看Android 238
7.1 重温/proc 239
符号链接:cwd、exe 和root 240
fd 243
fdinfo 245
status 247
7.2 用户模式内存管理 254
虚拟内存的分类和生命周期 254
内存的相关术语 258
内存不足时的应对方案 266
7.3 跟踪系统调用 269
toolbox ps 工具 269
wchan 和syscall 文件 270
strace 工具 271
本章小结 272
参考文献 272
第8 章 Android 安全性 274
8.1 移动安全威胁建模 275
攻击向量 275
攻击之道 278
8.2 Linux 层上的安全措施 281
Android 使用Linux 权限的方式 281
Linux 权能 289
SELinux 294
其他值得注意的特性 301
8.3 Dalvik 层上的安全措施 305
Dalvik 层上的权限 305
Dalvik 代码签名 310
8.4 用户层上的安全措施 312
锁屏机制 312
支持多用户 316
密钥管理 318
证书管理 318
密钥和私钥管理 322
8.5 存储安全 323
加密/data 分区 323
基于文件的加密(Nougat 7.1) 326
Direct Boot (Nougat 的新特性) 326
启动过程中加强验证 327
8.6 Root Android 设备 328
在设备启动环节中root 329
利用安全漏洞root 331
Root 对安全的影响 332
本章小结 334
参考文献 334
· · · · · · (收起)

读后感

评分

这本书不同于市面上其他剖析Android内核的书,它对安卓系统的每个模块都有涉猎。比如从介绍启动Bootloader, 然后各个daemon的启动和功能,到framework层各个service介绍,但只是蜻蜓点水。作者把所有的包袱都扔在了第二卷,可以想象第二卷的工作量也够大的了,第二卷目前还没消...

评分

与传统Android技术书不同的是,本书并不从源码分析入手,而是用实验指导,层层解剖Android架构,无须高深的知识背景,也能深入理解Android的精髓——让人知其所以然,有顿悟之感。 作者本身潜心钻研操作系统多年,业内资深大牛。对了,他还是名果粉,所以书中有时能看到他对And...  

评分

与传统Android技术书不同的是,本书并不从源码分析入手,而是用实验指导,层层解剖Android架构,无须高深的知识背景,也能深入理解Android的精髓——让人知其所以然,有顿悟之感。 作者本身潜心钻研操作系统多年,业内资深大牛。对了,他还是名果粉,所以书中有时能看到他对And...  

评分

与传统Android技术书不同的是,本书并不从源码分析入手,而是用实验指导,层层解剖Android架构,无须高深的知识背景,也能深入理解Android的精髓——让人知其所以然,有顿悟之感。 作者本身潜心钻研操作系统多年,业内资深大牛。对了,他还是名果粉,所以书中有时能看到他对And...  

评分

这本书不同于市面上其他剖析Android内核的书,它对安卓系统的每个模块都有涉猎。比如从介绍启动Bootloader, 然后各个daemon的启动和功能,到framework层各个service介绍,但只是蜻蜓点水。作者把所有的包袱都扔在了第二卷,可以想象第二卷的工作量也够大的了,第二卷目前还没消...

用户评价

评分

老实说,初次接触这本书的排版和技术名词密度,我曾有些许畏惧,感觉它更像是为资深架构师准备的。但随着阅读的深入,我发现作者的**逻辑组织能力**极强,总能在一个复杂的概念中找到一个清晰的**切入点**。比如,对于**内存管理**和**GC调优**的章节,它用非常具象的例子,解释了**对象引用链**是如何形成的,以及`LeakCanary`这类工具背后的原理,这比那些只告诉你“小心内存泄漏”的书籍要实在得多。此外,书中对**构建系统(Gradle)**的自定义能力也进行了深入挖掘,展示了如何利用它来管理多模块项目的依赖冲突和构建速度优化,这在实际的大项目维护中是节省了无数调试时间的“黑科技”。这本书的价值在于,它提供的知识体系是**自洽且相互支撑**的,读完一部分,对后面部分的理解自然水到渠成,形成了一个完整的知识闭环。

评分

这本书的**实战深度**令人印象深刻,它绝非纸上谈兵的理论堆砌。作者显然在一线带着团队解决过硬骨头的问题,所以书中的每一条建议都带着**“经过验证”**的沉淀感。最令我受益匪浅的是关于**第三方库选型与深度定制**的讨论。它不光告诉你应该引入哪个库,更深入分析了主流网络库(如OkHttp)的**拦截器链**如何优化请求生命周期,以及如何在其基础上构建定制化的监控和重试机制。这种对**“生态系统”**的理解,是初级开发者常常忽略的。它鼓励读者去阅读和理解所用框架的源码,而不是将其视为黑盒。看完这本书,我不再惧怕面对一个从未接触过的复杂开源项目,因为我已经具备了从**架构层面快速逆向工程**的能力。这套方法论,感觉可以迁移到其他技术栈的学习中去,其指导意义是深远的。

评分

这本书的文字风格非常**老辣而直接**,没有太多花哨的比喻,直击核心。它更像是一位经验丰富的老兵在传授他的实战秘诀,而不是一个学院派在做理论阐述。对于那些已经工作了几年,感觉自己写代码越来越像“调包侠”的开发者来说,这本书是**醍醐灌顶**的存在。它系统地梳理了Android**组件化和模块化**的演进路径,并给出了在大型项目中实践这些理念时可能遇到的**陷阱和规避策略**。我记得其中一章关于**自定义View**性能优化的讲解,不仅讲了如何避免不必要的重绘,还深入探讨了`measure/layout/draw`流程中的**计算复杂度**,这在处理复杂列表或动画时体现出了极高的价值。作者对代码规范和设计模式的理解,也深深地烙印在了每一处讲解中,让人在学习技术的同时,也潜移默化地提升了自身的工程素养。这绝对不是一本可以快速翻阅的书,它需要沉下心来,边读边在自己的项目中进行对照和实践。

评分

这本《最强Android书:架构大剖析》读起来简直是一次酣畅淋漓的技术洗礼,作者的功力可见一斑。书中对Android系统底层的剖析,不是那种干巴巴的API罗列,而是真正深入到了**设计哲学**的层面。比如,在讲解IPC机制时,它没有止步于AIDL的表面调用,而是细致地梳理了Binder的**跨进程通信原理**,从驱动层到用户空间的交互,都给出了清晰的逻辑图。我尤其欣赏它在处理**并发问题**时的视角,不同于市面上很多书籍只教你如何使用`AsyncTask`或`RxJava`,这本书更多地探讨了**线程调度**和**内存屏障**在实际应用中的影响,这对于构建高性能、高稳定性的应用至关重要。读完之后,我感觉自己对Android应用的生命周期和资源管理有了全新的认识,那种“知其然,更知其所以然”的感觉,是学习其他教材时很少能获得的。它强迫你跳出“实现功能”的舒适区,去思考“**为什么**要这样设计”,这种对底层原理的深挖,无疑是提升架构思维的关键一步。

评分

我必须说,这本书在**“架构演进”**这个叙事线索上做得非常出色,这使得它远超了一般的工具书的范畴。它没有将当前流行的架构如MVVM或MVI视为终极真理,而是回溯了MVP、MVC等模式的**局限性**,从而解释了为什么现代的响应式编程和声明式UI框架会应运而生。这种**历史的纵深感**,让读者在理解新技术时,能够更好地把握其设计意图,而不是盲目跟风。例如,在讨论数据层时,它详细分析了`Room`等ORM框架的**事务处理机制**和**并发写入策略**,并对比了它们在不同业务场景下的适用性。对于我这种热衷于深究技术根源的人来说,这本书提供的背景知识和权衡分析,比单纯的“如何使用”要宝贵得多。它让我不再满足于“能跑起来”,而是开始追求“**设计得更优雅、更健壮**”。

评分

有些乱啊,应用开发看的懵逼啊,此前也做过系统的,看这个也懵逼

评分

爲什麼起了這麼一個蠢譯名?

评分

有些乱啊,应用开发看的懵逼啊,此前也做过系统的,看这个也懵逼

评分

只能大致看了一遍,因为细看真的不怎么看得懂,对作者的深度佩服的五体投地。

评分

有些乱啊,应用开发看的懵逼啊,此前也做过系统的,看这个也懵逼

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2026 book.quotespace.org All Rights Reserved. 小美书屋 版权所有