x86架构下的安卓虚拟化
目录
一 国内现状... 1
二 实现方案... 1
三 测试方案... 2
四 技术难点... 4
一 国内现状
国内云手游解决方案大致分为三种:
1.真实手机板卡机器插卡方案
2.使用ARM服务器虚拟化
3.用X86方式虚拟化ARM
ARM64虚拟化 |
X86平台虚拟化 |
真机板卡 |
|
性能 |
高 |
中 |
中 |
基于ARM架构实现,可充分利用云的资源调度 |
基于x86平台,需要借助houdini来做arm/x86的指令转换,存在性能损耗 |
资源固定不能按需调度 |
|
兼容性 |
高 |
极差 |
高 |
与原生android应用兼容度高 |
存在指令集之间的转换兼容性问题 |
就是真实的手机,兼容度100% |
|
扩展性 |
高 |
高 |
低 |
通过云计算技术,资源灵活度高 |
通过云计算技术,灵活度高 |
资源一开始就被固定,扩展性极低 |
二 实现方案
2.1 在x86机器上安装vbox虚拟化软件,然后通过vbox安装安卓操作系统(安卓模拟器)
缺点:经过了虚拟化层,并且有x86和arm的指令集转化,性能低,可能有些应用需要设配
优点:实现简单
2.2 直接是x86<->arm指令集转化
缺点:较难实现,需要熟悉指令集,需要针对不同的应用单独适配
优点:性能高
2.3 arm服务器 + arm虚拟化
缺点:需要维护arm相关虚拟化技术,技术门槛高
优点:对上层APP应用的兼容性较好
2.4 在x86机器上通过qemu虚拟出安卓x86虚拟机,然后开启x86和arm的兼容性配置
缺点:不是100%的兼容,有些APP运行不起来
优点:多路并发
2.5 Linux服务器 + 容器
缺点:兼容性
优点:性能高,并发数高
2.6 windows服务器 + 容器
缺点:兼容性
优点:可同时支持端游和手游/性能高
三 测试方案
x86架构下安装安卓x86虚拟机 + GPU
3.1 gpu透传
3.2 使用显卡虚拟化
3.3 测试
可以安装一些APP/游戏
3.4 存在问题
a. 兼容性差,大部分app运行不了
b. 有些app运行一段时间后会自动退出(闪退)
c. 依赖intel库
3.5 优点
一块显卡可以带多个安卓虚拟机,实现多路高并发
四 技术难点
1. 虚拟化
2. 机器资源调度
3. 游戏的适配
4. 端到端的流传输协议(RTC)
5. 网络时延
x86架构下的安卓虚拟化相关推荐
- x86架构手机跑安卓好吗?
http://www.ithome.com/html/android/83809.htm 华硕低价位手机ZenFone一推出就掀起市场话题,许多人也对ZenFone所采用的Intel Atom处理器有 ...
- 解答:x86架构下,页面大小为什么是4K?
前提:32位逻辑地址空间的计算机系统,三级页表,每个页中每个条目占4Byte,即32位的数据 以上前提是目前x86架构32位系统的真实情况 设:页大小为X(byte) 则:X/4就是每个页中可以存取的 ...
- 卅年史诗!地球上出现过的CPU完全收藏 - (26-28) x86架构下的其它CPU巨鳄 Cyrix,NexGen,IDT/Transmeta(组图)
●Cyrix CPU介绍 突然想起来,X86架构的CPU还有Cyrix公司啊!那我们就接着回顾吧. M1 M1 ,背面 100MHz的M1 100MHz的M1,背面 还是M1,不过公司名称换了 换了名 ...
- x86架构下,页面大小为什么是4K?
前提:32位逻辑空间的计算机OS,两级页表,每个页中每个条目占4bytes,即32位的数据 以上前提是目前X86架构的32为系统的真实情况: 设页大小为X(byte),则X/4为每个页可以存取的条目的 ...
- 如何在x86架构下进行ARM镜像的构建与运行
这篇文章介绍一下使用QEMU进行容器化的构建和执行方式. 目录 QEMU是什么 常见问题的场景 问题再现 事前准备 启动容器并进入 解决方法 结果确认 构建ARM镜像并确认 QEMU是什么 QEMU是 ...
- 计算机系统-x86架构下的寄存器与寻址
一:段的概念 比方说有这样一段汇编程序 .data abc DWORD 666 .code call abcdef 可以肤浅的理解为abc DWORD 666这句代码存在的内存区域,叫做数据段,cal ...
- x86架构下 CF与OF标志位 带符号和无符号运算 详解
针对能够影响OF和CF标志位的指令,一般来说是涉及到数据运算的指令,这里使用add举例,即不区分有无符号的加法指令,参与运算的数据,从二进制层级去考虑. CF标志位 对于CF,它是carry flag ...
- x86 架构下的 BIOS 功能介绍
提到 BIOS ,想必想起来一句歌词:最熟悉的陌生人,哈哈... 一.BIOS简介 BIOS, 是英文"Basic Input Output System"的缩写,BIOS是个人电 ...
- 中端存储趋势:x86、SSD缓存和虚拟化
http://storage.chinabyte.com/70/12254570_4.shtml 在上一篇<SPC-1:闪存 vs.磁盘新旧势力的战场>中,我们对2011年公布的SPC-1 ...
最新文章
- 《DDIA》读书笔记
- omnigraffle怎么画曲线
- 区块链100讲:据说,80%的人都搞不懂哈希算法
- pythonnamedtuple定义类型_详解Python中namedtuple的使用
- 自注意力真的是Transformer的必杀技吗?MSRA否认三连,并反手给你扔来一个sMLPNet
- wordpress在新窗口打开留言者链接
- excel字体颜色对照表 取值0-63
- (20120731)Android中的各种对话框总结(dialog)
- 拓扑之homeomorphic
- 全职宝妈做自媒体怎么样
- 瑞星对Windows7捆绑杀毒软件等消息的回应
- 玻尿酸市场价格有很多,你是赚了还是亏了?
- Python爬虫系列(二)——Python爬虫批量下载百度图片
- idea验证失败_解决iPad登陆不了Apple ID验证失败的问题
- 工程经济学99分速成复习——第一章 绪论
- matplotlib用Times New Roman且不加粗
- C语言编程error c2236:unexpected ‘struck‘ _ _;原因
- python中正则表达式的简单应用_Python正则表达式详细应用
- 自动阅读项目到底能不能做?看成本分析再决定
- 信息论与编码|香农编码的Matlab实现
热门文章
- 软件算法能申请专利吗
- 【干货】Kaggle数据挖掘比赛经验分享,陈成龙博士整理!
- Revit二开--批量修改视图范围(revit宏)
- vi中多个文件相互之间的复制、粘贴功能简介!
- facebook入华,你了解这些信息吗?
- manjaro安装tim
- Excel如何快速简单的设置3级下拉菜单?
- 解决电脑C盘空间不足,发现微信和qq文件占用了大量内存
- python爬虫网易云音乐评论最多的歌_使用Python爬一爬网易云音乐上那些评论火爆的歌曲...
- Mac版Dream weaver CC 2018如何安装教程(%¥c%激*.活)和汉化