The history of Windows NT 3.1

Cutler and his team had nearly zero experience with either OS/2 or with PCs. They did, however, have ample experience with both portable code and with varied hardware platforms. Similar to his experience at DEC, Cutler was very quickly placed as the lead of the NT project. NT needed to have some compatibility with MS-DOS, OS/2, and UNIX (all systems Microsoft supported, sold, and developed at some level at the time [except for UNIX where SCO held Xenix and MS owned a decent portion of SCO]). As a result, NT was a fully 32 bit microkernel operating system with paged virtual memory and the win32 API operating in protected mode with fully pre-emptive multitasking. It also had the NTVDM for MS-DOS compatibility, the win16 WOW system for older Windows compatibility, an OS/2 compatibility subsystem, and a POSIX subsystem for UNIX compatibility. For Cutler and his team, “WNT” was the working name for the OS (increment each letter by one from VMS). The similarities between VMS and NT are striking. The VMS Interrupt Priority Level became the Interrupt Request Level in NT, the Asynchronous System Trap became the Asynchronous Procedure Call, a Fork Procedure became the Deferred Procedure Call, while some other terminology was copied verbatim. NT and VMS share similarities in many ways, but unlike VMS, NT processes can contain more than one thread of execution, NT uses access control lists for object security, NT uses its own NTFS, and NT uses the registry (a centralized hierarchical configuration database) allowing the configuration of computers over a network, among many other major differences.

Dave Cutler has had such a massive impact on the world of computing, yet relatively few people know his name or are aware of his accomplishments. He still works at Microsoft today, and has worked on both Azure and Xbox One’s hypervisor.

3 Comments

  1. 2023-09-03 7:32 am
    • 2023-09-03 10:40 am