Windows did not get off to a fast start. In fact, it was not generally accepted until the release of version 3.0. The first version, 1.0, was released in 1985, followed by version 2.0 in 1987. Version 1.0 provided a graphical interface and little else. Version 2.0 was used predominantly by the engineering, design, and graphics/desktop publishing communities. It wasn't until the release of version 3.0 in the early 1990s that this operating environment became popular. This jump in popularity can be attributed to an increasing software base with applications that overwhelmed the features in the MS-DOS environment-faster graphics cards, and improved memory management. The best-known and most-used 16-bit version of Windows is 3.11, released in the spring of 1992.
All applications written to Windows standards provide a common user interface:
- The menu system offers the same basic commands.
- Selecting text or objects is done in a similar manner.
- Clicking and dragging mouse functions are the same.
This commonality shortens the user's learning curve for unfamiliar applications. On a programming level, application developers have access to a toolbox of Windows routines, so they do not have to reinvent the wheel every time they want to invoke a menu or dialog box.
Windows uses a sophisticated memory-management system that makes better use of memory and allows the user to run multiple applications concurrently. This form of multitasking allows the user to have more than one application open and switch between them, even cutting and pasting data from one open window to another. One of the restrictions of DOS is that it was designed to run on an 8086 machine, with a conventional memory limit of 640 KB of RAM. Windows overcomes this restriction by implementing new modes of memory utilization.
With the release of the 80286 processors, the CPU was able to address more than 1 MB of RAM, thus breaking the DOS barrier. This was good, but the market was still dominated by MS-DOS-based programs that worked within this limit. The release of Windows solved this problem by allowing it to operate in several modes-thus accommodating both the old and new worlds-and fostering a whole new market for memory managers to help overcome the hurdles in configuring them.
The original intention of Microsoft Windows was to provide an MS-DOS-based GUI. The first versions did not include memory-management functions and did not multitask. They were designed only for starting programs and managing files while operating within the MS-DOS limit of 1 MB of RAM. Later versions, however, moved outside the 1-MB limit but continued to support this MS-DOS mode until version 3.1 appeared. This MS-DOS mode is called real mode and is now virtually obsolete. However, some older MS-DOS applications and hardware still require the use of real mode. Support of real-mode applications and hardware is part of downward compatibility. Even in the Windows 95 environment, you will encounter terms such as "real-mode driver," which refers to operating at this level.
If any real-mode drivers are loaded in Windows 95, the system will be forced into the same mode: compatibility mode. This will slow down the machine and limit memory utilization. In general, you should stay in 32-bit mode.
Windows 2.0 broke out of the MS-DOS 1-MB barrier by making use of 286-level protected mode of operation. Protected-mode Windows could address up to 16 MB of RAM. Although MS-DOS programs could run only in the first megabyte of memory, specialized programs were written that would run in (and only in) the extended memory controlled by Windows. The term "protected mode" refers to using protected memory. (Standard mode is run with the processor in protected mode.) Along with Windows protected mode came the now-famous "GPF" (General Protection Fault). Encountering this error generally means that some portion of the Windows protected mode has been violated (for example, the program is trying to write data outside the portion of memory allocated to it).
Microsoft expanded the concept behind Windows by adding support for standardized graphics, fonts, I/O devices, and memory mapping; together these are known as resources. Windows is a resource manager. In the MS-DOS environment, applications developers handled these tasks themselves. Because Windows has these resources built in, it is an easy environment for writing programs. By breaking the MS-DOS barrier (engaging 286 protected mode), Windows running in standard mode takes control of many the hardware functions. This means that programs do not have to write the code directly to control devices, only to ask Windows to use them.
MS-DOS programs can run only in real mode. Running 286 protected mode worked well for the special programs, but once in protected mode, it was not possible to return to real mode without resetting the CPU (only the CPU-not the computer). The MS-DOS program would unload when you switched back to Windows. These versions (1.0 and 2.0) of Windows could run only one MS-DOS program at a time.
Windows Runtime Version
Certain applications (like Aldus PageMaker) could be purchased with a "runtime" version of Windows. This allowed a program that required a Windows environment to run on computers that did not have the full version of Windows installed.