It’s May 1990, and I’ve just spent the day installing Windows 3.0 from a stack of floppy disks. For those of us who suffered through the CGA-clunkiness of Windows 1.0 or the tiled-window limitations of 2.0, this feels like a revelation. It’s actually usable.
The biggest shift isn't just the icons or the Program Manager (though that’s a huge improvement over the MS-DOS Executive). It’s the way it handles memory. If you have an Intel 80386 processor, Windows can now run in "Enhanced Mode."
Real Multitasking (Sort of)
For the first time on a PC, we have something resembling reliable multitasking. By leveraging the Virtual 8086 mode of the 386, Windows can run multiple DOS applications in their own virtual machines. No more exiting your word processor just to check a spreadsheet.
The memory management is the real star. We are finally breaking the 640KB barrier without resorting to the black magic of EMS or XMS drivers that conflict with everything.
; In the old days, we spent hours tweaking CONFIG.SYS
DEVICE=C:\DOS\HIMEM.SYS
DEVICE=C:\DOS\EMM386.EXE NOEMS
DOS=HIGH,UMB
In Windows 3.0, the system takes over much of this headache. It can use the hard drive as virtual memory, allowing us to run more programs than we have physical RAM.
The Developer's Perspective
Developing for Windows is still a Herculean task. The API is massive, and you still have to deal with the cooperative multitasking model. If your app doesn't yield control back to the system, everything freezes.
// Every Windows program still centers around the message loop
while (GetMessage(&msg, NULL, 0, 0)) {
TranslateMessage(&msg);
DispatchMessage(&msg);
}
But the rewards are becoming worth it. The user base is exploding. With VGA support, 16 colors (or even 256!), and a consistent interface, the PC is finally starting to feel like a modern workstation.
Looking Ahead
Is Windows 3.0 perfect? Far from it. The "General Protection Fault" is still our constant companion. But for the first time, I can see a path where the GUI becomes the primary way people use computers. DOS isn't dead yet, but the writing is on the (graphical) wall.