Andriod系统架构
Andriod底层架构介绍以及移植方法
Andriod的软件架构:
1.应用程序层
系统级应用程序(允许定制的home,phone等等)、用户应用程序
2.APP FRAMEWORK应用程序框架层
为用户应用层提供API:视图View、内容提供器content providers、资源管理器Resource Manager、活动管理器Activity Manager
activity 显示界面
service 服务
Broadcast Receiver 广播
Content Provider 数据通信
3.系统运行库层
C/C++库、SQLite、freetype、
4.Linux kernel层
Linux2.6内核以上,如安全性,内存管理,进程管理,网络协议栈和驱动模型。
也相应更改了标准kernel如:
Binder Driver电源管理模块
混杂区域:Andiriod Runtime
core lib ————>Java库
Dalvik virtual ————>类似Java虚拟机
Android源代码的获取方式
Andriod移植流程
Android编译系统:
几个重要的Makefile
Andriod.mk:编译源码mk文件,每天module和package目录下有一个文件
main.mk:定义的编译部分全部代码的依赖关系
config.mk:用于配置编译系统,决定如何编译
envsetup.mk:定义了编译环境配置
product_config.mk:读取AndriodProducts.mk生成TARGE_DEICE变量
AndriodProducts.mk:定义某厂商所有产品文件列表
BoradConfig.mk:定义开发板软件相关配置项,将来影响系统条件、编译
Andriod底层架构介绍以及移植方法
Andriod的软件架构:
1.应用程序层
系统级应用程序(允许定制的home,phone等等)、用户应用程序
2.APP FRAMEWORK应用程序框架层
为用户应用层提供API:视图View、内容提供器content providers、资源管理器Resource Manager、活动管理器Activity Manager
activity 显示界面
service 服务
Broadcast Receiver 广播
Content Provider 数据通信
3.系统运行库层
C/C++库、SQLite、freetype、
4.Linux kernel层
Linux2.6内核以上,如安全性,内存管理,进程管理,网络协议栈和驱动模型。
也相应更改了标准kernel如:
Binder Driver电源管理模块
混杂区域:Andiriod Runtime
core lib ————>Java库
Dalvik virtual ————>类似Java虚拟机
Android源代码的获取方式
Andriod移植流程
Android编译系统:
几个重要的Makefile
Andriod.mk:编译源码mk文件,每天module和package目录下有一个文件
main.mk:定义的编译部分全部代码的依赖关系
config.mk:用于配置编译系统,决定如何编译
envsetup.mk:定义了编译环境配置
product_config.mk:读取AndriodProducts.mk生成TARGE_DEICE变量
AndriodProducts.mk:定义某厂商所有产品文件列表
BoradConfig.mk:定义开发板软件相关配置项,将来影响系统条件、编译