关于Android

1. Android 系统架构

Android 可以分为五层框架,从上到下分别为:应用层、应用框架层、系统运行层、硬件抽象层、Linux 内核层。

  • 1.System APP

    • Dialer
    • Email
    • Calendar
    • Camera
    • ……
  • 2.Java API Framework

    • Content Providers
    • View System
    • Managers
      • Activity
      • Location
      • Package
      • Notification
      • Resource
      • Telephony
      • Window
    1. Native C/C++ Libraries & Android Runtime
    1. Hardware Abstraction Layer(HAL)
    1. Linux Kernel

2. Dalvik 和 ART

2.1 Dalvik 介绍

每次执行程序都要将程序语言编译为机器语言,依靠一个 JIT(just in time) 编译器去解释字节码

  • 支持已转换为.dex(即Dalvik Executable)格式的Java应用程序的运行
  • .dex格式是专为Dalvik应用设计的一种压缩格式,适合内存和处理器速度有限的系统
  • 每一个Dalvik应用作为独立的Linux进程执行
  • 独立的进程可以防止在虚拟机崩溃的时候所有程序都被关闭

2.2 ART 介绍

在应用安装的时候就预编译字节码到机器语言并存在本地,这一机制叫 AOT(Ahead Of Time) 编译机制

  • (缺点)需要更大的存储空间,可能增加 10%-20%
  • (缺点)需要更长的安装时间
  • (优点)应用启动、运行更快更流畅
  • (优点)电池续航更久
  • (优点)支持更低的硬件

猜你喜欢

转载自blog.csdn.net/baidu_33221362/article/details/80986130