1、 GNU libc 是linux默认用的 C标准库,
2、Dalvik 是为了适应各种环境而设计的, 强调泛用性 ,专注短期内最可能改变的移动设备性能的制约因素,对症下药,从而研究了Dalvik;Java VM不是免费的,所以有很多的替代产品,OpenJDK 和 Apache Harmony;
3、android分为四层, Application (应用程序)、 Application Framework (应用程序框架)、library(本地库)、 linux kernel(linux 内核)
4、为什么不直接从java source 生成 Dalvik byte code ?
Java source code
|java compiler
Java byte code
| dex 编译器
Dalvik byte code
|
Dalvik executable
Dalvik VM
因为直接生成 要修改 java语法 比较繁琐,但是从java byte code改动比较少;
5、apk 文件
一个apk有三部分组成;
Dalvik 执行文件(java 源文件生成的Dalvik 代码)、资源文件(图片、布局等)、本地库(包含一些本地库中本地代码);