After this lesson, you will be able to:
Estimated lesson time: 20 minutes
- Define an operating system.
- Describe the difference between MS-DOS, Windows, and Windows NT.
An operating system is a special software program that is loaded into a computer at startup and is responsible for running the computer. It manages all the hardware, and provides an interface between the computer's hardware and the user.
DOS stands for disk operating system. The full proper name is preceded by the name of the manufacturer—for example, MS-DOS (for Microsoft and also used by "clone" makers) or PC-DOS (for versions specific to the IBM Personal Computer). This version was also sometimes referred to as IBM-DOS. All versions of DOS are actually the product of Microsoft development. The modern computer professional must be familiar with MS-DOS because MS-DOS remains at the heart of Windows. Although increasingly more configuration can be done through the Windows interface, there comes a time when every computer professional is faced with a screen of MS-DOS commands. Windows 98—the most current operating system—is more independent of MS-DOS than prior versions of Windows. However, every PC still requires AUTOEXEC.BAT, CONFIG.SYS, and various initialization files. So there remains a need for the computer professional to be familiar with MS-DOS.
DOS has been produced by three suppliers, and the versions are so similar that they are considered as one operating system. The three brands of DOS are:
Many computer manufacturers, especially in the early days of the 8088 and 80286 processors, produced their own versions of DOS. These were actually tweaked versions that contained additional commands or utilities specific to their hardware. Such versions might be required to run these machines and will require software that is compatible as well.
DOS was originally designed to load an operating system from a floppy disk to a computer with no hard drive (before hard drives were common). Today, any reference to DOS is synonymous with MS-DOS.
The following table provides a version history of MS-DOS.
|1.0||August 1981||Distributed on one floppy disk (required 8 KB of RAM).|
|1.1||May 1982||Added supported for 320-KB double-sided disks.|
|2.0||March 1983||Introduced support for hard disks, directories, background printing, and the ability to add device drivers.|
|3.0||August 1984||Increased support for hard disks larger than 10 MB and 1.2-MB floppy disks.|
|3.1||March 1985||Added networks and file sharing.|
|3.2||January 1986||Included support for 3.5-inch floppy disks.|
|3.3||April 1987||Added new commands and international support.|
|4.0||February 1988||Added support for hard disks greater than 32 MB, the MEM command, and MS-DOS Shell.|
|5.0||May 1991||Added memory management tools, help, undelete, unformat, task swapping. This was the last version to come with a printed manual.|
|6.0||March 1993||Included new features such as MEMMAKER, multiple boot configurations, Windows UNFORMAT and UNDELETE, virus protection, and backup. MEMMAKER is a utility that is used to modify the system's CONFIG.SYS and AUTOEXEC.BAT files, so that device drivers and memory-resident programs take up less conventional memory space.|
|6.2||October 1993||Included ScanDisk, MSD utilities, enhanced diagnostics.|
|7.0||December 1995||Not really a stand-alone product; provided the command-level environment included with Windows 95.|
Some computer manufacturers have produced OEM (original equipment manufacturer) versions of MS-DOS. For the most part, these versions have been cosmetically modified for specific use with their computers (such as a "splash screen" that shows the company logo during boot up). Care should be taken when using any computer with one of these operating systems—some incompatibilities with software written for MS-DOS might exist. You should be careful when substituting a generic DOS for MS-DOS if you are reformatting a hard disk drive or reinstalling the operating system. Make such a substitution only after you have verified that the generic version is compatible with all of the computer's hardware and software; the generic version might not provide the necessary support.
MS-DOS includes three programs that are required to make a drive or floppy disk bootable:
IO.SYS and MSDOS.SYS are hidden files that are not usually visible when you examine a disk directory.
In addition to the three core files, MS-DOS uses two other startup files. These files are not required to start the machine, but they add any additional startup configuration required by the user or applications. These files are:
If a user complains that a machine is not loading MS-DOS, especially after installing new hardware or software, disable these two files as a first diagnostic step. In many cases, drivers or procedure calls are conflicting or corrupting system memory.
Microsoft Windows 3.1 is not, in itself, an operating system. Windows 3.1 is an operating environment that uses MS-DOS as its foundation. Unlike Windows 3.1, Windows 95 is an operating system that incorporates MS-DOS. The purpose of Windows 3.1 was to make the computer more user-friendly by providing a GUI (graphical user interface). The GUI uses icons or pictures to display command information, rather than requiring the user to type a command. Windows is designed to be used extensively with a mouse or other pointing device (it can be used entirely with a keyboard—but that's not recommended).
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:
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.
The 386 protected mode can address up to 4 GB of memory, supports virtual memory, and allows multiple MS-DOS programs to run simultaneously. Beginning with Windows for Workgroups 3.11, only 386 enhanced mode is allowed in Windows for full operation. Real mode is still used in a limited way for advanced diagnostics and development.
As mentioned, Windows is a resource manager. It treats everything in the computer as a resource. Resources include memory, video, serial ports, and sound. All resources are presented to Windows through device drivers. Device drivers are simply files that know how to talk to Windows. When loaded, they allow Windows and a device to communicate. Almost all device drivers are stored in the \Windows\System directory. These drivers can be easily identified by their file extensions, which are .DRV or .386. Drivers with the extension .DRV are designed to work in standard and enhanced mode. Drivers with the extension .386 work only in enhanced mode.
Just like MS-DOS, Windows consists of three core files: KRNL386.EXE, USER.EXE, and GDI.EXE. These programs allocate and keep track of all system resources requested by the applications. They use a number of 64-KB storage areas of extended memory (called heaps) to keep track of which application is using which resource. They also have some ability to take away or reallocate resources (mainly RAM) from one application to another.
Applications are resource consumers. They must request access to any resource using very standardized subroutines called the application programming interface (API). Another file called a dynamic-link library (DLL) can speak to the Windows core directly. These small files store subroutines that either come with the compiler that created the application, or are made by the programmer. DLL files always end with the extension .DLL. Loss or corruption of DLL files will cause an application to lock up or prevent it from loading.
Some programs come with custom versions of DLLs that overwrite the standard DLL of the same name. If a problem occurs after loading a new application, installing a repair update of Windows might correct the problem, but can also render the new program useless. In such cases, you will need to consult with the program vendor or check the Microsoft Knowledge Base for more information on a fix.
When a program starts, it loads a small piece called a "stub" in conventional memory. This stub asks for RAM from KRNL386.EXE, which then allocates the amount of RAM as long as it is available. This area of RAM is known as a segment and its location is stored in a heap. Once loaded, a program can ask for resources as required. As long as there are resources to give, Windows will give them.
RAM is the most important resource that Windows must manage. As most users know, there never seems to be enough memory. Windows provides a way to gain memory when there is none. It uses virtual memory. Virtual memory means the ability to make something other than RAM chips hold data. Windows can create a special file (called a swap file) on the hard disk drive to act as a RAM chip. While running, Windows prioritizes programs and caches the lesser-used ones to the hard drive, thus allowing the most active program to use actual RAM.
To get around the problem of resetting the CPU in order to run an MS-DOS program, these later versions of Windows have the ability to run what is known as virtual 8086 mode. Virtual 8086 mode is an extension of 386 protected mode that allows for the creation of virtual 8086 machines. A virtual 8086 machine is a segment of RAM that operates as if it's an 8086 computer. Windows will run itself in one virtual machine (VM) and allocate another virtual machine to an MS-DOS program. Using several virtual machines, Windows can overcome the limitations of running only one MS-DOS program at a time.
Windows for Workgroups is an upgrade to Windows 3.1. It works and runs just like Windows 3.1 but has a few enhancements such as better networking capabilities for sharing files and printers. It also includes two utility programs: Schedule+ and Mail Service.
Unlike earlier versions of Windows, Windows 95 and Windows 98 are true operating systems. The details of configuring and using both are included in Chapters 16 and 17.
In the summer of 1993, Microsoft released another operating system primarily for the professional market. When it was first introduced, it was used in relatively simple network installations. Over several revisions, it has been enhanced to support the needs of corporations ranging in size from small to large and, now, the needs of the Internet and intranets. As an operating system, Windows NT provides a high degree of networkability as well as high security levels not available in other operating systems. Windows NT uses the same GUI as Windows 3.x; therefore, making it an easy upgrade for anyone proficient in using the Windows operating system.
There are several versions of Windows NT, ranging from 3.0 through 4. In addition, there are Service Packs; inline fixes that do not change the version number. Windows NT provides three levels of operating system in each of the later versions:
The most recent addition to the Windows family, Windows 2000, is the replacement for Windows NT, adding Plug and Play support, better multimedia tools, and advanced Internet support. Like Windows NT, it comes in three versions: Workstation, Server, and Advanced Server.
Be careful when upgrading to Windows NT or Windows 2000. They are not merely more powerful versions of Windows 98, but more robust, completely new environments. Not all applications and hardware are compatible with them. Be sure to consider all the advantages and disadvantages before making the decision to upgrade. Then check the Microsoft Web site for the latest version of the compatibility list.
The following points summarize the main elements of this lesson: