文章目录
- 概要
- 主流实现虚拟化技术
- 技术实现细节分析
- 1、[基于容器原理(docker、lxc、cells)的Android 双系统设计概要](https://blog.csdn.net/pppaass/article/details/76602419)
- 2、[基于代理的设备虚拟化技术及其应用](http://www.xml-data.org/dzkj-nature/html/2017-6-883.htm)
- 3、[An Open-Source ARM Virtualization System](http://systems.cs.columbia.edu/projects/kvm-arm/)
- 4、[Virtual Open Systems](http://www.virtualopensystems.com)
- 5、[基于anbox的云手机技术简介](https://blog.csdn.net/v6543210/article/details/113692010)
- 6、[DockDroid](https://github.com/DockDroid/openvmi)
- 7、[云手机基本原理与构建(云手机源码怎样炼成的?)](https://zhuanlan.zhihu.com/p/351546798)
- 8、[Android 虚拟化框架 (AVF)](https://source.android.com/docs/core/virtualization?hl=zh-cn)
- 9、[SpaceCore](https://github.com/FSpaceCore/SpaceCore/blob/main/README_CN.md)
- 10、[Windows WLS2 AOSP构建开发环境配置指南](https://juejin.cn/post/7188078567022919739)
- 11、[云安卓(Cuttlefish)](https://source.android.com/docs/devices/cuttlefish/get-started?hl=zh-cn)
- 12、[Microdroid](https://android.googlesource.com/platform/packages/modules/Virtualization/+/HEAD/microdroid/README.md)
- 13、[两仪](https://github.com/twoyi/twoyi/blob/main/README_CN.md)
- 小结
概要
随着国内手机的迭代更新,安卓系统漏洞逐渐封控,厂家对系统定制化越来越高的情况下,手机解锁的门槛越来越高,Root权限获取越来越困难,在无法获取Root的情况下,想使用一些类似Xposed的插件,Android虚拟化技术诞生并逐渐完善,越来越稳定。比较知名的软件有VMOS、光速虚拟机、虚拟大师等软件,在安卓系统上运行安卓系统并支持多开。
主流实现虚拟化技术
例如:
- lxc
- anbox
- cells
- avf
- docker
- spacecore
- …
技术实现细节分析
1、基于容器原理(docker、lxc、cells)的Android 双系统设计概要
这个项目的原型来自于,哥伦比亚大学虚拟化研究室的一篇论文(也有一个DEMO),后来一个以色列公司cellrox在2014年进行了商业化,2015年的时候浙大一个操作系统研究室也出了一个DEMO(名称叫Condroid)。
哥大论文地址:http://systems.cs.columbia.edu/projects/cells/
浙大项目地址:http://condroid.github.io/ 项目地址:https://github.com/jianglin-code/cells-android10
以色列公司官网:http://www.cellrox.com/ Android 6.0 huawei 6p nexus : fastboot https://pan.baidu.com/s/1G1risnbT0Usy_NL6VDbovQ
2、基于代理的设备虚拟化技术及其应用
3、An Open-Source ARM Virtualization System
4、Virtual Open Systems
5、基于anbox的云手机技术简介
6、DockDroid
7、云手机基本原理与构建(云手机源码怎样炼成的?)
8、Android 虚拟化框架 (AVF)
只有 ARM64 设备支持AVF,经过几日的研究分析,可以确定需要手机厂商支持pKVM内核才能运行,或者通过解锁刷入kvm内核即可使用此特性。
Protected Virtual Machine Firmware
Android Virtualization Framework (AVF)
9、SpaceCore
SpaceCore是一个基于Android系统的应用程序虚拟化引擎,一个Android系统的沙盒环境,亦可看作是轻量级的Android虚拟机。可用于APP多开、数据隔离、脚本自动化、插件化开发、谷歌商店上架等。
10、Windows WLS2 AOSP构建开发环境配置指南
11、云安卓(Cuttlefish)
Cuttlefish 是一种可配置的虚拟 Android 设备,既可以远程运行(使用第三方云产品,如 Google Cloud Engine),又可以在本地运行(在 Linux x86 机器上)。
12、Microdroid
Microdroid 是 Android 的(非常)轻量级版本,旨在在设备上的虚拟机上运行。它是使用与常规 Android 相同的源代码构建的,但它要小得多;没有系统服务器、没有 HAL、没有 GUI 等。它仅用于托管无头和本机工作负载
13、两仪
两仪就是一个轻量级的 Android 容器。它可以在 Android 系统上以一个普通 App 的身份(免ROOT)来运行一个相对完整的
Android 系统。并且它支持 Android 8.1 ~ 12。
小结
本打算自行实现基于 aosp android 13 实现虚拟化,奈何时间无法协调,只能等未来在看了。。。