Building a Simics-Compatible Windows Kernel Development VM
We will use VirtualBox to create a Windows Kernel Development Virtual machine before converting the VirtualBox Virtual Disk Image (VDI) to the CRAFF format used by Simics.
There are several advantages to creating the image this way:
- Speed: VirtualBox runs faster than Simics and is easier to work with interactively
- Compatibility: The image can be used for other purposes
- Iteration: Speed and compatibility allow iterating on the image contents more quickly
- Install VirtualBox
- Download Windows
- Create a VM
- Install Windows
- Set Up SSH
- Enable SSH Port Forwarding in VirtualBox
- Change Default Shell to PowerShell
- Installing the EWDK
- Installing Development Tools
- Install Simics Agent
- Clone and Build HEVD
- Install the Code Signing Certificate
- Install HEVD Driver
- Create a Fuzz Harness
- Compile the Fuzz Harness
- Convert the Image to CRAFF