当前位置:主页 > 计算机电子书 > 移动开发 > Android下载
最强Android书:架构大剖析

最强Android书:架构大剖析 PDF 超清完整版

  • 更新:2023-08-13
  • 大小:187.2 MB
  • 类别:Android
  • 作者:Jonathan
  • 出版:电子工业出版社
  • 格式:PDF

  • 资源介绍
  • 相关推荐

《最强Android书:架构大剖析》是一本非常优秀的Android技术书籍。该书通过深入剖析Android架构,不仅能帮助读者深入了解Android技术内幕,还能在不需要源码的情况下彻底掌握Android开发技术。书中采用全程实验直接指导的方式,通过层层拆解的方式详细讲解了Android的各个核心要素。更令人称奇的是,本书还持续更新中,确保读者掌握的知识始终与最新的Android技术保持同步。这本书不仅受到了美国中情局的青睐,还被国内部分手机厂商作为内部员工学习的教材。无论是对于Android开发初学者还是专业开发者来说,这本书都是一本不可多得的宝典。

最强Android书:架构大剖析

最强Android书:架构大剖析 电子书封面

读者评价

只能大致看了一遍,因为细看真的不怎么看得懂,对作者的深度佩服的五体投地。
版权归作者所有,任何形式转载请联系作者。
与传统Android技术书不同的是,本书并不从源码分析入手,而是用实验指导,层层解剖Android架构,无须高深的知识背景,也能深入理解Android的精髓——让人知其所以然,有顿悟之感。
作者本身潜心钻研操作系统多年,业内资深大牛。对了,他还是名果粉,所以书中有时能看到他对Android和苹果系统的比较评价,很搞笑,性情中人也。
这本书不同于市面上其他剖析Android内核的书,它对安卓系统的每个模块都有涉猎。比如从介绍启动Bootloader, 然后各个daemon的启动和功能,到framework层各个service介绍,但只是蜻蜓点水。作者把所有的包袱都扔在了第二卷,可以想象第二卷的工作量也够大的了,第二卷目前还没消息。
书里有几个亮点,一个是提供了小实验,对于不熟悉android内部很多hack工具的人来说,有些命令会让人眼前一亮。
另一个亮点是作者画图非常精细漂亮,看得出他看代码功力深厚,仅仅几幅图就能把总体逻辑架构干干净净地展现在读者面前。(当然,这也许和作者的职业有关系吧,他作为一个科技咨询公司的CTO,一大业务就是给美国的技术人员上培训课,因此图文并茂讲述倒是颇有意思。)
看得出作者的技术转型,从Linux的hacker转攻Android,并且很快将经验移植到android中并很快成了领域内的大牛。其中用很多Linux的工具和思维来分析对比android,非常有趣,可以从中横向对比两者系统的异同。

内容介绍

《最强Android书:架构大剖析》通过实验而不是源码,将Android 系统层层拆解,令读者深刻透彻地掌握Android 系统的内部技术:以init 进程为切入点详细阐述了Android 的启动过程和关键服务;从Android 作为资源协调者和服务提供者的角度,重点分析了servicemanager 和system_server 这两个进程。同时,作者比较了Linux 与Android 系统的区别,并对Android 系统的安全性做了深入的阐述。
《最强Android书:架构大剖析》采用了大量的图表示例和实验,表达新颖清晰,让读者能直观地掌握Android 的技术精髓。
《最强Android书:架构大剖析》适合广大移动开发者及对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

资源下载

资源下载地址1:https://pan.baidu.com/s/1BDOMjSdD0WOeH1M1wO9-3A

相关资源

网友留言