在windows内使用virtualbox搭建安卓x86,以及所遇到的问题解决--2.virtualbox上安卓x86的配置

news2025/1/17 22:00:25

目录:

简要说明:

1.配置vesa驱动:

2.启用网络连接并配置adb:

3.增强性能的方法:


简要说明:

先进行说明一点个人直接通过vbox VMware这些软件,并不能超越专业的安卓模拟器,大部分模拟器实际也是基于vbox(腾讯傲引擎和网易星云比较特殊,使用了aow),但是仍然存在不同。

第一、大部分模拟器内部系统并非原生安卓x86,而是深度魔改后的安卓x86,从系统流畅度上,个人直接通过vbox VMware此类软件搭建的安卓系统就不能比的过安卓模拟器,

第二、大部分安卓模拟器都通过google的angle库(是Google研发的将OpenGLES转换成其他渲染api的库),将OpenGLES的api转换为OpenGL Desktop api或者Directx api实现渲染虚拟化,因此专业模拟器的渲染虚拟远大于vbox模拟的显卡,个人当然也能实现,不过工作量较大。

第三、大部分安卓模拟器对于intel arm二进制翻译库(houdini)进行了魔改,兼容性远大于初始houdini。

所以csdn/b站上,介绍"使用vbox/VMware"搭建安卓虚拟机的说法是不切实际的。当然对比安卓模拟器,直接使用vbox搭建虚拟机仍然是有好处的,比如可以自由的选择版本,可以更自由的分配资源等。


1.配置vesa驱动:

当下载非后缀带有k49的安装包时,可能出现进入安卓界面时黑屏,此问题就需要配置vesa驱动

具体的方法:

(1).在引导界面选debug,会进行一串参数字符串输出,若出现不再跑码的情况可以按一下enter

(2).输入mount -o remount,rw /mnt 回车给mnt目录挂载读写权限

(3).vi /mnt/grub/menu.lst,按下i开始编辑
 

(4) 在第一项启动参数后面添加nomodeset xforcevesa参数,然后按下end键,退出编辑模式,输入:wq!并回车,强制保存

(5)执行mount -o /mnt重新挂载mnt目录,重启后就能正常进入系统了


2.启用网络连接并配置adb:

1.需要找到virtualbox目录(具体方法不进行介绍,可参考其他文章)

2.在目录下标题栏打开cmd执行以下命令,使用nat转发网络

vboxmanage modifyvm "虚拟机名" --natpf1 "guestadb,tcp,,5555,,5555"
vboxmanage modifyvm "虚拟机名" --natpf1 "guestadb1,udp,,5555,,5555"
vboxmanage modifyvm "虚拟机名" --natpf1 "guestadb2,tcp,,5554,,5554"
vboxmanage modifyvm "虚拟机名" --natpf1 "guestadb3,udp,,5554,,5554"

3.会将虚拟机5554和5555端口转发到127端口,部分VMware的机器在使用此操作可能会莫名其妙失效,这个没啥办法解决

4.打开虚拟机-设置-关于平板电脑-版本号--多次点击后会提示已开启开发者选项

5.回到设置,会发现已经多出了一个开发者选项的选项卡,点击进去

 找到usb调试点击开启,回到设置,找到wlan设置,会发现有一个virtwifi,链接后就可以正常使用adb了

 


3.增强性能的方法:

1.右击虚拟机列表打开设置--系统--调整内存大小和CPU处理器核数,实测内存在2048-8124,性能差别较大,内存8124-10480时差别性能差别较小,CPU根据核数的不同带来性能的差异确实比较大,不存在性能的阈值/贫瘠

2.vt肯定是需要开启的,否则无法进入android系统,一些人说将vt开启能提升虚拟机性能,这是一种错误的说法,vt开启实际意义就是让Virtualbox,VMware这一类虚拟机能使用虚拟化CPU,类似网易星云、腾讯aow(这两个架构有点像)此类通过另类方法虚拟运行安卓系统的模拟器,就不需要开启vt,开启后也不会有性能增强

