Android L默认採用ART执行环境。全然兼容64位移动处理器。Google称这将比此前的Dalvik模式性能提高两倍,可是会占用很多其它的内存空间。Android有三种执行模式:JNI、Dalvik、ART。Dalvik明显是最慢的,全然的JNI模式是最快的可是开发难度高,ART介于两者之间。而且不影响现有开发模式,所以Google选了ART。我们的技术project师对此做了技术解读:

1)JNI:在开发过程中使用编译器在C/C++等语言直接编译成机器码。执行的时候可以充分利用系统性能,这是最快的。iOS的Object C和Android 的NDK都是这样的模式。

2)Dalvik:Android L系统之前全部Android版本号的执行方式,採用的是字节码。在执行的时候解释执行变成机器可以识别的机器码。这个过程是比較缓慢的。

3)ART:Android 4.4開始推出的新的执行环境,在APP安装的时候使用dex2oat工具直接把DEX文件转换为机器码文件,执行的时候以机器码方式执行,可以充分利用系统性能;此外。改进的内存回收机制使得ART执行模式下的内存回收速度仅仅有Dalvik执行时模式下的50%。也可以提升系统执行速度。

尽管执行的速度提高了。可是ART也有缺点:

1)APP安装过程会变慢;

2)APP占用的存储空间会变多,系统更easy出现系统空间不足问题。

Google今年将Android生态的安全提到了非常重要的位置上,但Android L系统依然存在着一些先天不足:

1)恶意软件和病毒持续增长

Android系统诞生至今,一直饱受各种恶意软件的侵袭。随着各类操作系统ROM的预装内置和应用市场的审核不严等问题,Android平台的恶意软件和病毒数呈直线上升态势。我们在5年前就開始专注研究Android上各类软件的恶意行为。建立了APP行为云。用动静结合的方式分析各类APP的行为。

从CM security的监控数据来看,共发现恶意样本量超过450万款。包含恶意软件和病毒。在2014上半年,这二者的增长趋势超过150%。Android平台的安全战是一个持久战。

2)系统与第三方软件漏洞仅靠Google补丁是不够的

本次Android L系统添加了GooglePlay支持系统补丁的功能,可是因为Android系统版本号的碎片化分布,以及各种定制系统ROM,所以并非全部的漏洞都能够通过GooglePlay进行修补。并且对于Android系统上执行的第三方软件来说,也存在不少的漏洞风险(如WhatsApp隐私泄漏漏洞、Adobe Reader的webview随意代码执行漏洞等),对于这些漏洞风险,紧紧靠GooglePlay的补丁机制,是无法避免或进行全然修补的,Android漏洞方面的风险依旧严峻。

3)手机防盗的安全日益重要

美国立法推动了智能手机支持防盗窃功能,此次Android L系统中增强了此功能,意在彻底防止手机盗窃后的二次倒卖或信息窃取。依据美国《消费者报告》(Consumer Reports)的数据。2013年美国有超过300万部智能手机被盗,远超2012年的160万部。

4)隐私保护机制的教育须要时间依据CM security安全实验室的APP行为云分析,约有20万款应用(约4.4%) 会向用户索取不必要的隐私权限,如短信、通话记录读写权限、用户位置数据权限等。这些APP会在后台偷偷拿到用户的个人隐私,导致用户的日常行踪暴露无遗。

Android L系统提供了一个调整APP权限的机制,来避免用户的隐私泄露风险。对于最大众面的普通用户来说。学会怎样进行底层设置来管理APP权限还须要一定的教育周期。

本文来自网络。如有违规。请提示删除

