A method and apparatus to execute a pre-boot application within an
emulated pre-boot environment to test functionality of the pre-boot
application. The emulated pre-boot environment is executed within a user
mode of an operating system ("OS") during an OS runtime of the processing
system. The pre-boot application interacts with a hardware device of the
processing system via a kernel proxy agent. The kernel proxy agent
executes in a kernel mode of the OS.