转载这篇文章的主要目的是解决启动avd时出现这个错误
HAXM is not working and emulator runs in emulation mode
现在判断是HAXM内存设置的太小了,现在试着通过重装HAXM解决这个问题
补充:问题解决了。问题就是第一次安装HAXM时给的内存太小了,所以虚拟机跑不起来,现在给了1.5G后,就ok了,但是内存也完全被吃掉了。
另外预计最少要1.2G虚拟机才能跑起来,毕竟我起的仅仅只是helloworld,就用了1.1G的内存。电脑也该升级内存了。
再次补充:我设置的是1.5G,前面在打开浏览器占用电脑600M内存的情况下,虚拟机只吃掉了1.1G左右的内存。关闭浏览器后,发现虚拟机是你设置了多少内存,他就吃你多少内存。(在内存足够的情况下,HAXM会把你设置的内存全部用上给avd)
HAXM下载链接:
https://software.intel.com/en-us/android/articles/intel-hardware-accelerated-execution-manager
介绍
本文将指导您安装英特尔® 硬件加速执行管理器(英特尔® HAXM),这是一款可以使用英特尔® 虚拟化技术(VT)加快 Android* 开发速度的硬件辅助虚拟化引擎(管理程序)。
前提条件
英特尔 HAXM 要求首先安装 Android* SDK (版本为 17 或更高)。 更多信息,请访问 Android* 开发人员网站 ( http://developer.android.com/sdk /)。
系统要求
硬件要求:
- 支持 VT-x、EM64T 和病毒防护 (XD) 功能的英特尔® 处理器
- 至少 1 GB 的可用 RAM
支持的操作系统:
- Microsoft Windows* 8 (32/64 位)
- Microsoft Windows* 7 (32/64 位)
- Microsoft Windows Vista* (32/64 位)
- Microsoft Windows* XP SP2 (仅限 32 位)
重要提示 : 英特尔 HAXM 在具备以下特点的系统上无法使用:不使用英特尔处理器;或者使用的英特尔处理器缺少以上“硬件要求”章节中描述的硬件特性。
如欲确定您的英特尔处理器具备哪些功能,请访问 http://ark.intel.com/zh-cn/
。此外,英特尔 HAXM 必须和英特尔提供的 Android* x86 模拟器映像一同使用。
英特尔 HAXM 不能和 ARM* Android* 模拟器映像或非英特尔 x86 Android* 模拟器映像一起使用。
下载英特尔® HAXM
综述安装英特尔 HAXM 时可以选择通过 Android* SDK 管理器的方式 (推荐),或者通过手动的方式(即手动从英特尔的网站下载安装程序)。
注: 英特尔 HAXM 现在还不能自动检查更新。 如欲获取最新版本,请使用 Android* SDK 管理器 (推荐) 或者从 英特尔® 开发人员专区 Android* 开发人员网站 下载英特尔 HAXM 软件包。
手动下载
- 请转至 http://software.intel.com/en-us/android 。
- 为您的平台选择英特尔 HAXM 安装程序包。
- 解压安装程序并使用适合您平台的安装说明。
通过 Android* SDK 管理器下载
- 启动 Android* SDK 管理器。
- 在 Extras 下,选中紧挨着 "Intel x86 Emulator Accelerator (HAXM)" 的复选框
3. 点击 "Install package…" 按钮。
4. 查看英特尔公司许可协议。 如您接受所述条款,选择“Accept”并点击“Install”。
5. SDK 管理器会将安装程序下载到 SDK 主目录下的 "extras" 目录中。 SDK 管理器可能会提示 "Installed", 但该提示的真实意思是指下载了英特尔 HAXM 可执行文件。 此时仍然需要您从 "extras" 目录中运行安装程序,以保证安装顺利完成。
6. 解压 "extras" 目录中的安装程序,并使用适合您平台的安装说明。
在 Windows* 上安装英特尔® HAXM
警告: 如果您的系统不符合系统要求(包括对诸如英特尔虚拟化技术 (VT) 等英特尔处理器特性的支持),英特尔 HAXM 将无法安装。
- 从 http://software.intel.com/en-us/android 处或者使用 SDK 管理器下载安装程序包。
- 运行安装程序(并在适用的情况下接受 UAC 提示)。
- 如果已经安装了较老版本的英特尔 HAXM,您将会看到一个对话框通知:
点击 "Yes" 升级英特尔 HAXM,或者点击 "No" 离开安装页面,使英特尔 HAXM 保持为当前安装的版本。
- 您会看到一个欢迎屏幕:
注: 您可以通过点击英特尔 HAXM 文档随时访问文档
- 如果已经安装了较老版本的英特尔 HAXM,您将会看到一个对话框通知:
- 点击 "Next"
- 系统会提示您调整分配给英特尔 HAXM 的 RAM 容量:
注: 本安装程序也可用作英特尔 HAXM 的配置工具。 如欲改变内存的设置,请再次运行该安装程序。
- 下一个屏幕将对您的英特尔 HAXM 内存分配设置进行确认:
- 英特尔 HAXM 安装完成之后,请点击“Finish ”离开安装程序。
英特尔 HAXM 现已安装完成,可投入使用。
如欲查明英特尔 HAXM 是否正在运行,请打开一个命令提示符窗口并执行以下命令: sc query intelhaxm
如果英特尔 HAXM 正在运行,该命令将显示一个状态信息,指示状态为: "4 RUNNING"。
如欲停止或启动英特尔 HAXM,请使用以下命令:
停止:
sc stop intelhaxm
开始:
sc start intelhaxm
调整英特尔® HAXM 内存分配
如欲改变分配给英特尔 HAXM 的内存容量,请再次运行安装程序。
移除英特尔 HAXM
警告: 在移除英特尔 HAXM 之前请关闭所有的 Android* x86 模拟器实例。 正在使用中的 HAXM 无法移除。
如欲卸载英特尔 HAXM,请再次运行安装程序或者使用控制面板。
重要提示 : 移除英特尔 HAXM 之后所有的英特尔® x86 Android* 模拟器的加速功能将被禁用。 现有的 Android* 虚拟设备将继续工作,但却无法获得加速。
重新安装英特尔 HAXM 之后将重新启用 Android* 模拟器加速。
故障排除
英特尔 HAXM 要求使用一个由英特尔提供的 Android* x86 系统映像。 这些映像可以通过 Android* SDK 管理器进行下载,或者通过手动的方式从英特尔® 开发人员专区网站下载。
英特尔病毒防护 (XD) 功能错误
在安装英特尔 HAXM 时,您可能会遇到一个有关英特尔 XD 支持的错误。
这种错误信息可能是由以下情况导致的:
- 英特尔 XD 不受计算机处理器的支持。
- 英特尔 XD 未启用。
英特尔 XD 不受支持
英特尔 HAXM 要求使用一个具备病毒防护 (XD) 功能的英特尔处理器,因此不能在缺少这种硬件特性的系统上使用。 如欲确定您的英特尔处理器上具备的功能,请访问 http://ark.intel.com/zh-cn/ 。
英特尔 XD 未启用
在某些情况下,英特尔 XD 的禁用可能发生在系统 BIOS 中, 因此必须在 BIOS 设置程序中启用。 如欲访问 BIOS 设置程序,必须在电脑启动时按住一个设置键。 具体使用哪个设置键取决于使用的 BIOS,通常而言,该设置键会是 F2、Delete 或 Esc 键中的一个。 在 BIOS 设置程序中,英特尔 XD 可能会被标识为 "XD"、"Execute Disable"、"No Execute" 或 "Hardware DEP",这取决于使用的是哪种 BIOS。
除了英特尔 XD 之外,Windows* 主机可能还需要支持 DEP (数据执行保护),有关详细信息请参考这篇 Microsoft* KB 文章: http://support.microsoft.com/kb/875352.
英特尔虚拟化技术 (VT-x) 功能
在安装英特尔 HAXM 时,您可能会遇到一个有关 VT-x 支持的错误。
这种错误信息可能是由以下情况导致的:
- 英特尔 VT-x 不受计算机处理器的支持
- 英特尔 VT-x 未启用
英特尔 VT-x 不受支持
英特尔 HAXM 要求使用一个具备 VT-x 功能的英特尔处理器,因此不能在缺少这种硬件特性的系统上使用。 如欲确定您的英特尔处理器上具备的功能,请访问 http://ark.intel.com/zh-cn/ 。
英特尔 VT-x 未启用
在某些情况下,英特尔 VT-x 的禁用可能发生在系统 BIOS 中,因此必须在 BIOS 设置程序中启用。 如欲访问 BIOS 设置程序,必须在电脑启动时按住一个键。 具体使用哪个设置键取决于使用的 BIOS,通常而言,该设置键会是 F2、Delete 或 Esc 键中的一个。 在 BIOS 设置程序中,英特尔 VT 可能会被标识为 "VT"、"Virtualization Technology" 或 "VT-d"。确保启用所有的虚拟化特性。
有关如何进入 BIOS 设置和启用英特尔 VT 的具体信息,请联系您的硬件制造商。
提示与技巧
以下的一些建议有助于您通过使用英特尔 HAXM 驱动程序从 Android* 模拟器中获得最佳的体验。
- 在 AVD 管理器中为您的映像启用 GPU 加速。 HAXM 驱动程序可以通过处理器中的英特尔虚拟化技术本地执行大多数的 CPU 指令,同时 GPU 加速也会将 OpenGL* 调用卸载至主机 GPU。
- 从命令行启动模拟器以便获得更详细的输出。
- 使用以下命令启动模拟器:
emulator-x86 –avd -partition-size 1024 –gpu on -verbose
- 分区大小为 1024 时允许您安装 1 GB 的应用。 这与 AVD 管理器中的 SD 卡大小不同,该管理器会对模拟器内部专用于媒体文件的存储容量进行指定。 GPU 设置为“on”时会提供更出众的图形性能。
- 使用以下命令启动模拟器:
- 确保 GPU 模拟库的 "Path" 环境变量通过 Control Panel > System > Advanced System Settings > Environment Variables 的方式进行设置,或者每次在启动一个新的命令提示符时通过手动的方式进行设置。 如果您正在使用多个 SDK 安装,我们建议您通过手动的方式进行设置。 下面的 <sdk install location> 通常指的是 "c:\Users\<your username>\android-sdk"
set PATH=%PATH%;\tools\lib
- 在安装英特尔 HAXM 时,请对驱动程序进行设置,确保只使用系统中可用 RAM 的一半容量。 例如,如果您的系统拥有 6 GB 的安装内存,那么请将其中的 3 GB 用于英特尔 HAXM 驱动程序。 这有助于在 HAXM 驱动程序和系统内存之间较好地平衡内存。
- 在创建映像时建议您将“设备 ram 大小”设置为小于 1024MB。
- 有时,在首次启动一个映像时,该映像会显示悬挂在启动屏幕上。 启动过程已经完成,但是主屏幕仍未显示。 点击模拟器上的“home”按钮显示主屏幕。
- 如果在 Windows 8 上发现了性能问题,我们建议您禁用 Hyper-V。
- 如欲了解更多有关启动模拟器的命令行选项,请参考 Android* 开发人员网站 。
更改日志
- 在模拟器中已将 Linux 内核更新至 3.4
- 解决了在 VMware 工作站上从一个 Windows 虚拟机之内运行 HAXM 的性能问题
- 通过创建一个 c:\HaxLogs.log 文件在 windows 中添加了调试支持,以便模拟器可以通过一种正常的方式终止,同时不会造成一个 BSOD
- 稳定性提升