Android底层开发实战

Android底层开发实战
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: , , ,
2015-11
版次: 16
ISBN: 9787111516118
定价: 59.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 243页
字数: 178千字
40人买过
  •   《Android底层开发实战》分为四个部分:一部分为预备知识篇,简要介绍嵌入式系统的定义与软硬件开发以及Android开发环境的搭建。第二部分为系统结构篇,主要介绍Android系统的源码结构、内核与相关工具以及环境库。第三部分为驱动设计篇,主要介绍Android系统中常用外接设备的驱动架构以及实现。内容包括NDK编程、Android中HAL模型架构与实现流程。作为教学实例,最后分析了Android系统中的Camera与WIFI两个功能部件的的驱动设计。第四部分为实例分析篇,通过对具体开发板硬件结构编程原理的介绍到系统级的实例讲解。在简要介绍系统底层开发流程的基础上,首先分析了主流的Zynq和pcDuino平台上开发环境的搭建、Linux内核以及Android系统的编译、下载;然后结合前文学习过的知识点,从零开始设计LED显示系统的Linux内核驱动、AndroidHAL支持和服务层设计、顶层App的实现;作为进阶部分,本书最后介绍了对Android内核进行跟踪调试与性能测试的工具软件、工作流程以及结果分析。
      周庆国,兰州大学教授。理学博士,博士生导师,IET Fellow,教育部新世纪人才基金获得者,现为兰州大学开源软件与实时系统教育部工程研究中心副主任,兰州大学分布式与嵌入式系统实验室主任。2007年10月曾受聘担任Real Time Linux Foundation主任,2011年8月曾任《International Journal of Computational Science and Engineering 》(IJCSE)杂志副主编,2013年4月曾任《International Journal of Embedded System》(IJES)杂志主编。目前主要从事安全关键系统、嵌入式系统、实时系统、虚拟化技术的研究。

      郑灵翔,博士,高级工程师。先后获得厦门市科技进步二等奖两项,福建省教学成果二等奖一项。主要研究领域包括嵌入式系统、移动互联网、物联网、人工智能和模式识别等。出版嵌入式系统教材三本,发表学术论文四十余篇。

      康筱彬,兰州资源环境职业技术学院教师。毕业于兰州大学信息学院,工程硕士。从事一线教学工作,研究方向为嵌入式操作系统、移动互联网技术及应用。

      刘同山,兰州大学教师。毕业于兰州大学无线电物理专业,现承担电路、单片机等课程的教学与实验工作。
    推荐序
    自 序
    前 言
    第1章 Android嵌入式系统导论1
    1.1 Android嵌入式系统概述1
    1.1.1 嵌入式系统定义1
    1.1.2 基于Android的嵌入式系统构成5
    1.1.3 移动电话系统9
    1.1.4 基于ARM的移动电话硬件结构10
    1.2 嵌入式系统实例17
    1.2.1 pcDuino部分硬件功能介绍17
    1.2.2 基于Android的嵌入式系统30
    第2章 Linux系统详解34
    2.1 系统简介34
    2.2 基础命令35
    2.2.1 cd和ls命令35
    2.2.2 touch和mkdir命令37
    2.2.3 rm和rmdir命令38
    2.2.4 cp和mv命令38
    2.2.5 find和awk命令39
    2.2.6 vim编辑器的使用43
    2.3 Bash Shell44
    2.3.1 Bash Shell简介44
    2.3.2 Bash Shell脚本简介44
    2.4 Linux源码与Android源码介绍45
    2.4.1 Linux源码简介45
    2.4.2 Android源码简介45
    第3章 Android系统开发环境搭建47
    3.1 编译前奏—Android上的开发工作47
    3.1.1 Android的移植开发47
    3.1.2 系统开发48
    3.1.3 应用开发49
    3.2 Android的系统架构 49
    3.2.1 软件结构49
    3.2.2 源代码的结构51
    3.3 搭建开发环境 54
    3.3.1 搭建编译环境54
    3.3.2 使用repo64
    3.3.3 Android的编译66
    第4章 Android系统底层源码结构分析69
    4.1 源码结构分析69
    4.1.1 底层库结构介绍71
    4.1.2 C基础函数库bionic73
    4.1.3 C语言底层库libcutils74
    4.1.4 C++工具库libutils74
    4.1.5 底层文件系统库system 75
    4.1.6 增加本地库的方法76
    4.2 Android编译系统介绍78
    4.2.1 build系统78
    4.2.2 SDK79
    4.3 init初始化脚本语言介绍82
    4.3.1 概述82
    4.3.2 init进程源码分析82
    4.3.3 脚本文件的创建与分析85
    4.3.4 创建设备节点文件89
    4.3.5 子进程的创建与终止92
    4.3.6 属性服务93
    4.4 Zygote95
    4.4.1 Zygote概述95
    4.4.2 AppRuntime分析95
    4.4.3 system_server分析100
    第5章 Android系统内核分析109
    5.1 Linux内核基础109
    5.1.1 概述109
    5.1.2 Linux内核的主要子系统110
    5.1.3 Linux启动过程分析111
    5.2 Android内核概况112
    5.3 Android启动过程分析113
    5.4 Binder框架分析115
    5.4.1 概述116
    5.4.2 Binder的系统架构117
    5.4.3 Binder的机制和原理125
    5.5 Ashmem内存管理方式128
    5.5.1 概述128
    5.5.2 Ashmem初始化128
    5.5.3 内存的创建和释放131
    5.5.4 内存的映射135
    5.5.5 内存的锁定和解锁137
    5.6 低内存管理139
    5.7 Logger145
    5.7.1 Logger概述145
    5.7.2 Logger实现原理146
    第6章 Android系统相关工具及运行环境156
    6.1 Android开发工具分类及介绍156
    6.1.1 应用程序开发工具156
    6.1.2 框架开发工具157
    6.1.3 交叉编译工具159
    6.1.4 内核开发工具159
    6.2 Dalvik虚拟机160
    6.2.1 概述160
    6.2.2 dex文件163
    6.2.3 Dalvik内存管理165
    6.2.4 Dalvik编译器 169
    6.3 JNI171
    6.3.1 概述171
    6.3.2 JNI的架构171
    6.3.3 JNI的实现方式172
    6.4 Boot Loader173
    6.4.1 概述173
    6.4.2 Boot Loader 的操作模式174
    6.4.3 启动过程175
    6.5 busybox的使用176
    第7章 Android驱动程序设计177
    7.1 Android驱动概述177
    7.2 Android NDK编程178
    7.3 Android系统中的HAL层183
    7.3.1 HAL_legacy和HAL对比184
    7.3.2 HAL module 架构分析184
    7.3.3 HAL实现流程186
    7.4 Android系统Camera与WiFi实现187
    7.4.1 Android中的Camera实现187
    7.4.2 Android系统WiFi实现190
    第8章 Android底层开发实例讲解193
    8.1 底层开发相关技术概览193
    8.2 实例讲解—基于Zynq的Android移植193
    8.2.1 主机开发环境的搭建194
    8.2.2 Linux内核的编译194
    8.2.3 Android文件系统的编译203
    8.2.4 SD卡的准备以及Android系统的启动 205
    8.3 移植讲解—基于pcDuino的Android移植205
    8.3.1 pcDuino介绍206
    8.3.2 环境搭建208
    8.3.3 编译内核209
    8.3.4 编译Android210
    8.3.5 烧录镜像211
    8.4 Android LED驱动设计212
    8.4.1 硬件原理212
    8.4.2 Linux驱动设计212
    8.4.3 Android HAL层驱动220
    8.4.4 硬件服务层224
    8.4.5 App应用编写229
    8.5 进阶讲解—针对Android系统的内核跟踪与测试231
    8.5.1 使用平台简介231
    8.5.2 测试环境的建立232
    8.5.3 测试工具235
    8.5.4 Android内核调试与性能测试239
  • 内容简介:
      《Android底层开发实战》分为四个部分:一部分为预备知识篇,简要介绍嵌入式系统的定义与软硬件开发以及Android开发环境的搭建。第二部分为系统结构篇,主要介绍Android系统的源码结构、内核与相关工具以及环境库。第三部分为驱动设计篇,主要介绍Android系统中常用外接设备的驱动架构以及实现。内容包括NDK编程、Android中HAL模型架构与实现流程。作为教学实例,最后分析了Android系统中的Camera与WIFI两个功能部件的的驱动设计。第四部分为实例分析篇,通过对具体开发板硬件结构编程原理的介绍到系统级的实例讲解。在简要介绍系统底层开发流程的基础上,首先分析了主流的Zynq和pcDuino平台上开发环境的搭建、Linux内核以及Android系统的编译、下载;然后结合前文学习过的知识点,从零开始设计LED显示系统的Linux内核驱动、AndroidHAL支持和服务层设计、顶层App的实现;作为进阶部分,本书最后介绍了对Android内核进行跟踪调试与性能测试的工具软件、工作流程以及结果分析。
  • 作者简介:
      周庆国,兰州大学教授。理学博士,博士生导师,IET Fellow,教育部新世纪人才基金获得者,现为兰州大学开源软件与实时系统教育部工程研究中心副主任,兰州大学分布式与嵌入式系统实验室主任。2007年10月曾受聘担任Real Time Linux Foundation主任,2011年8月曾任《International Journal of Computational Science and Engineering 》(IJCSE)杂志副主编,2013年4月曾任《International Journal of Embedded System》(IJES)杂志主编。目前主要从事安全关键系统、嵌入式系统、实时系统、虚拟化技术的研究。

      郑灵翔,博士,高级工程师。先后获得厦门市科技进步二等奖两项,福建省教学成果二等奖一项。主要研究领域包括嵌入式系统、移动互联网、物联网、人工智能和模式识别等。出版嵌入式系统教材三本,发表学术论文四十余篇。

      康筱彬,兰州资源环境职业技术学院教师。毕业于兰州大学信息学院,工程硕士。从事一线教学工作,研究方向为嵌入式操作系统、移动互联网技术及应用。

      刘同山,兰州大学教师。毕业于兰州大学无线电物理专业,现承担电路、单片机等课程的教学与实验工作。
  • 目录:
    推荐序
    自 序
    前 言
    第1章 Android嵌入式系统导论1
    1.1 Android嵌入式系统概述1
    1.1.1 嵌入式系统定义1
    1.1.2 基于Android的嵌入式系统构成5
    1.1.3 移动电话系统9
    1.1.4 基于ARM的移动电话硬件结构10
    1.2 嵌入式系统实例17
    1.2.1 pcDuino部分硬件功能介绍17
    1.2.2 基于Android的嵌入式系统30
    第2章 Linux系统详解34
    2.1 系统简介34
    2.2 基础命令35
    2.2.1 cd和ls命令35
    2.2.2 touch和mkdir命令37
    2.2.3 rm和rmdir命令38
    2.2.4 cp和mv命令38
    2.2.5 find和awk命令39
    2.2.6 vim编辑器的使用43
    2.3 Bash Shell44
    2.3.1 Bash Shell简介44
    2.3.2 Bash Shell脚本简介44
    2.4 Linux源码与Android源码介绍45
    2.4.1 Linux源码简介45
    2.4.2 Android源码简介45
    第3章 Android系统开发环境搭建47
    3.1 编译前奏—Android上的开发工作47
    3.1.1 Android的移植开发47
    3.1.2 系统开发48
    3.1.3 应用开发49
    3.2 Android的系统架构 49
    3.2.1 软件结构49
    3.2.2 源代码的结构51
    3.3 搭建开发环境 54
    3.3.1 搭建编译环境54
    3.3.2 使用repo64
    3.3.3 Android的编译66
    第4章 Android系统底层源码结构分析69
    4.1 源码结构分析69
    4.1.1 底层库结构介绍71
    4.1.2 C基础函数库bionic73
    4.1.3 C语言底层库libcutils74
    4.1.4 C++工具库libutils74
    4.1.5 底层文件系统库system 75
    4.1.6 增加本地库的方法76
    4.2 Android编译系统介绍78
    4.2.1 build系统78
    4.2.2 SDK79
    4.3 init初始化脚本语言介绍82
    4.3.1 概述82
    4.3.2 init进程源码分析82
    4.3.3 脚本文件的创建与分析85
    4.3.4 创建设备节点文件89
    4.3.5 子进程的创建与终止92
    4.3.6 属性服务93
    4.4 Zygote95
    4.4.1 Zygote概述95
    4.4.2 AppRuntime分析95
    4.4.3 system_server分析100
    第5章 Android系统内核分析109
    5.1 Linux内核基础109
    5.1.1 概述109
    5.1.2 Linux内核的主要子系统110
    5.1.3 Linux启动过程分析111
    5.2 Android内核概况112
    5.3 Android启动过程分析113
    5.4 Binder框架分析115
    5.4.1 概述116
    5.4.2 Binder的系统架构117
    5.4.3 Binder的机制和原理125
    5.5 Ashmem内存管理方式128
    5.5.1 概述128
    5.5.2 Ashmem初始化128
    5.5.3 内存的创建和释放131
    5.5.4 内存的映射135
    5.5.5 内存的锁定和解锁137
    5.6 低内存管理139
    5.7 Logger145
    5.7.1 Logger概述145
    5.7.2 Logger实现原理146
    第6章 Android系统相关工具及运行环境156
    6.1 Android开发工具分类及介绍156
    6.1.1 应用程序开发工具156
    6.1.2 框架开发工具157
    6.1.3 交叉编译工具159
    6.1.4 内核开发工具159
    6.2 Dalvik虚拟机160
    6.2.1 概述160
    6.2.2 dex文件163
    6.2.3 Dalvik内存管理165
    6.2.4 Dalvik编译器 169
    6.3 JNI171
    6.3.1 概述171
    6.3.2 JNI的架构171
    6.3.3 JNI的实现方式172
    6.4 Boot Loader173
    6.4.1 概述173
    6.4.2 Boot Loader 的操作模式174
    6.4.3 启动过程175
    6.5 busybox的使用176
    第7章 Android驱动程序设计177
    7.1 Android驱动概述177
    7.2 Android NDK编程178
    7.3 Android系统中的HAL层183
    7.3.1 HAL_legacy和HAL对比184
    7.3.2 HAL module 架构分析184
    7.3.3 HAL实现流程186
    7.4 Android系统Camera与WiFi实现187
    7.4.1 Android中的Camera实现187
    7.4.2 Android系统WiFi实现190
    第8章 Android底层开发实例讲解193
    8.1 底层开发相关技术概览193
    8.2 实例讲解—基于Zynq的Android移植193
    8.2.1 主机开发环境的搭建194
    8.2.2 Linux内核的编译194
    8.2.3 Android文件系统的编译203
    8.2.4 SD卡的准备以及Android系统的启动 205
    8.3 移植讲解—基于pcDuino的Android移植205
    8.3.1 pcDuino介绍206
    8.3.2 环境搭建208
    8.3.3 编译内核209
    8.3.4 编译Android210
    8.3.5 烧录镜像211
    8.4 Android LED驱动设计212
    8.4.1 硬件原理212
    8.4.2 Linux驱动设计212
    8.4.3 Android HAL层驱动220
    8.4.4 硬件服务层224
    8.4.5 App应用编写229
    8.5 进阶讲解—针对Android系统的内核跟踪与测试231
    8.5.1 使用平台简介231
    8.5.2 测试环境的建立232
    8.5.3 测试工具235
    8.5.4 Android内核调试与性能测试239
