拨云见日:基于android的内核与系统架构源码分析
下午5点前订单,当日发货!超时赔付
¥
10.9
1.6折
¥
69
八五品
库存2件
作者王森 著
出版社清华大学出版社
出版时间2015-01
版次1
装帧平装
货号9787302381990014
上书时间2024-09-02
商品详情
- 品相描述:八五品
图书标准信息
-
作者
王森 著
-
出版社
清华大学出版社
-
出版时间
2015-01
-
版次
1
-
ISBN
9787302381990
-
定价
69.00元
-
装帧
平装
-
开本
16开
-
纸张
胶版纸
-
页数
416页
-
字数
668千字
-
正文语种
简体中文
- 【内容简介】
-
《拨云见日:基于android的内核与系统架构源码分析》包括上下两篇内容。上篇在保证完整Linux内核架构分析的前提下,着重分析Android系统中强烈依赖的Linux内核机制,如多核ARM架构的支持,而略去Android系统产品化没有用到内核机制,如SWAP机制。下篇主要分析Android系统层主要架构机制,尤其注重分析这些用户态机制与内核机制的接驳与交互。《拨云见日:基于android的内核与系统架构源码分析》整理自作者多年积累的笔记,形式以源代码分析为主。
《拨云见日:基于android的内核与系统架构源码分析》适合相关领域工程师作为实际项目的参考,以及有志于通过研读源码掌握Android系统与Linux内核精髓的读者。
- 【目录】
-
上篇内核
第1章ARM多核处理器
1.1SMP相关基础数据结构
1.2Percpu内存管理
1.2.1内核显式定义的处理器局部数据
1.2.2Percpu内存管理的建立
1.2.3Percpu动态分配内存空间
1.3CpuFreq
1.3.1初始化
1.3.2CpuFreq策略的建立
1.3.3Ondemand调频算法分析
1.4CPU0bootupCPU
1.4.1CPU0侧策略和动作
1.4.2CPU1侧执行路线
1.5CPU1的关闭
1.5.1关闭时机
1.5.2CPU1关闭操作
1.6ARM处理器展望
1.6.1ARM架构处理器的演进
1.6.2TrustZone
1.6.3ARMVirtualization
第2章异常
2.1异常向量表
2.1.1异常进入
2.1.2异常表的构建
2.2中断体系
2.2.1CortexA9多核处理器的中断控制器GIC
2.2.2MT6577的中断体系
2.2.3Exynos4的中断体系
2.2.4OMAP4的中断体系
2.3中断处理
2.3.1中断的基本结构
2.3.2中断源识别
2.4数据异常
2.5处理器间通信
第3章调度与实时性
3.1Tick
3.1.1Localtimer
3.1.2Tick挂载
3.1.3Tick产生
3.2Fair调度类
3.2.1Fair调度类的负载均衡
3.2.2Fair调度类的处理器选择
3.3RT调度类
3.3.1RT调度类的基本结构
3.3.2Rt_Bandwidth
3.3.3负载均衡与抢占
3.3.4基础操作
3.4调度器
3.4.1调度域的构建
3.4.2调度器
3.5唤醒
3.5.1唤醒与抢占
3.5.2跨处理器分发线程
3.5.3抢占
第4章Signal
4.1信号发送
4.2信号执行
4.2.1路径切换
4.2.2ARMLinux下信号执行环境的搭建
4.2.3Signal处理函数的返回
4.2.4系统调用重入
第5章进程与进程内存
5.1Linux进程
5.1.1Fork
5.1.2Exec新进程创建
5.2CPU与MMU
5.2.1ARMLinux页表页目录结构
5.2.2页表页目录的建立
5.3进程虚拟内存
5.3.1Android进程虚拟内存的继承
5.3.2进程虚拟地址空间的获得
第6章缺页请页与内存Shrink
6.1缺页与请页
6.1.1Filebacked虚拟内存段操作函数
6.1.2Filebacked内存的请页
6.1.3匿名内存的请页
6.1.4COW访问
6.2内存Shrink
6.2.1Shrink操作shrink_page_list
6.2.2CleanPage
6.2.3脏页的监控
6.3全景图
第7章块设备
7.1Bdev文件系统
7.2块设备基础结构
7.3块设备的创建与注册
7.4分区检测生成
7.5块设备的打开
7.6块设备驱动的层次结构
7.7虚拟块设备
第8章VFS
8.1根目录
8.1.1根目录文件系统——initramfs
8.1.2Androidramdisk.img
8.1.3传统根目录文件系统加载方式
8.2文件打开
8.2.1目录的层级查找
8.2.2各层次操作函数的安装
8.3文件写
8.3.1文件写框架
8.3.2write_begin
8.3.3write_end
8.4脏页的提交与回写机制
8.4.1脏页的提交
8.4.2回写时机
8.4.3回写机制的层次操作
8.4.4节点层次的回写
第9章EXT4文件系统
9.1Android文件系统的选择
9.2EXT4文件节点
9.2.1EXT4inode基础结构
9.2.2EXt4rawinode的定位
9.2.3EXT4inode的获取
9.3Mount
9.4EXT4文件写操作
9.5EXT4journal
9.6Extenttree
9.6.1基础结构
9.6.2定位逻辑块的structext4_extent
9.6.3定位逻辑块左右侧的structext4_extent项
9.7块分配
9.7.1块组的buddy算法
9.7.2分配物理块
9.8逻辑块到物理块的映射
第10章RCU
10.1RCUtree
10.1.1RCUTree结构
10.1.2RCUtree的构建
10.2GracePeriod
10.2.1GracePeriod的检测
10.2.2重新启动新一轮GracePeriod
10.3RCU函数的执行
第11章MMCDriver
11.1MMCDriver
11.1.1MMC协议层
11.1.2MMC块设备
11.2开源手机U8836D(MT6577)分区的实现
第12章内核配置系统及内核调试
12.1Conf
12.1.1Kconfig元素
12.1.2Kconfig分析
12.2内核调试
12.2.1senix_printk
12.2.2LOG_BUF
下篇Dalvik与Android用户态源码分析
第13章内存
13.1Dalvik内存管理
13.1.1虚拟内存分配
13.1.2内存回收
13.2Ashmem
13.3GC
13.3.1对象Mark
13.3.2从Root对象集到普通对象
13.3.3GC与线程实时性
第14章进程与线程
14.1Dalvik虚拟机的进程
14.2Dalvik线程创建机制
14.3Android线程模型
14.3.1主线程的生成
14.3.2线程池线程的生成
14.4Java线程转换
14.4.1从Java到JNI
14.4.2从JNI到Java
第15章Bionic的动态加载机制
15.1Linker——用户态入口
15.2Linker主体——link_image
第16章Android系统初始
16.1Android入口
16.2Init——OS的入口
16.2.1RC文件分析
16.2.2RC动作执行
16.2.3RC的逻辑分析
16.2.4设备探测
16.2.5property库的构建
16.2.6Init的调试
第17章Interpreter与JIT
17.1解释器编译结构
17.2Dalvik寄存器编译模型
17.2.1Callee寄存器分配
17.2.2Caller寄存器分配
17.2.3outs的处理
17.3PortableInterpreter结构
17.4ASMInterpreter
17.4.1基本结构
17.4.2运行时模型与基本操作
17.4.3ASMInterpreter入口
17.5Interpreter的切换
17.6Dalvik运行时帧结构
17.7JIT
17.7.1热点检测
17.7.2Mode切换
17.7.3JIT提交
17.8Compile
17.8.1基础数据结构
17.8.2dalvik指令格式分析
17.8.3TraceRun分析
17.8.4MIR
17.8.5基本块的逻辑关系
17.8.6寄存器分配
17.8.7LIR
17.8.8Codecache
17.9DalvikART
第18章Binder
18.1Parcel
18.1.1C++层的Parcel
18.1.2Java层的Parcel
18.2Binder驱动
18.2.1Binder写
18.2.2Binder读
18.3C++层面
18.3.1本地与远端对象
18.3.2服务的建立
18.4Java层面
18.5service_manager
第19章Class
19.1系统类库
19.1.1Initalclass
19.1.2ODEX文件的加载
19.1.3系统类库
19.1.4preloaded-classes
19.2类加载
19.2.1类加载框架
19.2.2类加载
19.3对象实体生成
第20章Android应用框架
20.1线程池线程
20.1.1C++层
20.1.2Java层
20.2系统侧Activity与Service的生成控制
20.3classActivityThread
20.3.1MainLooper
20.3.2activity与service的加载
第21章AndroidUI体系
21.1窗口体系的生成
21.2ViewRoot与Surface
21.3编辑框实例分析
21.3.1ViewRoot获得系统侧代理对象
21.3.2焦点切换事件——主要AndroidUI机制的互动
21.3.3输入事件的处理
21.3.4编辑框的生成
第22章ADB
22.1ADB基本结构
22.1.1连接
22.1.2主线程
22.1.3主线程监测的文件句柄
22.2Transport
22.2.1初始化
22.2.2transport传输线程
22.2.3transport的管理
22.3Local服务
22.3.1Local服务的种类
22.3.2Local服务的形态
22.3.3SYNC服务
第23章Android浏览器的Webkit分析
23.1Webcore
23.1.1DOM与Rendering树生成
23.1.2事件的产生与分发
23.2V8parser源码分析
23.2.1V8parser处理脚本的层次
23.2.2Scope
23.2.3语法分析的入口ParserParseStatement(…)
23.2.4普通语句的分析
23.3指令生成
点击展开
点击收起
— 没有更多了 —
以下为对购买帮助不大的评价