第五期 基于模拟器上的实践和学习规划 《手机就是开发板》
来源:互联网 发布:ubuntu复制到命令行 编辑:程序博客网 时间:2024/05/22 14:38
前面三期我们分别动手实践了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做了一些修改,在这里特别说明一下并表示感谢。
- 第五期 基于模拟器上的实践和学习规划 《手机就是开发板》
- 第六期 基于模拟器的Helloworld 内核驱动 《手机就是开发板》
- 第七期 基于模拟器的Helloworld 可执行程序 《手机就是开发板》
- 第八期 基于模拟器的Helloworld HAL接口 《手机就是开发板》
- 第九期 基于模拟器的Helloworld JNI方法 《手机就是开发板》
- 第十期 基于模拟器的Helloworld Framework接口 《手机就是开发板》
- 第十一期 基于模拟器的Helloworld APP 访问硬件服务 《手机就是开发板》
- 第四期 Jupyter 和 OpenCV 实践《显卡就是开发板》
- 第五期 基于QEMU进行实验环境搭建 《虚拟机就是开发板》
- 第五期 基于 Inception-V3 重新训练网络 《显卡就是开发板》
- 第一期 前言 《手机就是开发板》
- 第十五期 在AOSP上建立一个新产品《手机就是开发板》
- 第五期 Jlink调试路由器 《路由器就是开发板》
- 第二期 AOSP 环境搭建、下载和编译 《手机就是开发板》
- 第三期 Android Kernel 下载和编译 《手机就是开发板》
- 第十二期 Android ROM结构分析《手机就是开发板》
- 第十四期 AOSP 编译系统分析《手机就是开发板》
- 第十八期 Android GPS原理分析《手机就是开发板》
- android telephony 之 UICC 卡数据读写及 UICC 框架结构
- debian+kvm+vnc安装
- linux 启动 终止 tomcat,查看进程
- Go语言的数组,切片,set,map
- mysql 一个字段为多个id,逗号隔开
- 第五期 基于模拟器上的实践和学习规划 《手机就是开发板》
- zmq中的 zmq_getsockopt
- 没基础也能成IT技术大牛?
- python——web后台开发实现网址生成二维码
- 记录Java各种各样的BUG
- PLSQL developer破解版-sql注入防范
- 前端性能优化总结
- C++socket客户端select异步连接发送接收数据
- 设备驱动中的pinctrl(kernel-4.7)