如何解决“无法同步vcpu reg”错误?

我正在尝试使用适用于Windows的Intel HAX x86模拟器(如果有的话)。 我安装了所有东西,并为android版本创build了一个AVD,并且所有东西都显示正确,但是当我运行它时,我得到了这个输出:

Starting emulator for AVD 'x86_QVGA_Level10' emulator: device fd:1044 HAX is working and emulator runs in fast virt mode emulator: Failed to sync vcpu reg emulator: Failed to sync HAX vcpu context 

并且模拟器不会运行。 这个错误的重要组成部分(Failed to sync vcpu reg)是不是在任何地方都提到,除了在HAX本身的源代码 ,但我不知道如何使这个任何意义。

任何人都可以build议如何通过这个错误? 我真的需要得到这个工作,因为在设备上和默认的模拟器debugging是痛苦的慢。

确保您没有运行任何虚拟机。 在我的情况下,我有genymotion运行,这是造成这个错误。

我有virtualbox运行。 杀死VM允许模拟器运行。

如果你正在运行Docker,你将不得不closures虚拟机

docker-machine stop default

这假设您的docker机器被称为default 。 如果你想检查名称使用docker-machine ls

更简单的解决scheme; 打开virtuabox并停止vm 🙂

我有这个问题。 对我来说,这是HAXM版本。

当您通过SDKpipe理器获取新版本的HAMX时,会告诉您已经安装。 不是这样。 你必须去这个文件夹:

<Android SDK> \ extras \ intel \ Hardware_Accelerated_Execution_Manager \

并手动运行intelhaxm-android.exe 。 在我的情况下,我有1.0.6和升级到1.1。

我认为,首先是导致错误的原因是我更新的SDK的其他部分需要1.1。

正如其他答案所述,请确保没有VirtualBox和Docker服务在mac中使用以下命令运行。 (Linux中的systemctl

 $ launchctl list | grep 'VirtualBox\|docker' - 0 com.docker.helper 640 0 com.docker.docker.2032 31736 0 org.virtualbox.app.VirtualBox.948 

如果是这样,杀死VBoxdocker服务。

 launchctl stop org.virtualbox.app.VirtualBox.948 launchctl stop com.docker.docker.2032 
  1. 停止GENYMOTION(如果任何实例正在运行,请打开VirtualBox实例,将其停止)。
  2. 打开AndroidStudio – >运行AVD Manager->运行AndroidStudio虚拟设备。

最新的Android模拟器无法与GENYMOTION并行运行

“vcpu reg”是许多处理器上存在的“虚拟CPU寄存器”,这些处理器具有多核,超线程或其他function,使较高层可以相信在不存在多个CPU时 – 例如今天的x86。 没有理由深入细节 – 你可以想象得到一个连贯的,单一的“虚拟CPU上下文”是HAX提供的那种硬件虚拟化所必需的。

通常,同时运行多种types的虚拟机并不是一个问题。 但是,如果其中一个崩溃,或者不正常,或者只是决定成为一个猪,HAX可能会发现它不能把一个连贯的虚拟机放在一起,因为它不能为自己同步虚拟CPU上下文。 这就像试图运行没有CPU的真机。

底线是开放的任务pipe理器,并杀死你不需要的东西,看起来他们可能会拿着虚拟机资源。 在最坏的情况下,重启几乎肯定会解决这个问题。

快速步骤:

  1. 停止所有的VirtualBox虚拟机(即vagrant halt),退出VirtualBox。
  2. 所有docker机也应该停止。 退出Docker。

我得到了同样的错误。 我猜这个错误有各种各样的原因,但在我的情况下,这是因为一个名为“.NCG”的服务。 该服务是Inka Entworks的Network Content Guard,似乎是某种types的DRM解决scheme。 一旦卸载,模拟器使用HAX工作正常。

在我的情况下,原来这个问题是由于在AVD设置中将networking摄像头选为“前置摄像头”造成的。 将其设置为“仿真”为我解决了这个问题。

我遇到了这个问题,因为我的虚拟盒子上运行着Ubuntu。 当我closures我的虚拟箱,我没有面对这个问题。

当我试图在MacOS机器上同时运行VirtualBox和Android模拟器时,这也发生在我身上。 正如其他人上面提到的,目前在MacOS中不可能同时运行(即基于VirtualBox和X86-Intel的仿真器),也不能确定其他平台。 如果我们需要同时运行,我们可以select基于ARM的仿真器。 (基于ARM的仿真器通常很慢)

我的Windows 8安装时出现同样的错误。

你可以尝试的东西:

  • 降低模拟设备的内存容量(和/或closures其他应用程序)
  • 禁用GPU仿真
  • 删除传递摄像头

对我来说,当我尝试将一个物理摄像头连接到模拟的Android实例时发生错误。

直到我将其更改为[x]使用主机GPU,如图所示,这一直保持失败。

AVD设置

我正在运行boot2docker虚拟机,只是它解决了这个问题。

boot2docker down

确保您没有运行任何虚拟机。 在我的情况下,我有genymotion运行,这是造成这个错误。 当我杀gentmotion的进程,并杀死所有的Oracle VM VirtualBox相关的过程,然后由王世明工作不谢谢你我

雅,我有虚拟的盒子运行,并得到这个错误,closures它纠正错误。

我在Mac上,并有这个问题。 我没想到我正在运行一个虚拟机(我有vbox,但它没有运行)。 我重新启动了我的电脑,在启动任何其他应用程序之前,我尝试了模拟器,它工作正常。

是的,VirtualBox虚拟机必须停止。 我也不得不停止为Mac的Docker。 该错误消息只提到VirtualBox,这让我困惑了一下,直到我意识到Docker for Mac正在运行xhyve。

如果您的CPU支持节stream(如Intel的SpeedStep ),请尝试在您的BIOS中禁用该function。 这是一种quickfix,但至less它工作。

我认为这一定是造成这种失败的各种原因。 就我而言,由于我安装了Googleinput法软件,出现了“无法同步vcpuregistry”。 这是正常工作之前的唯一改变。 所以,在卸载Googleinput软件之后,它被恢复了。只是有一点点参考,尽pipe我也不能长时间相信这个解决scheme。

我有Windows Virtual PC运行(当然在Windows上)。 一旦我关掉了,模拟器就没事了。

希望这可以帮助。

我试图启动一个姜饼2.3.3 x86模拟器,它不会启动。 从x86更改为arm使问题消失。

对我来说,在MacOS Yosemite上使用adv的唯一方法是将处理器设置为ARM (设备的本机CPU – 标准4“Nexus)。

这是VirtualBox票 – https://www.virtualbox.org/ticket/14294

如果您正在运行任何虚拟机,请暂停并重试。

对我来说,答案是在虚拟设备的高级设置下将Enable keyboard input设置为true。

这是我在设备上改变的第一个选项,所以根据上面的各种答案,更改选项的行为可能会修复错误。

注意:我以前已经确认没有虚拟机正在运行。

通过将Windows中的Java版本从Java 8 x64更改为Java 7 x86来解决此问题。

最后,我find了这个问题的答案。 我有完全相同的问题,它完全解决了。

虚拟设备或摄像头很less是您的问题的原因。

只需安装主板芯片组驱动程序。

我build议你使用3DP芯片组自动安装程序。

祝你好运!

对我来说,这是谷歌appengine本地运行。