Windows XP secretly faked its version and memory manager for broken apps
Microsoft engineer Raymond Chen revealed that Windows XP shipped a hidden Application Compatibility Database (Sysmain.sdb in C:\WINDOWS\AppPatch) with roughly 200 compatibility fixes. When a problematic app launched, Windows could lie about the OS version via shims like Win98VersionLie or hand it an exact copy of the Windows 95 heap manager via EmulateHeap.
- The Sysmain.sdb database lived in C:\WINDOWS\AppPatch in a binary format for fast scanning
- XP launched with about 200 compatibility fixes; by 2011 the file had grown to 1.2 MB
- Apps were matched by file size, checksum, version and date, not just the .exe name
- Shims only work inside the app's own process and cannot fix kernel-mode drivers
Read next
Software