Boot ROM workaround for W2K3 boot disk driver development

I’m working on some unified fabric I/O drivers. The drivers need to work as
a boot storage device, and it may be a while before we have actual BIOS
extension code in ROM for our fabric device. I’d like some way to
essentially fake the BIOS phase of the boot, so we can develop and debug our
Windows drivers without waiting for the BIOS folks. I know we can develop
the drivers to start later, and then when we have boot ROM code, figure out
what’s broken. I’d prefer we get as close to the real execution environment
asap.

It seems possible I could boot from a flash USB device (or maybe CD-ROM)
that had setupldr, the boot drivers, and appropriate config info. My fabric
drivers will not be able to act as a ntbootdd.sys driver for ntldr as it
takes more than just one miniport to access the boot disk. System boards
frequently have support for USB flash boot, although W2K3 doesn’t support
booting the OS from USB devices.

Ideally I’d like a way to put boot.ini, ntldr, the system registry hive
file, OS kernel, and all the boot load drivers on the USB device, let ntldr
load all the appropriate stuff via int 13 calls, and then pass control to
the kernel, where the pre-boot loaded drivers all fit together to access the
real boot disk. A USB flash device is attractive from a development
viewpoint, as I can just pop it out of the target system, load new versions
of the drivers from a development system, and pop it back into the target
system.

Any ideas?

  • Jan

No need in ntbootdd driver if your BIOS provides the int 13h interface for
the disk.

frequently have support for USB flash boot, although W2K3 doesn’t support
booting the OS from USB devices.

Really? XP SP2 can be booted off the USB-connected CD. This is how subnotebooks
are installed.

Maxim Shatskih, Windows DDK MVP
StorageCraft Corporation
xxxxx@storagecraft.com
http://www.storagecraft.com

> > frequently have support for USB flash boot, although W2K3 doesn’t

support
> booting the OS from USB devices.

Really? XP SP2 can be booted off the USB-connected CD. This is how
subnotebooks
are installed.

None of the USB drivers are boot start drivers, so believe you can’t boot
the real OS from any USB device. According to MSFT docs, you can boot from
1394, but can’t write crash dumps.

  • Jan

> > Really? XP SP2 can be booted off the USB-connected CD. This is how

> subnotebooks
> are installed.

None of the USB drivers are boot start drivers, so believe you can’t boot
the real OS from any USB device.

At least the Windows Setup CD can be booted off USB-attached drive. Maybe 1394
is also suitable, but I don’t think that the laptop’s BIOS supports such a boot
device.

Maxim Shatskih, Windows DDK MVP
StorageCraft Corporation
xxxxx@storagecraft.com
http://www.storagecraft.com