A typical Windows 3.11 workspace
The Windows 3.x family of Microsoft Windows operating systems were released from 1990 to 1994. The 3.0 release was the first widely successful version of Windows (see history of Microsoft Windows), enabling Microsoft to compete with Apple Computer's Macintosh and the Commodore Amiga on the GUI front.
Windows 3.0 was released on May 22, 1990 and included a significantly revamped user interface as well as technical improvements to make better use of the memory management capabilities of Intel's 80286 and 80386 processors. Text-mode programs written for MS-DOS could be run within a window (a feature previously available in a more limited form with Windows/386 2.1), making the system usable as a crude multitasking base for legacy programs, though this was of limited use for the home market, where most games and entertainment programs continued to require raw DOS access.
The MS-DOS Executive file manager/program launcher was replaced with an icon-based Program Manager and a list-based File Manager (called Winfile), thereby simplifying the launching of applications. The MS-DOS Executive was still included as an alternative user interface program. The Control Panel, previously available as a standard-looking applet has been re-modeled after the one in Mac OS. It centralized system settings, including limited control over the color scheme of the interface. A number of simple applications were included, such as the text editor Notepad and the word processor Write (both inherited from earlier versions of Windows), a macro recorder (new; later dropped), and a calculator (also inherited). The earlier Reversi game was complemented with a nice-looking card puzzle named Solitaire. Windows 3.0 was the last version of Windows that had the ability to run in real mode, and was the last version to have 100% compatibility with older Windows applications.
The Multimedia Extension
The Multimedia Extension was released in fall 1991 to Original Equipment Manufacturers (OEMs) and added basic multimedia support for audio input and output and a CD audio player application to Windows 3.0. The extension was only available on Multimedia PCs (MPCs) distributed by their OEMs. Windows 3.1 would later incorporate many of its features.
Windows 3.1 and later
Windows 3.11 startup logo
Windows 3.1 (originally codenamed Janus), released on March 18, 1992, includes a TrueType font system (and a set of highly legible fonts already installed) which effectively made Windows a serious desktop publishing platform for the first time. Similar functionality was available for Windows 3.0 through the Adobe Type Manager (ATM) font system from Adobe.
Windows 3.1 was designed to have a certain degree of backwards compatibility with older Windows platforms, although forward compatibility verges on non-existent. 3.1 and 3.11 would not support many new file formats, such as the GIF and JPEG image formats, relying instead wholly on bitmap images. As with Windows 3.0, it had File Manager and Program Manager. Windows 3.1 was also the last Windows OS not to use the right click or to have a ready 'copy and paste' method. To copy something to a disk (some machines came with B drives, also a Windows last), the user had to insert the disk and copy something into it with the File Manager.
A special version named Windows 3.1 for Central and Eastern Europe was released that allowed the use of Cyrillic and had fonts with diacritical marks, characteristic for the Central and Eastern European languages.
TCP/IP networking under Windows 3.x relied on third-party packages, such as Trumpet Winsock. Upgrading to Windows for Workgroups (originally codenamed Kato and Snowball), an extended version of Windows 3.11 which included SMB file sharing support, was another solution. Limited compatibility with the new 32-bit Win32 API used by Windows NT was provided by an add-on package, Win32s.
Windows 3.2 was a Chinese-language release only.
Windows 3.x was eventually and totally superseded by Windows 95, Windows 98, and later versions which integrated the MS-DOS and Windows components into a single product.
Full OS or MS-DOS shell?
Pre-NT Windows systems, not only 3.x and earlier but also 95, 98 and ME, have a complex, original, hybrid and not officially documented internal structure. As a consequence, it can be difficult to decide whether they are operating systems or MS-DOS extension shells. Many users consider them to be operating systems, because they simply behave like ones, while some other people, often primarily using other environments, refuse this label, on grounds sometimes more religious than technical.
Indeed, Windows 3.x requires pre-installation of MS-DOS, which must be booted into on PC startup. Windows is started as an application program, and can be terminated at any time, giving back the MS-DOS prompt. MS-DOS also provides device drivers for certain tasks like CD-ROM or Network access. On the other side, Windows requires specifically written applications, having a specific on-disk file format, which is much more complicated than the format of MS-DOS executables. It has many of its own device drivers and for the most part its own memory management system.
The first part of the answer lies in the fact that MS-DOS does not isolate applications from the hardware and does not protect itself from applications. The memory-resident part of MS-DOS, as opposed to utilities on disk, is little more than a library of routines for dealing with disk-type peripherals and loading applications from them. Therefore, an MS-DOS program is free to do whatever it desires, notably replacing or bypassing part or all of MS-DOS code, temporarily or permanently. Windows essentially took advantage of this ability, though the degree to which modifications were made varies by version. Windows for Workgroups 3.11 and the so-called 32-bit File Access replaced the native MS-DOS code for accessing files. This practice far predates Windows. DOS programs have few limits regarding their ability to make modifications.
The second part of the answer lies in the specific architecture of the Intel 80286 and 80386 family of microprocessors. They have several modes of operation: Real mode, 16-bit and 32-bit protected modes and the VM86 mode. By using more or less documented machine instructions, it is possible to switch between modes at any time. Switching modes does not destroy memory content, so in effect it is possible to keep different types of code in memory in parallel. It is also possible for code of a certain type to invoke code of a different type. So, starting with Windows/386 2.1, the Windows kernel ran in protected mode, but was still able to invoke real-mode MS-DOS code for specific tasks, to a large extent in the same way as one can invoke a network server. Windows also leveraged certain undocumented multitasking features present in MS-DOS, allowing several programs to access MS-DOS functionality at one time. Therefore, Windows did not really run on MS-DOS but rather used it.
The third part of the answer is again related to the features of the Intel processors. An MS-DOS program running in the Windows environment and performing system calls or traps does not necessarily enter MS-DOS immediately, as it would outside of Windows. Windows is able to catch these calls and execute anything else instead. For example, an MS-DOS program running on Windows for Workgroups 3.11 will automatically use the 32-bit File Access rather than the MS-DOS file and disk access routines, which are hence completely bypassed. Similarly, a specially written MS-DOS program running on Windows 95 can access long file names.
It is therefore conclusive to say that Windows adapted MS-DOS to suit its needs. Some would argue that an architecture of continued changes to an ineffective system contributed to the renowned instability of the consumer line of Microsoft Windows.
The MS-DOS argument applied, although to a lesser extent, to Windows 95, Windows 98, and Windows Me which still used the same principle and mixed 16-bit with 32-bit code. With each succesive version, however, the presence of DOS became less apparent.
Windows NT, Windows 2000, and their derivatives represent operating systems completely separate from MS-DOS and entirely composed of 32-bit code.