The History of the VAX
To begin the lesson, I will start with a brief overview of the rise of Digital Equipment Corporation (DEC), the company that manufactured the once-popular product, the VAX (virtual address extension).
In one way or another, DEC has always been there at critical moments in computer history. (You might recall that Ken Thompson was first hacking UNIX on a DEC PDP-10.)
To appreciate just how long DEC has been delivering computer products to the industry, take a moment to catch this link: http://www.crowl.org/Lawrence/history/.
This link will take you to Lawrence Crowl's wonderful computer history page, which shows photographs of machines that mark milestones in our computer culture (starting with the very first computer ever constructed by Charles Babbage, circa 1823). The first DEC PDP-1 appears on that page.
To get a full-screen view of that machine, catch this link: http://www.cs.orst.edu/~crowl/history/dec_pdp1_2.full.jpg.
The machine looks, quite frankly, like a prop in some terrible B movie from the 1950s something you would expect to see in a mad scientist's laboratory. DEC quickly moved on to produce a wide range of products, including the very first minicomputer the DEC PDP-8.
You can see this machine on Mr. Crowl's page as well, located full size at http://www.crowl.org/Lawrence/history/dec_pdp8.full.jpg.
In 1978, DEC created the first VAX, the Digital VAX 11/780. This machine offered 32-bit architecture and 1MIPS performance. By standards of the day, the 11/780 was powerful and fast. (It was also backward compatible with the PDP line that preceded it.) The price tag? A mere $200,000.
MIPS stands for so many million instructions per second.
Curiously, the 11/780 became so popular that it would establish itself as the benchmark machine for the MIPS index. In other words, it became the yardstick by which to measure performance of all workstations that followed. (This occurred despite the fact that the IBM 370/158 was reportedly comparable in terms of speed and processing power. The IBM 370/158 never reached the popularity status of the 11/780.)
To reiterate, the 11/780 was a $200,000 machine that could carry out roughly 1 million instructions per second. Fantastic. Today, if you were to advertise this machine for sale on the Internet, you would have to pay the buyer to haul it away. It is considered by today's standards either junk or, perhaps more charitably, a collector's item. However, one thing made the 11/780 a special innovation and still singles it out from other machines in computer history: The 11/780 could support two operating systems. One was a system UNIX that was known reasonably well at the time. The other system was something a little different. It was called VMS (Virtual Memory System). We will be examining VMS in just a moment. First, however, I want to give you an idea of what the VAX is all about.
The VAX is a multiuser system. Many readers might not be old enough to remember the VAXstations, so I'll offer a little description. The MicroVAX stands nearly three feet tall. On the right side of the machine is a panel that, when opened, reveals the cards. These cards are quite large, although not nearly as large as the panels of, say, a SPARCstation 4/330 VME deskside computer (but certainly larger than most modern motherboards for personal computers).
The terminal is a VT220, with a viewing screen of approximately 8 inches. At the back of the terminal are various connectors. These include a data lead connection, a printer connection, and a serial port. The serial port can be set to an amazing 19200 baud and terminal emulations available included VT220 and VT100. If you connect a modem to the terminal, you have to set modem commands by hand. (In other words, you would have to send raw modem commands from a blank screen that sports a blinking cursor. As an example, you would typically dial by issuing the command ATDT5551212.)
Firmware is contained within the terminal. This is software hard-coded into the board itself. (PC users should think of firmware in exactly the same way as the CMOS. It is a small software module that performs a limited number of tasks, including setting the machine's parameters.) Unfortunately, there is no facility by which to capture a figure of the screen, so I must describe it. When the terminal boots, you are presented with a copyright screen and then a blank screen with a blinking cursor. The terminal is then ready to accept commands. To manipulate the settings in the firmware, you choose the F3 (function 3 or Setup) key. This brings up a menu at the bottom of the screen where you can review and change various settings. These include not only the way that communications are conducted, but also how the screen is laid out and behaves. For example, you have a choice of either an amber background and a black foreground or the reverse. You can specify a typewriter keyboard or data mode, which is more commonly used when interfacing directly with the VAX. You can also manipulate the number of characters per line and lines per screen. (Additionally, the firmware has short help messages embedded within it. These generally appear at the bottom of the screen, in the status area, as do the setting values for each facet of your environment. These can indicate which printer you are using, whether you want local echo, whether you want type-ahead mode, and so forth.) No mouse, hard disk drive, floppy drive, or other components are either present or required.
You have a wide range of choices regarding communication. For example, you can change the bits (typically 7 or 8) and also the parity of these (none, odd, or even). This makes the VT220 terminal valuable not only to interface with VAXen (slang for VAX machines), but also a wide variety of UNIX machines. For example, you can use a VT220 terminal as a "head" for a workstation that otherwise has no monitor. Plugging the terminal into the first serial port of the workstation will generally do this. (For most versions of UNIX, you generally need to strip the eighth bit.)
For Linux hackers: You can also "add" an Internet node to your box using such a terminal. To do so, you plug the terminal into either COM1 or COM2. You then edit inittab to respawn another instance of getty on that port. For this to work, you need to ensure that the cable used is a null modem cable. You also should set the emulation to VT100. When the Linux box reboots, a login prompt will appear on the VT220. From there, log in as any valid user, and you are ready. This is significantly valuable, especially if you are trying to train someone in programming or navigation of the Net via a CLI (command line interface). It is important to note that, if you are using the same COM port that normally supports your mouse, you need to kill gpm (general purpose mouse) support.
These terminals, although intended for use with the VAX, can also be used as the most inexpensive method ever of accessing the Internet. Naturally, you need an old-style dial-up connec tion to do so (perhaps via Delphi), but there is no comparison to the price. Such terminals can now be purchased for $20. Add to this the price of a 19200 baud modem, and you are done.They are also great for connecting to local BBSs.
Such a terminal does not have environment variables per se and therefore reports none. All the environment variables are obtained from whatever shell you happen to acquire on the remote machine.
These terminals are used to connect to the VAX. (Note, too, that I have described only very early implementations of VT terminals. Much later models support various types of colors and graphics not available to the early VT100 and VT220 terminals. These newer models are extremely functional but can run as high as several hundred dollars. Good examples are the VT330 and VT340.)
Finally, you can connect to a VAX without such a terminal. Typically, this is done using PC software that supports VT100 terminal emulation. (Kermit is another popular and compatible emulation.)