To be a fully functional 32-bit operating system, the base API set present in Windows 3.0 needs several extensions. The motivation for the extensions is very precise. Extensions are required to:
 Support multiple threads of execution within a process with each process executing in a separate address space
Support multiple threads of execution within a process with each process executing in a separate address space
 Support a flat 32-bit address space
Support a flat 32-bit address space
 Expose security on all objects that can be shared between processes
Expose security on all objects that can be shared between processes
 Promote a portable 32-bit API interface
Promote a portable 32-bit API interface
Note that the focus of the Win32 effort is to extend the current Windows 3.0 technology to allow easy migration from of Windows 3.0 apps to Win32 on x86 and MIPS platforms.