网站首页 软件下载 游戏下载 翻译软件 电子书下载 电影下载 电视剧下载 教程攻略
书名 | 最强Android书 |
分类 | 人文社科-社会科学-语言文字 |
作者 | (美)Jonathan Levin |
出版社 | 电子工业出版社 |
下载 | ![]() |
简介 | 内容推荐 本书抢先发售将android的内部工作机制整理成了文档,揭示了Android中各种组件的执行逻辑和工作流程。本书通过实验而不是源码,将Android系统层层拆解,令读者深刻透彻地掌握Android系统的内部技术:以init进程为切入点详细阐述了Android的启动过程和关键服务;从Android作为资源协调者和服务提供者的角度,重点分析了servicemanager 和system_server 这两个进程。同时,作者比较了Linux与Android系统的区别,并对Android系统的安全性做了深入的阐述。本书采用了大量的图表示例和实验,表达新颖清晰,让读者能直观地掌握Android 的技术精髓。本书适合广大移动开发者及对Android系统感兴趣的人员阅读。 作者简介 乔纳森·列维(Jonathan Levin)是一位经验丰富的技术培训师和咨询师,他的关注点是"三大系统"(Windows、Linux和MacOS)以及它们的移动版本(Android和iOS)原理。15年来,Jonathan坚持传播内核工程和修改技术的真知灼见,在DefCON会议上发表了很多技术演讲。他是Technologeeks.com公司的创始人和首席技术官(CTO)这是由一些志趣相投的专家合伙创办的公司,致力于通过技术培训传播知识,通过咨询解决棘手的技术难题。他们的专业领域覆盖软件架构中的实时及其他关键部分、系统/核级编程、调试、逆向工程以及性能优化。 崔孝晨,教师,专注于信息安全领域,研究深入。翻译出版了多部著作,包括《黑客大追踪》、《Android安全攻防实战》,并致力于推动安全技术的发展。 目录 关于本书 XVIII 章 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 本章讨论所涉及的文件 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 204 gatekeeper(Android M) 207 sdcard 208 Zygote 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 |
随便看 |
|
霍普软件下载网电子书栏目提供海量电子书在线免费阅读及下载。