前言
在目前Android大环境下,虚拟化技术已经很普及。对于虚拟化的运行原理,网上文章已经有一大堆。本篇文章就从实测角度来对比一下各家虚拟化产品技术的差异。
本文涉及到Android的相关知识点,我尽量用自己理解的大白话去讲,如有不对请前辈们不吝赐教。
一些术语
简称 | 全称 | 解释 |
---|---|---|
宿主 | 宿主 | 原应用,即应用本身 |
子应用 | 子应用 | 被运行的应用 |
PMS | PackageManagerService | Android中的安装包管理服务 |
AMS | ActivityManagerService | Android中的应用活动的管理服务 |
NMS | NotificationManagerService | Android中的应用通知管理服务 |
虚拟化是如何运作?
关于这个问题网上已经有N + 1的类似文章,这里有几篇可以参考一下
通过原理分析,我们可以看出,完成虚拟化一个应用,要做的核心事情只有一件:在运行子应用时,欺骗系统让系统误以为正在运行的是宿主,否则系统会毫不犹豫的将你杀死!!
测试的切入点
首先此文章技术细节请教了这方面的大佬,再根据我自己对这方面的研究。现针对以下几个虚拟化“重灾区”进行检验一下,为什么会这样说呢,因为根据虚拟化的技术原理或多或少不可避免的需要对环境进行修改,这里就挑