3.启用PAE /NX对于虚拟机的确是有提升的,硬件加速模块:实测使用hyperv加速在安卓虚拟机的性能最低,旧接口性能最高,默认是KVM。

4.若为k49内核的androidx86可以使用vmsvga+3d加速达到高效图形渲染,若非k49内核使用vboxsvga效果最佳,关于现存设置,目前可直接设置的显存只有0-128MB,可以通过以下命令将显存强制设置到256MB

VBoxManage modifyvm android93 --vram 256

vbox在一个版本后将2d加速隐藏了,可以通过此命令开启VBoxManage modifyvm android93 --accelerate-2d-video  on,进入到安卓图形界面--设置--开发者选项把渲染模式改成opengl(skia)实测有一定性能加强效果

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/415344.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

使用Pytorch实现对比学习SimCLR 进行自监督预训练

SimCLR(Simple Framework for Contrastive Learning of Representations)是一种学习图像表示的自监督技术。 与传统的监督学习方法不同,SimCLR 不依赖标记数据来学习有用的表示。 它利用对比学习框架来学习一组有用的特征,这些特征…

【创作赢红包】Java Web 实战 18 - 计算机网络之网络层协议 and 数据链路层协议

文章目录网络层协议1. IP 协议1.1 报头结构1.2 IP 协议的地址管理动态分配 IP 地址 (DHCP)IP 地址转换 (NAT)IPv61.3 IP 地址的组成2. 路由选择数据链路层1. 以太网协议2. 以太网帧格式2.1 mac 地址2.2 两个特殊的以太网数据帧DNS 域名解析系统六 . 经典面试题 : 从浏览器中输入…

微信小程序 | 基于ChatGPT实现模拟面试小程序

Pre:效果预览 ① 选择职位进行面试 ② 根据岗位职责进行回答 一、需求背景 这两年IT互联网行业进入寒冬期,降本增效、互联网毕业、暂停校招岗位的招聘,各类裁员、缩招的情况层出不穷!对于这个市场来说,在经历了互联网…

小白学Pytorch系列--Torch API (7)

