N3mes1s / haxm

Intel® Hardware Accelerated Execution Manager (Intel® HAXM)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Intel Hardware Accelerated Execution Manager (HAXM)

HAXM is a hardware-assisted virtualization engine (hypervisor) that uses Intel Virtualization Technology to speed up IA (x86/ x86_64) emulation on a host machine running Windows or macOS. It started as an Android SDK component, but has recently transformed itself into a general accelerator for QEMU.

HAXM can be built as either a kernel-mode driver for Windows or a kernel extension for macOS.

Building for Windows

Prerequisites:

Build steps:

  1. cd X:\path\to\EWDK\
  2. LaunchBuildEnv.cmd
    • Or, if Visual Studio 2015 is installed, launch Developer Command Prompt for VS2015 from Start > All apps > Visual Studio 2015 instead.
  3. cd X:\path\to\haxm\
  4. msbuild HaxmDriver.sln /p:Configuration="Win7 Debug" /p:Platform="x64"
    • The Win7 configuration ensures the driver is compatible with Windows 7 and later.
    • The Debug configuration also signs the driver with a test certificate. The Release configuration does not do that.
    • Use Win32 instead of x64 to build a 32-bit driver that works on 32-bit Windows.
    • Add /t:rebuild for a clean rebuild instead of an incremental build.

If successful, the driver binary (IntelHaxm.sys) will be generated in X:\path\to\haxm\obj\out\win7\x64\ (or X:\path\to\haxm\obj\out\win7\x86\ if Platform="Win32").

Building for macOS

Prerequisites:

  • Xcode 7.2.1 or later
  • OS X 10.9 SDK (archived here)

Build steps:

  1. cd /path/to/haxm/
  2. cd darwin/hax_driver/com_intel_hax/
  3. xcodebuild -config Release
    • Use -sdk to override the default macOS SDK version (10.9), e.g. -sdk macosx10.12.

If successful, the kext (intelhaxm.kext/) will be generated in /path/to/haxm/darwin/hax_driver/com_intel_hax/build/Release/.

Reporting an Issue

You are welcome to file a GitHub issue if you discover a general HAXM bug or have a feature request.

However, please do not use the GitHub issue tracker to report security vulnerabilities. If you have information about a security issue or vulnerability with HAXM, please send an email to secure@intel.com, and use the PGP key located at https://www.intel.com/security to encrpyt any sensitive information.

About

Intel® Hardware Accelerated Execution Manager (Intel® HAXM)


Languages

Language:C 86.3%Language:C++ 9.9%Language:Assembly 3.5%Language:Objective-C 0.3%Language:Makefile 0.0%