android平台四层架构对应源代码中的目录:
第一层:应用程序层(applications)对应根目录下packages/apps
第二层:应用程序框架层(application framework)对应根目录下的frameworks
第三层:运行库层包括运行库(libraries)和android运行时环境(android runtime)
android运行时环境:
Core Libraries 对应根目录下的libcore
Dalvik Virtual Machine 对应根目录下的dalvik
运行库libraries :
libc对应根目录下的bionic
其他的.......?
第四层:Linux内核层对应根目录下的kernel
三、四层中间还有个硬件抽象层(HAL)对应根目录下的hardware
详细目录结构如下:
|– Makefile
|– bionic (bionic C库)
|– bootable (启动引导相关代码)
|– build (存放系统编译规则及generic等基础开发包配置)
|– cts (Android兼容性测试套件标准)
|– dalvik (dalvik JAVA虚拟机)
|– development (应用程序开发相关)
|– external (android使用的一些开源的模组)
|– frameworks (核心框架——java及C++语言)
|– hardware (部分厂家开源的硬解适配层HAL代码)
|– out (编译完成后的代码输出与此目录)
|– packages (应用程序包)
|– prebuilt (x86和arm架构下预编译的一些资源)
|– sdk (sdk及模拟器)
|– system (底层文件系统库、应用及组件——C语言)
`– vendor (厂商定制代码)