小白学Pytorch系列–Torch API (7) Comparison Ops allclose 此函数检查输入和其他是否满足条件: >>> torch.allclose(torch.tensor([10000., 1e-07]), torch.tensor([10000.1, 1e-08])) False >>> torch.allclose(torch.tensor([10000., 1e-…

MATLAB | 如何自然好看的从图片中提取颜色并制作色卡

在这里研究了一下各种排序算法,写一篇如何由图片一键生成颜色条的方法。 1 关于大量颜色排序 假设有大量颜色怎么对其进行排序呢,首先想到的最简单方法就是将其按照RGB值的大小进行排序,为了方便展示颜色条,这里编写了一个颜色条…

【Pytorch】 理解张量Tensor

本文参加新星计划人工智能(Pytorch)赛道:https://bbs.csdn.net/topics/613989052 这是目录张量Tensor是什么?张量的创建为什么要用张量Tensor呢?总结张量Tensor是什么? 在深度学习中,我们经常会遇到一个概念&#xff…

初探Redis整体架构

文章目录1、Redis为什么选择单线程2、逐步加入多线程3、Redis采用IO多路复用---epoll和Reactor架构4、Redis6/7默认是否开启了多线程?1、Redis为什么选择单线程 这种问法其实并不严谨,为啥这么说呢? Redis几个里程碑式的重要版本 理清一个事实&#…

一文带你安装opencv和常用库(保姆级教程少走80%的弯路)

0.导语 离上一个opencv安装保姆级教程发布已经过去了快一年了,这一年来我收到了来自很多C友的鼓励。打算学opencv的各位朋友都会在安装opencv和各种库过程中浪费掉60%的时间和精力;博主在这一年来尝试各种各样的安装方法,全网搜集各种资料总…

[ 云计算 | Azure ] Chapter 05 | 核心体系结构之管理组、订阅、资源和资源组以及层次关系

本文主要对如下内容进行讲解:Azure云计算的核心体系结构组件中的:资源、订阅和资源组,以及了解 Azure 资源管理器 (ARM) 如何部署资源。 本系列已经更新文章列表: [ 云计算 | Azure ] Chapter 03 | 描述云计算运营中的 CapEx 与…

元宇宙与网络安全

元宇宙是一种虚拟现实空间,用户可以在计算机生成的环境中进行互动。元宇宙的应用范围很广,比如房地产,医疗,教育,军事,游戏等等。它提供了更具沉浸感的体验,更好地现实生活整合,以及…

图像分类算法:ResNet论文解读

图像分类算法:ResNet论文解读 前言 ​ 其实网上已经有很多很好的解读各种论文的文章了,但是我决定自己也写一写,当然,我的主要目的就是帮助自己梳理、深入理解论文,因为写文章,你必须把你所写的东西表达清楚…

游戏工厂:AI(AIGC/ChatGPT)与流程式游戏开发(码客 卢益贵)

关键词:AI(AIGC、ChatGPT、文心一言)、流程式管理、好莱坞电影流程、电影工厂、游戏工厂、游戏开发流程、游戏架构、模块化开发 一、前言 开发周期长、人工成本高、成功率低等使得游戏公司融资比较困难。有的公司凭一个爆款游戏一骑绝尘之后…

奇异值分解(SVD)和图像压缩

在本文中,我将尝试解释 SVD 背后的数学及其几何意义,还有它在数据科学中的最常见的用法,图像压缩。 奇异值分解是一种常见的线性代数技术,可以将任意形状的矩阵分解成三个部分的乘积:U、S、V。原矩阵A可以表示为&#…

阿里通义千问、百度文心一言、ChatGPT与GPT-4大比拼

各个大模型的研究测试传送门 ​阿里通义千问传送门: https://tongyi.aliyun.com/chat 百度文心一言传送门: https://yiyan.baidu.com/ ChatGPT传送门(免墙,可直接注册测试): https://wowchat.cn GPT…

离线安装k8s/kubernetes v1.17.1并部署服务验证功能

条件: 3台没有网络的centos7.9服务器 1.系统优化 hostnamectl set-hostname k8s-master && bash #只在master节点上执行 hostnamectl set-hostname k8s-node1 && bash #只在node1节点上执行 hostnamectl set-hostname k8s-node2 && …

嵌入式:BSP的理解

BSP概念总结BSP定义BSP的特点BSP的主要工作BSP在嵌入式系统和Windowsx系统中的不同BSP和PC机主板上的BIOS区别BSP与 HAL关系嵌入式计算机系统主要由 硬件层,中间层,系统软件层和应用软件层四层组成。硬件层:包含CPU,存储器(SDRAM&…

(数字图像处理MATLAB+Python)第四章图像正交变换-第一节:离散傅里叶变换

文章目录一:一维离散傅里叶变换(1)定义(2)实例二:一维快速傅里叶变换(1)定义(2)实例三:二维离散傅里叶变换(1)定义&#x…

SpringCloud微服务技术栈.黑马跟学(十二)

SpringCloud微服务技术栈.黑马跟学 十二今日目标服务异步通信-高级篇1.消息可靠性1.1.生产者消息确认1.1.1.修改配置1.1.2.定义Return回调1.1.3.定义ConfirmCallback1.2.消息持久化1.2.1.交换机持久化1.2.2.队列持久化1.2.3.消息持久化1.3.消费者消息确认1.3.1.演示none模式1.3…

Flutter TextField UI 实例 —— 新手礼包

大家好,我是17。 新手礼包一共 3 篇文章,每篇都是描述尽量详细,实例讲解,包会! Flutter Row 实例 —— 新手礼包Flutter TextField UI 实例 —— 新手礼包Flutter TextField 交互实例 —— 新手礼包 本篇介绍了 Tex…

机器学习:基于逻辑回归对超市销售活动预测分析

系列文章目录 作者:i阿极 作者简介:Python领域新星作者:博主个人首页 😊😊😊如果觉得文章不错或能帮助到你学习,可以点赞👍收藏📁评论📒关注哦!&a…