第五期 基于模拟器上的实践和学习规划 《手机就是开发板》
2016-12-09 14:32
316 查看
前面三期我们分别动手实践了AOSP,kernel和APP的编译环境搭建,这是我们实践的基础,接下来我们继续深入,探索一下android的组成原理,并且每个环节都设置一个实验来验证学习的理论。在使用真正的手机操作之前我们有必要使用之前搭建的模拟器(emulator)来进行一些实验,通过一些简单的Demo程序来对android这个庞大的系统有一个感性的认识,因为模拟器的不存在真是的硬件,这样排除了硬件故障给我们带来的困扰。有些事情就是得一步一步的来,像载人航天,在探索的过程中先载个猴子或者狗上去是必经之路,我们也是先用模拟器实验再用真机实验,要符合事物发展的一般规律。
下图是Google给出的android结构层次图,接下来我们分别通过简单Demo的方式把每个层次都实践一下。
我们通过模拟器要研究的问题主要分为四个方面:
1.Android 全栈结构;
2.Android ROM结构;
3.Android 启动流程;
3.AOSP 编译系统。
Android 全栈结构 方面,我一共做6个实验,包括内核驱动,可执行程序,HAL,JNI,Android service, Android app。这6个实验会连在一起实现一个android完成一次底层硬件调用的完整过程。
Android ROM结构 方面,详细分析Android每一个分区的作用和结构,学习怎么制作和修改Android的五大镜像文件:system.img,userdata.img,ramdisk.img,boot.img,recovery.img。
Android 启动流程 方面,详细分析Android 启动的每一个环节所做的工作。
AOSP 编译系统 方面,系统分析android镜像文件的生成过程,Android.mk文件的语法,编译Android系统的系统环境初始化过程。
在学习的过程中给我最大帮助的是 老罗的android之旅 这系列博客http://blog.csdn.net/column/details/androidluo.html?&page=5
我的实验内容都是在老罗的实验基础上针对android6.0做了一些修改,在这里特别说明一下并表示感谢。
下图是Google给出的android结构层次图,接下来我们分别通过简单Demo的方式把每个层次都实践一下。
我们通过模拟器要研究的问题主要分为四个方面:
1.Android 全栈结构;
2.Android ROM结构;
3.Android 启动流程;
3.AOSP 编译系统。
Android 全栈结构 方面,我一共做6个实验,包括内核驱动,可执行程序,HAL,JNI,Android service, Android app。这6个实验会连在一起实现一个android完成一次底层硬件调用的完整过程。
Android ROM结构 方面,详细分析Android每一个分区的作用和结构,学习怎么制作和修改Android的五大镜像文件:system.img,userdata.img,ramdisk.img,boot.img,recovery.img。
Android 启动流程 方面,详细分析Android 启动的每一个环节所做的工作。
AOSP 编译系统 方面,系统分析android镜像文件的生成过程,Android.mk文件的语法,编译Android系统的系统环境初始化过程。
在学习的过程中给我最大帮助的是 老罗的android之旅 这系列博客http://blog.csdn.net/column/details/androidluo.html?&page=5
我的实验内容都是在老罗的实验基础上针对android6.0做了一些修改,在这里特别说明一下并表示感谢。
相关文章推荐
- 第七期 基于模拟器的Helloworld 可执行程序 《手机就是开发板》
- 第九期 基于模拟器的Helloworld JNI方法 《手机就是开发板》
- 第六期 基于模拟器的Helloworld 内核驱动 《手机就是开发板》
- 第十期 基于模拟器的Helloworld Framework接口 《手机就是开发板》
- 第八期 基于模拟器的Helloworld HAL接口 《手机就是开发板》
- 第十一期 基于模拟器的Helloworld APP 访问硬件服务 《手机就是开发板》
- 第五期 基于 Inception-V3 重新训练网络 《显卡就是开发板》
- 第五期 基于QEMU进行实验环境搭建 《虚拟机就是开发板》
- 学习:短信的收发及在android模拟器之间实践(1)
- 实现一个基于串口的手机AT信令模拟器
- 学习 Flickr 的 基于 LAMP 的容量规划经验
- [S3C6410学习心得之一]ok6410开发板基于Ubuntu9.10开发环境搭建-串口
- 对于接下来自己的规划,想学习一下分布式系统和Android手机开发。
- Linux工程实践学习笔记——基于主机系统的多客户即时通讯/聊天室 Day(2)
- Android学习(六)导出模拟器/手机联系人数据库到PC指定目录
- Linux工程实践学习笔记——基于主机系统的多客户即时通讯/聊天室 Day(3)
- Linux工程实践学习笔记——基于主机系统的多客户即时通讯/聊天室 Day(4)
- TCP/IP学习与实践[基于原始套接字的rootkit]
- 学习:短信的收发及在android模拟器之间实践(2)
- 房地产业务学习(07)-基于合约规划的动态成本过程控制 推荐