Windows Research Kernel

5.2.3800.1807.WRKP1.2(daveprobert)
Build of Windows Server 2003
Screenshot
OS familyWindows NT
Version number5.2
Build number3800
Build revision1807
Architecturex86, x64
Build labWRKP1.2(daveprobert)
Compiled on2006-06-22
About dialog
Srv03-WRK-3800-Winver.png

The Windows Research Kernel (WRK, Microsoft Windows Academic Operating System) is a portion of the source code of Windows Server 2003 Service Pack 1 kernel, which was released publicly in 2009. It was used primarily in universities, academies and scientific centers for investigating and researching the Windows NT kernel structure and working principles.

Description[edit | edit source]

The source code contains almost the full realization of the Service Pack 1 kernel, with partially missing pieces (which can be recovered using the Windows Server 2003 RTM kernel). Additionally, it includes the following:

  • Hardware Abstraction Layers (HAL) for ACPI compatible EISA/ISA (halacpi.dll), ACPI 1.0 - APIC platform (halmacpi.dll) and MPS 1.4 (halmps.dll) DLL files, along with their PDB debugging files,
  • Library files for the HAL, the VGA boot driver (bootvid.dll) and SDBAPINT,
  • A pre-compiled resource file for ntoskrnl.exe (ntoskrnl.res),
  • WRK-specific libraries: ntoswrk.lib and ntosarch.lib,
  • Documentation for WRK compilation and Windows Kernel internals,
  • Bat script to copy WRK at specific destination.

The resulting image has a build number of 3800.1807, while the included HAL images contain the likely canonical build number - 3790.1807. It also bears a specific build labWRKP1.2(daveprobert), assuming that the WRK is published by Microsoft employee Dave Probert, who was working at Microsoft’s NT kernel subdivision as of compilation.

Running[edit | edit source]

To run the kernel, a Windows XP Professional x64 Edition or Server 2003 machine is needed, because of boot loader incremental changes appeared in Service Pack 1.

To boot the target system with WRK, you must copy the compiled kernel file (wrkx86.exe for x86, or wrkamd64.exe for AMD64). If you are using an x86 system, you will also need to copy halacpim.dll or other HAL included in WRK (such as halmacpi.dll and halmps.dll) into C:\Windows\System32. Next, a new boot record in boot.ini should be created:

multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="WRK" /kernel=wrkx86.exe /hal=halacpim.dll

After adding, restart virtual machine and choose WRK boot entry.