情况:我在Mac OS X上有android x86加速模拟器。它正常启动(并显示HAX is working and emulator runs in fast virt mode
行),我可以运行程序。程序启动后,模拟器会工作一段时间并冻结,所以我无法与之交互。
示例:如果我调用adb shell ls -l /sdcard/
(或许多其他adb命令),控制台中不会打印任何内容,我必须按control + C才能返回控件。
模拟器重启问题消失后,再次发生。
适用于非加速模拟器。仅在启用HAXM时才能正常工作。
我试过
我需要让模拟器始终工作(不仅仅是前N分钟)。
这不是this question的副本,因为:
可能与this question有关,但
系统信息:
模型标识符:iMac10,1
内存:8 GB
系统版本:Mac OS X 10.6.8(10K549)
内核版本:达尔文10.8.0
HAXM版本1.0.6
支持的操作系统:
Mac OS X * 10.6 Snow Leopard和10.7 Lion(32/64位)
进行设置我跟着instructions from developer.android。我在HAXM安装期间分配了2048 Mb并创建了具有512 Mb RAM的仿真器。
同时dmesg
中有一些消息。历史:
1)模拟器启动后(工作正常)
Kext com.intel.kext.intelhaxm not found for unload request.
13
possible map ffffffffffffffff cpu_online_map 3
haxm_error: fc_msr haxm_error: fc_msr 5
5
haxm_error: vt_enablhaxm_error: vt_enable e 1
haxm_error: nx_enable 1
haxm_error: nx_enable 2048
2048
haxm_error: ---- HAXM release 1.0.6 --------
haxm_error: This log collects runnging status of HAXM driver.
haxm_error: set memlimit 0x80000000
2)经过一段时间后(它仍然有效!)
23
possible map ffffffffffffffff cpu_online_map 3
haxm_error: fc_msr h5
axm_error: fc_msr h5
ahaxm_error: vt_enable xm_error: vt_enable 1
1
haxm_error: nx_haxm_error: nx_enable ena2048
ble 2048
haxm_error: ---- HAXM release 1.0.6 --------
haxm_error: This log collects runnging status of HAXM driver.
.......hax_vm_create_ui 0
cvcpu 0x1d803000 vmid 0 vcpu_id 0
minor id 1000before the crate node
setup hax tunnel request for already setup one
haxm_error: hax_vm_alloc_ram: size 0x20000000
haxm_error: !VM_STATE_FLAGS_MEM_ALLOC
haxm_error: Memory allocation, va:123787000, size:20000000
haxm_error: !VM_STATE_FLAGS_MEM_ALLOC: spare_ram 0x5800000
haxm_error: hax_vm_alloc_ram: size 0x20000
haxm_error: spare alloc: mem_limit 0x0, size 0x20000, spare_ram 0x5800000
haxm_error: VM_STATE_FLAGS_MEM_ALLOC: spare_ram 0x5800000
haxm_error: hax_vm_alloc_ram: size 0x20000
haxm_error: spare alloc: mem_limit 0x0, size 0x20000, spare_ram 0x5800000
haxm_error: VM_STATE_FLAGS_MEM_ALLOC: spare_ram 0x5800000
haxm_error:
...........hax_teardown_vm
.......hax_vm_create_ui 0
cvcpu 0x1d585800 vmid 0 vcpu_id 0
minor id 1000before the crate node
setup hax tunnel request for already setup one
haxm_error: hax_vm_alloc_ram: size 0x20000000
haxm_error: !VM_STATE_FLAGS_MEM_ALLOC
haxm_error: Memory allocation, va:123637000, size:20000000
haxm_error: !VM_STATE_FLAGS_MEM_ALLOC: spare_ram 0x5800000
haxm_error: hax_vm_alloc_ram: size 0x20000
haxm_error: spare alloc: mem_limit 0x0, size 0x20000, spare_ram 0x5800000
haxm_error: VM_STATE_FLAGS_MEM_ALLOC: spare_ram 0x5800000
haxm_error: hax_vm_alloc_ram: size 0x20000
haxm_error: spare alloc: mem_limit 0x0, size 0x20000, spare_ram 0x5800000
haxm_error: VM_STATE_FLAGS_MEM_ALLOC: spare_ram 0x5800000
haxm_error:
...........hax_teardown_vm
.......hax_vm_create_ui 0
cvcpu 0x1d7a8800 vmid 0 vcpu_id 0
minor id 1000before the crate node
setup hax tunnel request for already setup one
haxm_error: hax_vm_alloc_ram: size 0x20000000
haxm_error: !VM_STATE_FLAGS_MEM_ALLOC
haxm_error: Memory allocation, va:123637000, size:20000000
haxm_error: !VM_STATE_FLAGS_MEM_ALLOC: spare_ram 0x5800000
haxm_error: hax_vm_alloc_ram: size 0x20000
haxm_error: spare alloc: mem_limit 0x0, size 0x20000, spare_ram 0x5800000
haxm_error: VM_STATE_FLAGS_MEM_ALLOC: spare_ram 0x5800000
haxm_error: hax_vm_alloc_ram: size 0x20000
haxm_error: spare alloc: mem_limit 0x0, size 0x20000, spare_ram 0x5800000
haxm_error: VM_STATE_FLAGS_MEM_ALLOC: spare_ram 0x5800000
3)模拟器挂起后
.......hax_vm_create_ui 0
cvcpu 0xf5e5000 vmid 0 vcpu_id 0
minor id 1000before the crate node
setup hax tunnel request for already setup one
haxm_error: hax_vm_alloc_ram: size 0x20000000
haxm_error: !VM_STATE_FLAGS_MEM_ALLOC
haxm_error: Memory allocation, va:123641000, size:20000000
haxm_error: !VM_STATE_FLAGS_MEM_ALLOC: spare_ram 0x5800000
haxm_error: hax_vm_alloc_ram: size 0x20000
haxm_error: spare alloc: mem_limit 0x0, size 0x20000, spare_ram 0x5800000
haxm_error: VM_STATE_FLAGS_MEM_ALLOC: spare_ram 0x5800000
haxm_error: hax_vm_alloc_ram: size 0x20000
haxm_error: spare alloc: mem_limit 0x0, size 0x20000, spare_ram 0x5800000
haxm_error: VM_STATE_FLAGS_MEM_ALLOC: spare_ram 0x5800000
请原谅我所有这些类似的日志,但我希望他们可以帮助诊断。我没有发现其他输出面临冻结。
我在这里做错了吗?我可以以某种方式修复/解决这些冻结吗?
P.S。
$ top
PID COMMAND %CPU TIME #TH #WQ #POR #MREG RPRVT RSHRD RSIZE VPRVT VSIZE PGRP PPID STATE UID FAULTS COW MSGSENT MSGRECV SYSBSD SYSMACH CSW PAGEINS
35308 emulator64-x 99.9 93:35.44 2/1 1 67 114 13M 18M- 179M 297M 3459M 35303 35303 running 503 180922 477 134488 1390 604431027+ 1732 83769+ 7
答案 0 :(得分:1)
不确定您是否仍然遇到此问题,但不是您在旧版本的英特尔HAXM上遇到的问题。目前的版本是:HAX 1.0.8 Download
我看到了你的帖子并且一直在崩溃。
在Mac OSX 10.9上跟踪/var/log/system.log时,我会看到上面的消息。当我尝试重新安装HAX时,我会看到以下内容:
Aug 19 12:03:55 3c15c2cf84fe kernel[0]: haxm_error: -------- HAXM release 1.0.7 --------
Aug 19 12:03:55 3c15c2cf84fe kernel[0]: haxm_error: This log collects runnging status of HAXM driver.
Aug 19 12:03:55 3c15c2cf84fe kernel[0]: haxm_error: set memlimit 0x80000000
通过删除我使用Android Studio创建的所有AVD,我能够解决我的问题。来自AVD(Android虚拟设备)只是"删除"虚拟设备中的所有模拟器。然后重新开始。
如果您收到以下错误:
执行以下操作:
我希望能帮助别人。
答案 1 :(得分:0)
请确保在安装期间为模拟器分配的内存始终大于创建模拟器实例时指定的内存。
答案 2 :(得分:0)
我想检查一下机器上的RAM是否有故障。如果内存有问题,则可能意味着数据丢失且模拟器不知道如何应对这种情况。 CNET在最近的文章http://www.cnet.com/uk/how-to/how-to-test-the-ram-on-your-mac/
中介绍了如何在Mac上测试内存进行扩展测试需要很长时间,但如果您想在此处找到问题,则需要排除。