android基础知识之一

1:Android系统架构(重点)

  分层的架构

  JNI java native interface
  1.application :应用层 ; java
  2.application framework :应用框架层 , java+JNI
  3.libraries 和 dalvik : 函数库和虚拟机层, c/c++
  4.linux kernel : linux 内核驱动层, c

2:两种虚拟机的不同 

  版权问题:
  jvm : java虚拟机 sun JVM: .java --> javac --> .class --> jar --> .jar
  架构: 堆栈(栈是内存中的一块空间,需要cpu寻址)
  dvm: dalvik虚拟机 google DVM: .java --> javac --> .class --> dx.bat --> .dex
  架构: 寄存器(cpu上一块高速的缓存,无需寻址)

  区别:
  1.基于的架构不同,jvm 基于栈架构,栈是位于内存上的一个空间,执行指令操作,需要向cpu寻址;
    dvm 基于寄存器架构,寄存器是cpu的一个组成部分,执行指令操作无需寻址直接执行。
  2.执行文件的格式不同,jvm执行的是多个.class文件。 dvm执行的是一个.dex文件

posted @ 2016-11-18 22:05  佩喻幻  阅读(163)  评论(0编辑  收藏  举报