| license = [[Proprietary software|Proprietary]] [[commercial software]]
}}
In [[computing]], '''Windows on Windows''' (commonly referred to as '''WOW''',<ref>{{cite web|url=http://support.microsoft.com/kb/181333|title=WOW Environment Remains in Memory After Quitting 16-Bit Program|website=Support|publisher=[[Microsoft]]|accessdateaccess-date=February 7, 2017|date=February 22, 2007|url-status=dead|archiveurlarchive-url=https://web.archive.org/web/20071023060218/http://support.microsoft.com/kb/181333|archivedatearchive-date=October 23, 2007}}</ref><ref>{{cite web|url=http://support.microsoft.com/kb/153544|title=Starting 16-Bit WOW Subsystem on Windows NT Server|date=November 1, 2016|accessdateaccess-date=February 7, 2017|website=Support|publisher=[[Microsoft]]|url-status=dead|archiveurlarchive-url=https://web.archive.org/web/20070509051612/http://support.microsoft.com/kb/153544|archivedatearchive-date=May 9, 2007}}</ref><ref>{{cite web|url=https://support.microsoft.com/kb/220159|title=Disabling the MSDOS and WOWEXEC Subsystems on Terminal Server|date=November 1, 2006|website=Support|publisher=[[Microsoft]]|accessdateaccess-date=February 7, 2017|url-status=live|archiveurlarchive-url=https://web.archive.org/web/20080113000651/http://support.microsoft.com/kb/220159|archivedatearchive-date=January 13, 2008}}</ref>) is a [[compatibility layer]] of [[32-bit]] versions of the Microsoft [[Windows NT]] family of [[operating system]]s that extends [[Virtual DOS machine#Windows NTVDM|NTVDM]] to provide limited support for running [[legacy code|legacy]] [[16-bit]] programs written for [[Windows 3.x]] or earlier. There is a similar subsystem, known as [[WoW64]], on 64-bit Windows versions that runs 32-bit programs.
==Background==
This subsystem is available in 32-bit editions of Windows NT only. The 64-bit editions (including [[Windows Server 2008 R2]] and later which only have 64-bit editions) cannot run 16-bit software without third-party emulation software (e.g. [[DOSBox]]).
The WOWEXEC.EXE process on a [[Windows NT]] system facilitates Windows-on-Windows.<ref>{{cite web|url=http://support.microsoft.com/kb/105992|title=Windows NT Subsystems and Associated Files|date=October 31, 2006|accessdateaccess-date=February 7, 2017|website=Support|publisher=[[Microsoft]]|url-status=dead|archiveurlarchive-url=https://web.archive.org/web/20070316022744/http://support.microsoft.com/kb/105992|archivedatearchive-date=March 16, 2007}}</ref><ref>{{cite web|url=http://support.microsoft.com/kb/199671|title=PRB: Relocation of Ntvdm.exe Fails on Multiprocessor Computers|website=Support|publisher=[[Microsoft]]|accessdateaccess-date=February 7, 2017|date=November 21, 2006|url-status=dead|archiveurlarchive-url=https://web.archive.org/web/20090222173939/http://support.microsoft.com/kb/199671|archivedatearchive-date=February 22, 2009}}</ref> In addition to Windows-on-Windows emulating the [[Windows 95]] and [[Windows 98]] kernels, the WIN.COM file emulates a [[Windows 3.x]] kernel for [[Virtual DOS machine#Windows NTVDM|NTVDM]], which runs the 16-bit DOS-based Windows applications on Windows NT.
===Shimming===
Furthermore, legacy applications that attempt to access hardware directly cannot do so in [[Protection ring|user mode]]. Legacy applications may also fail if system configuration files from the DOS and Windows 9x era are not present in Windows NT based kernels, hence the reason for zero-length versions of files like [[AUTOEXEC.BAT]] and [[CONFIG.SYS]] having to be carried forward on operating systems that do not use them.
A considerable number of shims are present in the [[compatibility layer|application compatibility layer]] of later versions of Windows to intercept and modify [[Application programming interface|API]] calls made by legacy applications that were written with a different set of assumptions and operating system best practices in mind.<ref>{{cite web|website=TechNet|publisher=[[Microsoft]]|url=https://technet.microsoft.com/en-us/library/ee461265(v=ws.10).aspx|title=Application Compatibility|accessdateaccess-date=February 7, 2017}}</ref> These fixes are updated from time-to-time as issues are discovered in popular legacy applications that are still in use.<ref>{{cite web|url=http://support.microsoft.com/kb/2272691|title=Application Compatibility Update for Windows 7 and Windows Server 2008 R2: August 2010|website=Support|publisher=[[Microsoft]]|accessdateaccess-date=February 7, 2017|date=August 24, 2010}}</ref>
==See also==
|