Windows NT 3.51 build 1057.1 (IBM PowerPC Edition)

3.51.1057.1 (IBM PowerPC Edition)
Build of Windows NT 3.51
Release namePowerPC Edition
Power Managed Version Z
OS familyWindows NT
Version number3.51
Build number1057
Build revision1
ArchitecturePowerPC
Compiled on1995-07-30
SKUs
Workstation

IBM developed and released a specialized version of Windows NT 3.51 build 1057.1 dubbed the PowerPC Edition, recompiled specifically for the ThinkPad Power Series line of computers. The OEM release in particular targets the ThinkPad 820 and 850 laptop computers, released to the general public on 24 July 1995.[1]

The build included as part of the available installation media[2] is of a later revision, including suspend and hibernation support, a software MIDI synthesizer, a video CD (MPEG) player, a user interface to show battery life and additional drivers for the supported hardware (including custom volume control applications as part of the Crystal Semiconductor CS4231/CS4232 drivers).

New features and changes[edit | edit source]

Hibernation support[edit | edit source]

This build recompile notably includes in-box support for system hibernation in both the system kernel and the boot loader, a process which involves generating a memory snapshot of the currently-running system state and saving it onto disk for later reuse as snap.bin, and safely powering off the system without risking data loss. This feature, initiated by the NtSetSystemPowerState function in the kernel, is implemented within the snap.dll dynamic-link library. It is exclusive only to Woodfield- and Polo-based PReP systems (and related derivatives, such as the above-mentioned ThinkPad laptop models),[3] due to the relevant library implementing low-level hardware drivers (for block devices and other unknown chipset functionality) used when saving and restoring the hibernation file. System hibernation may be accessed by invoking the Security Options dialog (Ctrl+Alt+Del) and selecting the "Hibernate" option.

Resuming from hibernation is a multi-step process internally referred to as "defrosting", in which the boot loader loads the kernel, hardware abstraction layer and the memory snapshot library (snap.dll) into memory, creates an ARC path to snap.bin and obtains the entry point to snap.dll. A context structure is then set up by the boot loader and directly calls the snapshot library's entry point (while passing said structure), followed by another call to function snap!SnapDefrostSystem (if the function pointer in the context structure is filled by snap.dll), which eventually restores the memory snapshot. The memory snapshot library includes filesystem support for all disk partitioning schemes supported by ntldr, including the Cairo Object File System (OFS).

Upgrading to a newer Service Pack (such as Service Pack 5) would break hibernation support as the respective kernel system call used to handle power state management in non-OEM releases of Windows NT 3.51 is only present as an unimplemented stub that returns NT status code STATUS_NOT_IMPLEMENTED.

A similar implementation of hibernation support would not be truly introduced in widespread Windows NT releases until Windows 2000.

Miscellaneous[edit | edit source]

Branding resources[edit | edit source]

Unique branding for the PowerPC Edition has been added specifically for this release. The operating system in this build refers to itself as the PowerPC Edition in the 256-color default background image, and also further refers to itself as Power Managed Version Z in the kernel, displayed by the Version Reporter Applet and during the boot process. This is done by the same method used in Windows NT 3.5 builds 612, 683, 756 and 782 (referred to as "Beta", "Beta 2", and the latter two both as "Release Candidate" respectively), and is the only known Windows NT 3.51 build, and the last known Windows NT build chronologically, to use the kernel functionality for naming a build in this way - all future builds use the Service Pack version method including Service Pack number, revision letter, and RC major and minor version, of which each component is optional, probably because of localisation issues involved with a string hardcoded into the kernel.

References[edit | edit source]

  1. Necasek, Michal. IBM ThinkPad Power Series 850, OS/2 Museum. 14 October 2013.
  2. https://archive.org/details/NT351PMZPPC
  3. Necasek, Michal. IBM Power Series Exotica, OS/2 Museum. 23 May 2014.