DOS Lesson 1: Operating Systems

What is an Operating System?

In any course of study, such as this on-line study group on DOS, you need to carefully define your terms. Since everyone reading this is on-line, by definition, let’s use an on-line resource. An excellent one for our purposes
is the Webopedia, which can be found at:

http://webopedia.internet.com/

You should bookmark this resource since I will refer to it for definitions of terms in coming weeks. In this case, the term “Operating System” is defined at:

http://webopedia.internet.com/TERM/o/operating_system.html

The short definition is that the operating system is software that sits between the hardware and the applications.

The earliest computers did not have operating systems. In theory, we do not need operating systems today, though computing would be much less efficient without them. For example, users of the old WordPerfect for DOS may recall that this word processing program came with its own printer drivers, and without a printer driver in the application software you could not print. Today, users of word processing packages never think about this. The operating system loads the printer drivers and makes the printer available to any application. So the first principle we can discern about operating systems is that they can make applications easier to create and run by relieving them of certain tasks.

The next characteristic of operating systems is that they control access to and allocation of resources. Imagine if your printer received print instructions from two different programs and began printing from both of them simultaneously. The resulting document would not be useful.<g> On a more fundamental level, the normal desktop computer has a single CPU that handles all operations the computer does. The operating system determines which programs will have access to the CPU and under what conditions. Similarly, the operating system controls which program can write data to a disk, or draw something on the screen.

The third characteristic of operating systems is the they create a user interface through which the user interacts with the computer. In the earliest computers, the interface consisted of things like punched cards and paper tape, created by specialized keyboard devices. Then monitors and other terminal devices were added, though input was still achieved largely through the keyboard and information was in the form of text. Doug Engelbart at Xerox’s Palo Alto Research Center (PARC) showed the way to a different interface, the GraphicalUser Interface, or GUI (pronounced “gooey”), in his famous demonstration in 1968 which employed a three-button mouse and a clickable bitmapped screen image. This interface became the Apple Macintosh and Microsoft Windows, to namethe two best-known heirs of the PARC research effort. For more on this, take a look at the book Fumbling the Future: How Xerox Invented, Then Ignored, the First Personal Computer by Douglas Smith and Robert Alexander. It is
quite likely that future interface design will take us away from mouses and
monitors to things like voice interaction, and maybe to direct brain connections like Cyberpunk writers have hypothesized.

For a fascinating discussion of interfaces and related matters,
I recommend reading the article by Neal Stephenson called In
the Beginning was the Command Line
.

DOS as an Operating System

Microsoft’s DOS is an example one kind of operating system, a fairly simple one, which first appeared in 1981 on the IBM PC. The interface was what we call a command line interface, meaning that there was no mouse, no menus, or any graphical components. Text commands were entered from the keyboard, and the computer’s response appeared as text on the monitor. DOS controlled some aspects of the computer hardware, particularly disk access and basic CPU operations, but it was still common to need to configure the video display, sound card, printer, etc. for each application that would use them. DOS was a single-tasking operating system, which meant that only one program could be run at a time.

So in many respects DOS was a primitive OS. It was based on previous
systems, of course, and echoes of UNIX and CP/M can be seen in it. But if you read Stephenson’s article above, you will realize that it had hidden power, as well, because you could interact more directly with the components of the computer than you can with more modern operating systems. It is this power that makes it valuable to know DOS today. The majority of computer users today use graphical systems, but users of Windows, for instance, have the ability to interact with the computer through DOS (or in the case of NT, with a DOS-analogue) to do things which are difficult or impossible to accomplish through the graphical interface. For this reason, familiarity with DOS is still considered essential for anyone supporting Intel-based machines running Windows.