I would like to experiment with some kernel mode programming. What simulation environments could you recommend that would make testing the code:
- Possible
- Easy
For example such an environment would allow me to use CPU instructions permitted only in kernel mode, or CPU instructions available only in some processors (for example Intel AVX instructions)
Preferably a free tool 🙂
For kernel hacking, any virtual machine environment that lets you run your favoured operating system in a guest machine should work, e.g. VirtualBox, qemu/kvm, VMWare, Parallels, etc.
For AVX and other new instruction set extensions, Intel provides an emulator:
http://software.intel.com/en-us/articles/intel-software-development-emulator/
Qemu also can emulate instruction sets not supported by the host CPU, but I’m not sure if AVX is among them.