Windows is a graphical interface, and Windows programs can make full use of graphics and formatted text on both the video display and the printer. A graphical interface is not only more attractive in appearance, but it can also impart a high level of information to the user, as you can see in Figure 1-4.
Programs written for Windows do not directly access the hardware of graphics display devices such as the screen and printer. Instead, Windows includes a graphics programming language (called the Graphics Device Interface, or GDI) that allows the easy display of graphics and formatted text. Windows virtualizes display hardware. A program written for Windows will run with any video board or any printer for which a Windows device driver is available. The program does not need to determine what type of device is attached to the system.
Putting a device-independent graphics interface on the IBM PC was not an easy job for the developers of Windows. The PC design was based on the principle of open architecture. Third-party hardware manufacturers were encouraged to develop peripherals for the PC and have done so in great number. Although several standards have emerged, conventional MS-DOS programs for the PC must individually support many different hardware configurations. For example, it is fairly common for an MS-DOS word-processing program to be sold with one or two disks of small files, each one supporting a particular printer.
Windows programs do not require these drivers because the support is part of Windows. This benefits users because most Windows programs require very little in the way of installation. Everything a program needs can be included in the program's single .EXE file. The user can often copy the .EXE file to the fixed disk, load Windows, and go.