查看详情
系列丛书 / 更多
Android底层开发实战
STM32库开发实战指南(第2版):基于STM32F103
刘火良 杨森 著
Android底层开发实战
Linux设备驱动开发详解:基于最新的Linux 4.0内核
宋宝华 著
Android底层开发实战
UVM实战(卷1)
张强 著
Android底层开发实战
嵌入式实时操作系统:RT-Thread设计与实现
邱祎、熊谱翔、朱天龙 著
Android底层开发实战
μC/OS-III内核实现与应用开发实战指南:基于STM32
刘火良、杨森 著
Android底层开发实战
STM32库开发实战指南:基于STM32F4
刘火良、杨森 著
Android底层开发实战
ROS机器人程序设计
Aaron、Enrique Fernández 著;刘品杰 译
Android底层开发实战
Processing开发实战
黄文恺、吴羽、伍冯洁 著
Android底层开发实战
Arduino从入门到精通:创客必学的13个技巧
[美]约翰·白赫泰(John Baichtal) 著;翁恺 译
Android底层开发实战
Android嵌入式系统程序开发(基于Cortex-A8)第2版
胡文、金雪松、陈铭 著
Android底层开发实战
Arduino开发实战指南:智能家居卷
赵志 著
Android底层开发实战
例说FPGA:可直接用于工程项目的第一手经验
吴厚航 著
您可能感兴趣 / 更多
Android底层开发实战
人工智能技术基础
周庆国 雍宾宾
Android底层开发实战
BLOCKLY创意趣味编程
周庆国 崔向平 郅朋
Android底层开发实战
犬病诊疗原色图谱
周庆国、夏兆飞 主编
Android底层开发实战
犬猫疾病诊治彩色图谱
周庆国 编
Android底层开发实战
犬病快速诊断与防治--广东“农家书屋”系列
周庆国 编
Android底层开发实战
犬病对症诊断与防治
周庆国 主编