top | item 45508936

(no title)

dblohm7 | 4 months ago

Windows 95's USER and GDI implementation was essentially an enhanced version of Win 3.1's. user32.dll and gdi32.dll were just thunking layers. The 16-bit components were guarded by a mutex named "Win16Mutex" to ensure serialized access to them from the 32-bit side.

discuss

order

dcrazy|4 months ago

Reminds me of how even well into the PowerPC era, much of Mac OS was still written in 68000 assembler, including QuickDraw (the equivalent of GDI).

cyberax|4 months ago

This mutex also protected a lot of other stuff. For example, if you wanted to access a DirectDraw surface, you needed to lock it in RAM, and this acquired the Win16 mutex. So if you then called a GDI function to draw something, it deadlocked the machine.