安卓执行机制JNI、Dalvik、ART之间的比較 。android L 改动执行机制。的更多相关文章

  1. 安卓WebView中接口隐患与手机挂马利用(远程命令执行)

    安卓应用存在安全漏洞,浏览网站打开链接即可中招.目前有白帽子提交漏洞表明目前安卓平台上的应用普遍存在一个安全漏洞,用户打开一个链接就可导致远程安装恶意应用甚至完全控制用户手机,目前微信,手机QQ,QV ...

  2. SQL执行计划Cost与性能之间的的关系

    关于执行计划Cost的三个疑问: 1. 执行计划的Cost越低,SQL就一定跑得越快吗?或者说Cost 和 执行时间成比例关系吗? 2. Oracle 默认产生的执行计划是Cost最低的吗? 3. 如 ...

  3. Android L 使用ART能提高多少性能?

    点击打开链接 刚刚结束的 Google I/O 大会上,Android 下一代操作系统「L」带来不少惊喜.新系统运行更快.更省电. 然而开发者对这个新系统也有颇多疑问,比如新的运行模式 ART 对开发 ...

  4. 理解Android Java垃圾回收机制

    Jvm(Java虚拟机)内存模型 从Jvm内存模型中入手对于理解GC会有很大的帮助,不过这里只需要了解一个大概,说多了反而混淆视线. Jvm(Java虚拟机)主要管理两种类型内存:堆和非堆.堆是运行时 ...

  5. Android系统进程间通信Binder机制在应用程序框架层的Java接口源代码分析

    文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/6642463 在前面几篇文章中,我们详细介绍了A ...

  6. Android中对Handle机制的理解

    一.重要參考资料  [參考资料]     眼下来看,以下的几个网址中的内容质量比較不错.基本不须要再读别的网址了. 1.android消息机制一     http://xtfncel.javaeye. ...

  7. Android 操作系统的内存回收机制(转载)

    Android 操作系统的内存回收机制(转载) Android APP 的运行环境 Android 是一款基于 Linux 内核,面向移动终端的操作系统.为适应其作为移动平台操作系统的特殊需要,谷歌对 ...

  8. Android多线程----异步消息处理机制之Handler详解

    ​[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...

  9. Android 操作系统的内存回收机制[转]

    转自:http://www.ibm.com/developerworks/cn/opensource/os-cn-android-mmry-rcycl/ Android APP 的运行环境 Andro ...

随机推荐

  1. Web鼠标事件

    mousedown:鼠标按下 mouseup:鼠标抬起 mousemove:鼠标移动 mouseout:在父元素上绑定该事件,当鼠标从父元素或者从子元素上离开时都会触发该事件 mouseleave:和 ...

  2. 关于$test$plusargs和$value$plusargs的小结

    见: http://www.cnblogs.com/nanoty/p/4355245.html

  3. tensorboard以时间命名每一个文件夹

    tensorboard 有一个良好的命名习惯以时间命名每一个文件夹,例如**20190523_081232** ''' from datetiome import datetime dir = os. ...

  4. TSOJ--2018 江苏省省赛

    [2018 江苏省大学生程序设计大赛] K. 2018 (测试数据范围有扩大) Problem Given a, b, c, d, find out the number of pairs of int ...

  5. HDU 3045 DP 斜率优化 Picnic Cows

    题意:将n个数分成若干组,每组数字的个数不少于t个,要把每组的数字减小到这组最小值,求所有数字减少的最小值. 先将这n个数从小到大排个序,可以想到一组里面的数一定是排序后相邻的. 设d(i)表示前i个 ...

  6. Java列出接口实现的所有接口

    package com.tj; public class MyClass2 { public static void main(String[] args) { Class cls = java.ut ...

  7. Sequence Models

    Sequence Models This is the fifth and final course of the deep learning specialization at Coursera w ...

  8. 【转】SQL索引一步到位

    原文:http://www.cnblogs.com/AK2012/archive/2013/01/04/2844283.html SQL索引一步到位(此文章为“数据库性能优化二:数据库表优化”附属文章 ...

  9. hdu_2092_整数解

    枚举 #include <iostream> #include <cstdio> #include <cmath> using namespace std; int ...

  10. 九度oj 题目1139:最大子矩阵

    题目描述: 已知矩阵的大小定义为矩阵中所有元素的和.给定一个矩阵,你的任务是找到最大的非空(大小至少是1 * 1)子矩阵. 比如,如下4 * 4的矩阵 0 -2 -7 0 9 2 -6 2 -4 1 ...