
Windows on Windows
~ the goodbye ~
Windows NT was a clean break. New kernel, new memory model, none of the DOS underneath that Windows 3.1 had been sitting on, and therefore no natural way to run any of the software people already owned. Microsoft solved that with a layer named Windows on Windows, shipped with NT 3.1 on 27 July 1993, sitting on top of the virtual DOS machine and pretending convincingly enough to be Windows 3.x that 16-bit programs kept working.
The mechanics were plainer than the name suggests. WOWEXEC.EXE ran as a process, WIN.COM inside the DOS machine impersonated a Windows 3.x kernel, and the layer translated 16-bit calls into their 32-bit equivalents, patching up pointer sizes and memory models along the way. By default every 16-bit program you started shared one virtual machine, so one badly written application could take down all the others, which is why the properties dialog carried a checkbox to run a program in its own memory space.
The stated reason for building it was a transition period. Software vendors needed time to move from Windows 3.1 to Windows 95 and beyond, and customers should not have to wait for the slowest vendor before upgrading the operating system. That transition period lasted until 2025.
~ the chronicle ~
| Born | 27 july 1993, with windows nt 3.1 |
|---|---|
| Peak | present in every 32-bit windows from nt 3.1 through windows 10 |
| Killed | 14 october 2025 |
| Lifespan | thirty-two years |
| Made by | microsoft |
| Killed by | the move to 64-bit, finished off by the end of windows 10 support |
~ what it actually carried ~
By the time anyone reading this had a Windows machine, almost nothing they used was a 16-bit application. The layer stayed load-bearing anyway, for a reason nobody planned: installers. Plenty of 32-bit software from the 1990s shipped with a 16-bit setup program in front of it, so the application was fine and the thing you had to run first was not. Industrial software was worse. Machine-tool controllers and lab instruments went out the door with 16-bit front ends and no upgrade path, and those systems still needed to boot in 2015.
So the subsystem spent its last two decades as a stubborn adapter, holding up a scattering of small mandatory programs that nobody had the source code for anymore.
~ the 64-bit wall ~
The x86-64 architecture is where it stopped. A 64-bit processor running in long mode cannot enter the virtual-8086 mode that 16-bit code depends on, so a 64-bit Windows simply has no place to put the subsystem. Server editions went 64-bit only with Windows Server 2008 R2, Windows 11 arrived in 2021 with no 32-bit edition at all, and after that 16-bit software needed an emulator like DOSBox or a virtual machine running an older Windows.
That is the transition I actually remember, as an engineer rather than as history. Moving to a 64-bit machine sometime around Windows 7, the programs that stopped working were not the ones I would have guessed. A small utility from the 1990s would run fine once installed, and the setup.exe in front of it would refuse to start at all, because the installer was older than the program it installed. The fix was always to install it on an older 32-bit machine and copy the folder across, which is the least dignified thing you can do with a modern operating system.
~ the last supported day ~
Windows 10 was the end of the line. Microsoft stopped offering 32-bit Windows 10 to new PC builders in 2020, and the 32-bit editions already installed kept the subsystem alive until Windows 10 itself went out of support on 14 October 2025. That is the date to put on the headstone, even though nothing was removed that day and no code was deleted. The layer just stopped being something a supported Windows would run.
Two footnotes survive it. The long-term servicing builds of Windows 10 are supported for years beyond the consumer cutoff, and some of those are 32-bit, so a shop floor somewhere is still thunking. And the name lives on attached to something else entirely: WoW64, which does for 32-bit programs on 64-bit Windows exactly what WOW did for 16-bit programs on 32-bit Windows, and which is very much alive.
~ leave a rose ~
an anonymous tribute. one rose per visitor per day.
@}-->-- ... roses left here
~ leave a wreath ~
a rose fades by morning. a wreath stays on this grave for good, with your name on it.
from $1, paid once through stripe. it keeps the graveyard running: the hosting and the nightly digging. adopt it and the headstone reads "maintained in memory by" you. the groundskeeper plants new wreaths at the next tending, usually within a day.
» one email a week: new graves and the anniversaries of the dead. subscribe
other utilities: Wayfinder, ZipList, iMacros, Microsoft Office Compatibility Pack
also died in the 2020s: Ziilch, Kristal-Astro, Microsoft Math Solver
~ leave a note ~
visitors before you have left these graveside notes. anonymous welcome.