分  享 
分  享 
源  码 
源  码 
课  程 
课  程 
设  计 
设  计 

[移动技术] 【PDF教材】《深入理解Android内核设计思想》PDF扫描版[189MB]

[复制链接]
密探007邮箱认证 微信认证 发表于 2018-1-19 10:28:46 | 显示全部楼层 |阅读模式
「智能推荐」
【PDF教材】《深入理解Android内核设计思想》PDF扫描版[189MB] 【PDF教材】《拨云见日:基于android的内核与系统架构源码分析》中文PDF扫描版[5...
【PDF教材】《深入解析Android 5.0系统》刘超-中文pdf完整版[140MB] 【PDF教材】《深入理解 Android 自动化测试》带目录书签-PDF版 [67MB]

欢迎加入「奥学网」学霸平台,让自学改变你的世界!

您需要 登录 才可以下载或查看,没有帐号?账号注册

x
【PDF教材】《深入理解Android内核设计思想》PDF扫描版[189MB] - 奥学网

  深入理解Android内核设计思想适用于Android 4.3以上的版本。全书从操作系统的基础知识入手,全面剖析进程/线程、内存管理、Binder机制、GUI显示系统、多媒体管理、输入系统等核心技术在Android中的实现原理。书中讲述的知识点大部分来源于工程项目研发,因而具有较强的实用性,希望可以让读者“知其然,更知其所以然”。全书分为编译篇、系统原理篇、应用原理篇、系统工具篇共4篇22章,基本涵盖了参与Android开发所需具备的知识,并通过大量图片与实例来引导读者学习,以求尽量在源代码分析外为读者提供更易于理解的思维方式。

  深入理解Android内核设计思想既适合Android系统工程师,也适合于应用开发工程师来阅读提升Android开发能力。读者可以在《深入理解Android内核设计思想》潜移默化的学习过程中更深刻地理解Android系统,并将所学知识自然地应用到实际开发难题的解决中。

  深入理解Android内核设计思想目录:

  第1篇Android编译篇

  第1章Android系统简介

  1.1 Android系统发展历程

  1.2 Android系统特点

  1.3 Android系统框架

  第2章Android源码下载及编译

  2.1 Android源码下载指南

  2.1.1基于Repo和Git的版本管理

  2.1.2 Android源码下载流程

  2.2原生态系统编译指南

  2.2.1建立编译环境

  2.2.2编译流程

  2.3定制产品的编译与烧录

  2.3.1定制新产品

  2.3.2 Linux内核编译

  2.3.3烧录

  2.4 Android系统映像文件

  2.4.1 boot.img

  2.4.2 ramdisk.img

  2.4.3 system.img

  2.5 OTA系统升级

  2.5.1生成升级包

  2.5.2获取升级包

  2.5.3 OTA升级-RecoveryMode

  2.6 Android反编译

  第3章Android编译系统

  3.1 Makefile入门

  3.2 Android编译系统

  3.2.1 Makefile依赖树的概念

  3.2.2树根节点droid

  3.2.3 main.mk解析

  3.2.4 droidcore节点

  3.2.5 dist_files

  3.2.6 Android.mk的编写规则

  第2篇Android原理篇

  第4章操作系统基础

  4.1计算机体系结构(Computer Architecture)

  4.1.1冯?诺依曼结构

  4.1.2哈佛结构

  4.2什么是操作系统

  4.3进程间通信的经典实现

  4.3.1共享内存(Shared Memory)

  4.3.2管道(Pipe)

  4.3.3 Unix Domain Socket

  4.3.4 RPC(RemoteProcedure Calls)

  4.4同步机制的经典实现

  4.4.1信号量(Semaphore)

  4.4.2 Mutex

  4.4.3管程(Monitor)

  4.4.4同步范例

  4.5 Android中的同步机制

  4.5.1进程间同步——Mutex

  4.5.2条件判断——Condition

  4.5.3“栅栏、障碍”——Barrier

  4.5.4加解锁的自动化操作——Autolock

  4.6操作系统内存管理基础

  4.6.1虚拟内存(Virtual Memory)

  4.6.2内存保护(Memory Protection)

  4.6.3内存分配与回收

  4.6.4进程间通信——mmap

  4.7 Android中的Low Memory Killer

  4.8 Android匿名共享内存(Anonymous Shared Memory)

  4.8.1 Ashmem设备

  4.8.2 Ashmem应用实例

  4.9 JNI

  4.9.1 Java函数的本地实现

  4.9.2本地代码访问JVM

  4.10学习Android系统的两条线索

  第5章Android进程/线程管理

  5.1 Android进程和线程

  5.2 Handler,MessageQueue,Runnable与Looper

  5.3 UI主线程——ActivityThread

  5.4 Thread类

  5.4.1 Thread类的内部原理

  5.4.2 Thread休眠和唤醒

  5.4.3 Thread实例

  5.5 Android应用程序的典型启动流程

  第6章进程间通信——Binder

  6.1智能指针

  6.1.1智能指针的设计理念

  6.1.2强指针sp

  6.1.3弱指针wp

  6.2进程间的数据传递载体——Parcel

  6.3 Binder驱动与协议

  6.3.1打开Binder驱动——binder_open

  6.3.2 binder_mmap

  6.3.3 binder_ioctl

  6.4“DNS”服务器——ServiceManager(Binder Server)

  6.4.1 ServiceManager的启动

  6.4.2 ServiceManager的构建

  6.4.3获取ServiceManager服务——设计思考

  6.4.4 ServiceManagerProxy

  6.4.5 IBinder和BpBinder

  6.4.6 ProcessState和IPCThreadState

  6.5 Binder客户端——Binder Client

  6.6 Android接口描述语言——AIDL

  6.7匿名Binder Server

  第7章Android启动过程简析

  7.1第一个系统进程(init)

  7.1.1 init.rc语法

  7.1.2 init.rc实例分析

  7.2系统关键服务的启动简析

  7.2.1 Android的“DNS服务器”——ServiceManager

  7.2.2“孕育”新的线程和进程——Zygote

  7.2.3 Android的“系统服务”——SystemServer

  第8章管理Activity和组件运行状态的系统进程——Activity ManagerService(AMS)

  8.1 AMS功能概述

  8.2管理当前系统中Activity状态——Activity Stack

  8.3 startActivity流程

  8.4完成同一任务的“集合”——Activity Task

  8.4.1“后进先出”——Last In,First Out

  8.4.2管理Activity Task

  第9章GUI系统之SurfaceFlinger

  9.1 OpenGL ES与EGL

  9.2 Android的硬件接口——HAL

  9.3 Android终端显示设备的“化身”——Gralloc与Framebuffer

  9.4 Android中的本地窗口

  9.4.1 FramebufferNativeWindow

  9.4.2应用程序端的本地窗口——Surface

  9.5 BufferQueue详解

  9.5.1 BufferQueue的内部原理

  9.5.2 BufferQueue中的缓冲区分配

  9.5.3应用程序的典型绘图流程

  9.5.4应用程序与BufferQueue的关系

  9.6 SurfaceFlinger

  9.6.1“黄油计划”——Project Butter

  9.6.2 SurfaceFlinger的启动

  9.6.3接口的服务端——Client

  9.7 VSync的产生和处理

  9.7.1 VSync信号的产生和分发

  9.7.2 VSync信号的处理

  9.7.3 handleMessageTransaction

  9.7.4“界面已经过时/无效,需要重新绘制”——handleMessageInvalidate

  9.7.5合成前的准备工作——preComposition

  9.7.6可见区域——rebuildLayerStacks

  9.7.7为“Composition”搭建环境——setUpHWComposer

  9.7.8 doDebugFlashRegions

  9.7.9 doComposition

  第10章GUI系统之“窗口管理员”——WMS

  10.1“窗口管理员”——WMS综述

  10.1.1 WMS的启动

  10.1.2 WMS的基础功能

  10.1.3 WMS的工作方式

  10.1.4 WMS,AMS与Activity间的联系

  10.2窗口属性

  10.2.1窗口类型与层级

  10.2.2窗口策略(Window Policy)

  10.2.3窗口属性(LayoutParams)

  10.3窗口的添加过程

  10.3.1系统窗口的添加过程

  10.3.2 Activity窗口的添加过程

  10.3.3窗口添加实例

  10.4 Surface管理

  10.4.1 Surface申请流程(relayout)

  10.4.2 Surface的跨进程传递

  10.4.3 Surface的业务操作

  10.5 performLayoutAndPlaceSurfacesLockedInner

  10.6窗口大小的计算过程

  10.7启动窗口的添加与销毁

  10.7.1启动窗口的添加

  10.7.2启动窗口的销毁

  10.8窗口动画

  10.8.1窗口动画类型

  10.8.2动画流程跟踪——WindowStateAnimator

  10.8.3 AppWindowAnimator

  10.8.4动画的执行过程

  第11章让你的界面炫彩起来的GUI系统之View体系

  11.1应用程序中的View框架

  11.2 Activity中View Tree的创建过程

  11.3在WMS中注册窗口

  11.4 ViewRoot的基本工作方式

  11.5 View Tree的遍历时机

  11.6 View Tree的遍历流程

  11.7 View和ViewGroup属性

  11.7.1 View的基本属性

  11.7.2 ViewGroup的属性

  11.7.3 View,ViewGroup和ViewParent

  11.7.4 Callback接口

  11.8“作画“工具集——Canvas

  11.8.1“绘制UI”——Skia

  11.8.2数据中介——Surface.lockCanvas

  11.8.3解锁并提交结果——unlockCanvasAndPost

  11.9 draw和onDraw

  11.10 View中的消息传递

  11.10.1 View中TouchEvent的投递流程

  11.10.2 ViewGoup中TouchEvent的投递流程

  11.11 View动画

  第12章“问渠哪得清如许,为有源头活水来”——InputManagerService与输入事件

  12.1事件的分类

  12.2事件的投递流程

  12.2.1 InputManagerService

  12.2.2 InputReaderThread

  12.2.3 InputDispatcherThread

  12.2.4 ViewRootImpl对事件的派发

  第13章应用不再同质化——音频系统

  13.1音频基础

  13.1.1声波

  13.1.2音频的录制、存储与回放

  13.1.3音频采样

  13.1.4 Nyquist–Shannon采样定律

  13.1.5声道和立体声

  13.1.6声音定级——Weber–Fechner law

  13.1.7音频文件格式

  13.2音频框架

  13.2.1 Linux中的音频框架

  13.2.2 TinyAlsa

  13.2.3 Android系统中的音频框架

  13.3音频系统的核心——AudioFlinger

  13.3.1 AudioFlinger服务的启动和运行

  13.3.2 AudioFlinger对音频设备的管理

  13.3.3 PlaybackThread的循环主体

  13.3.4 AudioMixer

  13.4策略的制定者——AudioPolicyService

  13.4.1 AudioPolicyService概述

  13.4.2 AudioPolicyService的启动过程

  13.4.3 AudioPolicyService与音频设备

  13.5音频流的回放——AudioTrack

  13.5.1 AudioTrack应用实例

  13.5.2 AudioPolicyService的路由实现

  13.6音频数据流

  13.6.1 AudioTrack中的音频流

  13.6.2 AudioTrack和AudioFlinger间的数据交互

  13.6.3 AudioMixer中的音频流

  13.7音量控制

  13.8音频系统的上层建筑

  13.8.1从功能入手

  13.8.2 MediaPlayer

  13.8.3 MediaRecorder

  13.8.4一个典型的多媒体录制程序

  13.8.5 MediaRecorder源码解析

  13.8.6 MediaPlayerService简析

  13.9 Android支持的媒体格式

  13.9.1音频格式

  13.9.2视频格式

  13.9.3图片格式

  13.9.4网络流媒体

  13.10 ID3信息简述

  13.11 Android多媒体文件管理

  13.11.1 MediaStore

  13.11.2多媒体文件信息的存储“仓库”——MediaProvider

  13.11.3多媒体文件管理中的“生产者”——MediaScanner

  第3篇应用原理篇

  第14章Intent的匹配规则

  14.1 Intent属性

  14.2 Intent的匹配规则

  14.3 Intent匹配源码简析

  第15章APK应用程序的资源适配

  15.1资源类型

  15.1.1状态颜色资源

  15.1.2图形资源

  15.1.3布局资源

  15.1.4菜单资源

  15.1.5字符串资源

  15.1.6样式资源

  15.1.7其他资源

  15.1.8属性资源

  15.2提供可选资源

  15.3最佳资源的匹配流程

  15.4屏幕适配

  15.4.1屏幕适配的重要参数

  15.4.2如何适配多屏幕

  第16章Android字符编码格式

  16.1字符编码格式背景

  16.2 ISO/IEC 8859

  16.3 ISO/IEC 10646

  16.4 Unicode

  16.5 String类型

  16.5.1构建String

  16.5.2 String对多种编码的兼容

  第17章Android和OpenGL ES

  17.1 3D图形学基础

  17.1.1计算机3D图形

  17.1.2图形管线

  17.2 Android中的OpenGL ES简介

  17.3图形渲染API—EGL

  17.3.1 EGL与OpenGL ES

  17.3.2 egl.cfg

  17.3.3 EGL接口解析

  17.3.4 EGL实例

  17.4简化OpenGL ES开发——GLSurfaceView

  第18章“系统的UI”——SystemUI

  18.1 SystemUI的组成元素

  18.2 SystemUI的实现

  18.3 Android壁纸资源——WallpaperService

  18.3.1 WallPaperManagerService

  18.3.2 ImageWallpaper

  第19章Android常用的工具“小插件”——Widget机制

  19.1“功能的提供者”——AppWidgetProvider

  19.2 AppWidgetHost

  第20章Android应用程序的编译和打包

  20.1“另辟蹊径”采用第三方工具——Ant

  20.2通过命令行编译和打包APK

  20.3 APK编译过程详解

  20.4信息安全基础概述

  20.5应用程序签名

  20.6应用程序签名源码简析

  第4篇Android系统工具

  第21章软件版本管理

  21.1版本管理简述

  21.2 Git的安装

  21.2.1 Linux环境下安装Git

  21.2.2 Windows环境下安装Git

  21.3 Git的使用

  21.3.1基础配置

  21.3.2新建仓库

  21.3.3文件状态

  21.3.4忽略某些文件

  21.3.5提交更新

  21.3.6其他命令

  21.4 Git原理简析

  21.4.1分布式版本系统的特点

  21.4.2安全散列算法——SHA-1

  21.4.3四个重要对象

  21.4.4三个区域

  21.4.5分支的概念与实例

  第22章系统调试辅助工具

  22.1万能模拟器——Emulator

  22.1.1 QEMU

  22.1.2 Android工程中的QEMU

  22.1.3模拟器控制台(Emulator Console)

  22.1.4实例:为Android模拟器添加串口功能

  22.2此Android非彼Android

  22.3快速建立与模拟器或真机的通信渠道——ADB

  22.3.1 ADB的使用方法

  22.3.2 ADB的组成元素

  22.3.3 ADB源代码解析

  22.3.4 ADB Protocol



 百度网盘 / Download(回复可见):
 The following hidden content members only. Join us 
游客,如果您要查看本帖隐藏内容请回复





上一篇:【PDF教材】《VTK图形图像开发进阶》张晓东等-高清pdf扫描版(附:随书源码)
下一篇:【PDF教材】《Python标准库》(美) Doug Hellmann著-PDF高清扫描完整版

 

 

楼 主 推 荐
BZFwa 发表于 2018-1-20 06:38:20 | 显示全部楼层
百度看了好久,还是奥学网里面真的有破解工具
回复 支持 反对

使用道具 举报

hZudT 发表于 2018-1-25 16:47:23 | 显示全部楼层
3895743957985739,别看都是数字,这都是支持的力量
回复 支持 反对

使用道具 举报

我是神经病 发表于 2018-2-2 06:11:27 | 显示全部楼层
感觉好像在哪里看过了,汗~
回复 支持 反对

使用道具 举报

aEAIT 发表于 2018-2-3 13:59:08 | 显示全部楼层
这是一个互联网时代,破解有助于中国IT类学生快速成才
回复 支持 反对

使用道具 举报

dzy518tcx 发表于 2018-2-3 17:16:32 | 显示全部楼层
谢谢楼主分享精品中的精品
回复 支持 反对

使用道具 举报

aV3ULy 发表于 2018-2-4 01:14:23 | 显示全部楼层
我是常客哈
回复 支持 反对

使用道具 举报

84QA 发表于 2018-2-6 09:06:03 | 显示全部楼层
顶也~
回复 支持 反对

使用道具 举报

OycRL 发表于 2018-2-6 20:59:18 | 显示全部楼层
呵呵呵,我来凑字数的,够了吗?够了吗?够了吗?够了吗?够了吗?
回复 支持 反对

使用道具 举报

sinew 发表于 2018-2-8 09:26:33 | 显示全部楼层
呵呵,支持一下哈
回复 支持 反对

使用道具 举报

快速回复 收藏帖子 返回列表
加密...

SiteMap|奥学网 ( 闽ICP备12011685号-6 )|随机浏览

闽公网安备35021202000025号

Xtreme-aesthetic Design

© 2012~Now 6SO.SO

快速回复 返回顶部 返回列表