Classic Computer Magazine Archive COMPUTE! ISSUE 153 / JUNE 1993 / PAGE 62

DOS 6.0: DOS reaches a new level. (Software Review) (Evaluation)
by Mark Minasi

Whether you've been demanding better memory management, better disk management, or more tools to help you avoid loss or climb the learning curve more quickly, Microsoft has been listening.

Once again Microsoft has brought forth a new DOS, claiming this time to "make it easier." The world's most widespread operating system has graduated to 6.0.

But is DOS growing up, or growing out? Does DOS 6.0 break new ground, or simply put a polish on existing features? A little of both, as it turns out.

DOS 6.0 is the latest in a long line of versions of Microsoft's biggest cash cow, the virtually ubiquitous PC operating system. Though long, the line hasn't been an unbroken string of successes for DOS architects, however--if you've been around long enough to remember DOS 4.0, you'll probably agree--so it's logical for a PC user to ask, "Should I upgrade? Is DOS 6.0 worth it?" The answer is "Yes, almost certainly." Here's why.

Don't expect the kind of gotta-have-it revolutionary features in DOS 6.0 that you saw in DOS 5.0; in some ways, DOS 6.0 might better be named DOS 5.1. That's not a negative comment; it's just a recognition that DOS 6.0, while different from DOS 5.0, is nowhere near as different from its forebear as 5.0 was from 4.01. There's still a lot to talk about in DOS 6.0, however. This article will have to be the quick tour. We can only cover the highlights here.

On-the-Fly Disk Compression

DOS 6.0 is fairly big--about 8MB, if you install it all--but paradoxically, you may find after you've installed DOS 6.0 that you've got more free disk space than you did before. That's because of the DoubleSpace feature.

DoubleSpace is an adaptation of a product that's been around for a while called DoubleDisk. Microsoft started from DoubleDisk, but the company says that DoubleSpace is much improved over DoubleDisk. An on-the-fly compression routine works something like PKZIP or Lharc, compression programs with which you may be familiar. Various programming tricks let you crunch a lot of data to a smaller space. Virtually every file you find on a bulletin board or communications service nowadays is zipped or arced--there's nothing new there. But when you want to use the file, you must first uncompress it, which can be something of an annoyance. DoubleSpace and programs like it offer the ability to transparently compress and decompress your files as they are used, removing the need to run a separate compression or decompression routine.

Decompressing and compressing data on the fly sounds a mite risky. In my experience it's fairly reliable. I've used it on a notebook computer for months now without incident, but people using high-performance disk controllers sometimes report trouble with DoubleSpace, so back up before you rely upon it.

Fending Off Viruses

Sometime in the mid 1980s, the PC world got something new to worry about (as if hard disk crashes, accidental formats, power surges, and buggy software weren't enough). Word got around the business that a class of program called a virus was starting to appear in PCs.

You've probably heard about viruses for years, but 1992 was the year viruses came into their own. For the purpose of teaching seminars (which is my main job), my company rents PCs for use in hands-on exercises. In the entire second half of 1992, I never rented a group of computers that didn't have at least one infected machine. Stoned, Flip (Omicron), and Joshi were the viruses I saw most commonly.

DOS 6.0 offers two kinds of protection from viruses: a virus scanner and a virus shield. Both programs are based on the very popular Central Point Antivirus. Msav is a virus scanner. It searches a disk, looking inside every program for a possible virus. Msav works very quickly, which is quite a feat when you consider that it was designed to recognize thousands of miscreant programs. There are two versions of the scanner program: Msav runs under DOS, and Mwav runs under Windows. You could conceivably run Msav every time you booted up DOS, but you'll probably find that you'll scan your disk every week or so, or perhaps after installing some software that you suspect to be infected. The scanners can either detect viruses by looking for distinctive strings in program files or by creating checksums for each program file which can then be recomputed and compared later to the previously created checksum files. Any programs whose checksums have changed get flagged.

A virus scanner like Msav or Mwav reports that the damage has been done; it doesn't keep viruses from getting to your disk in the first place. For this purpose, DOS 6.0 offers full-time virus protection in the form of Vsafe, a virus shield. When you run Vsafe, you activate a program that runs continuously in your system, looking over DOS's shoulder and trying to keep DOS from getting into trouble. Vsafe first tries to keep your data safe by monitoring efforts by programs to go resident in memory (become terminate-and-stay-resident programs or TSRs). Now, all TSRs must go resident in order to do their jobs, so Vsafe will sound a false alarm fro any legitimate TSR program; that's an unfortunate fact of life. Vsafe also monitors any attempts to use the BIOS's Format command--a command normally used only by the DOS Format command, and only then to format floppies. With IDE drives these days, there's probably no reason anymore for the BIOS to support a format command on hard disks, as you can't low-level-format IDE drives. Vsafe won't make it impossible for programs both good and bad to request format operations, but it will alert you to their format commands before BIOS can carry them out, giving you the chance to override the format request.

Despite its good points, however, there are some real flaws in the antivirus package. For one thing, Vsafe can be removed from memory with a particular keystroke. What's to keep a virus from detecting Vsafe and then just mimicking that keystroke? Msav itself can also cause false alarms, leading other virus scanners to think that there's a virus in memory. And Msav has trouble cleaning several viruses that it claims to be able to handle, including Frodo.

Sadly, it's true: PCs need virus protection, and it's about time that DOS reflected that sad truth.

Hooking Up

With DOS 6.0 come two new approaches to hooking up PCs--InterInk and Workgroup Connection.

Nowadays, many people rely on laptop computers. Laptops are great, except for one small problem: Transferring data to and from a laptop is generally somewhere between a pain and a nightmare.

A whole class of high-speed utility programs has arisen to solve the data transfer problem--programs with names like Brooklyn Bridge, LapLink, and FastWire. These programs support data transfer at speeds of up to 500 Kbps.

The new DOS includes one of these programs. Called InterInk (pronounced "interlink"), this new facility makes blasting data from your desktop PC to your laptop PC (or from any PC to any other PC, for that matter) a breeze. You'll find Interlink simple to use: You just hook up the first PC to the second with a cable (that's the hard part, by the way--DOS doesn't include a cable for the transfer), install the Interlnk device driver in the CONFIG.SYS of both machines, and then run Intersvr on the server PC and Interlnk on the client PC. The drives of the server PC will instantly appear as new drive letters on the client PC. (The server PC can't do anything else while Interlnk is in operation.)

But the new communications capabilities don't end there. As you are probably aware, in the fall of 1992 Microsoft released a new version of Windows called Windows for Workgroups. It's a version of Windows designed to allow people to build peer-to-peer networks (networks that don't require dedicated servers).

DOS 6.0, as the first version of DOS released since Windows for Workgroups, contains an updated version of the workstation software, called Workgroup Connection. It is very important for you to understand, however, that Workgroup Connection under DOS is not a stand-alone product. This isn't made clear in the DOS documentation. You cannot build a network using only Workgroup Connection. It'll only let you share printers and files and send messages via a PC running Windows for Workgroups. But if you do use Windows for Workgroups, then the Workgroup Connection will allow you to send and receive E-mail as well as share files, disks, and printers with a PC running Windows for Workgroups.


My favorite DOS 6.0 feature is MultiConfig. If you run more than one complex program, you probably have more than one CONFIG.SYS and AUTOEXEC.BAT file--one for doing normal work, one for Wing Commander 11, and perhaps another for Windows.

Even if you don't mess around much with your CONFIG.SYS and AUTOEXEC.BAT, you must sometimes rename them or move them somewhere else so that you can boot your system in a so-called vanilla configuration, a stripped-down setup required for troubleshooting some hardware and software.

Either way, it all boils down to lots of shuffling around of configuration files. (And always keep a bootable floppy handy in case you didn't copy something right!) But DOS 6.0 solves the multiple configuration problem with MultiConfig.

MultiConfig is actually three features rolled up into one. First is Clean Boot. Any time you want to boot your PC and not run your CONFIG.SYS and AUTOEXEC.BAT, just press and release F5 when the Starting MS-DOS . . . message appears, or hold down both Shift keys and DOS will boot without either file. This is a godsend for inveterate configuration twiddlers like me (and probably like you, if you read COMPUTE).

The second form of MultiConfig is Interactive Boot. Have you ever had a situation where you wanted to boot the system without a particular device driver? Or have you ever seen an error message flash by from some CONFIG.SYS command but not known which command caused the error? In these situations, you should press F8 when the Starting MS-DOS . . . message appears. DOS will pause at each CONFIG.SYS command and ask whether or not to execute that particular command.

Under the third form of the new MultiConfig utility, you can combine several configurations into a single AUTOEXEC.BAT/CONFIG.SYS pair. You can attach a menu to it, complete with colors and a countdown timer. Then, every time you boot, you'll see your various boot-up options and a countdown timer. If you don't select any option within a certain amount of time (an amount that you choose), then DOS picks a default configuration.

MultiConfig brings a whole slew of new commands to CONFIG.SYS. There's not enough space to examine them here, but you'll find that MultiConfig is covered in detail in my "Hardware Clinic" column this month.

Better Memory Management

DOS 5.0's memory manager was pretty good. It was very good, if you consider that it cost nothing beyond the price of DOS. But it lacked a few of the features of the two big-name memory managers, Quarterdeck's QEMM and Qualitas's 386Max. Namely, it didn't offer any assistance in setting up the memory manager, it didn't allow you to specify where to place programs in memory above 640K, and it didn't provide any special handling for programs that grow and shrink in size while loading--so-called yo-yo programs.

DOS 6.0 includes a memory optimizer program called MemMaker, which is much like Qualitas's Maximize or Quarterdeck's Optimize. MemMaker analyzes your CONFIG.SYS and AUTOEXEC.BAT files to determine which commands take up memory in your conventional area--that is, the area below 640K. It does that by rebooting your system. It then looks at the amount of unused space in your upper memory area (UMA) where these commands could be loaded. It then considers all possible combinations of ways of loading these programs, seeking the combination that nets the most free conventional memory. Then, it reboots a second time to try this configuration. If your computer seems to be behaving and it didn't lock up when MemMaker attempted to make it reboot, you've got a freshly optimized configuration. If the configuration malfunctions, you tell MemMaker that it didn't work, and MemMaker tries something else.

I've never liked automatic memory optimizers. They're too much of a compromise, and their designers ask too much of a simple program. MemMaker does nothing to change my mind on that score. Late one night I set up a real humdinger of a memory optimization problem with 260K of TSRs and told MemMaker to put as many of them into upper memory as it could. Upon MemMaker's first reboot, my system complained that the CMOS setup memory was erased ... and sure enough, it was. Good thing I'd written down how many heads, cylinders, and sectors I had on my hard disk. My advice about MemMaker is (1) be sure to map out all of your upper memory from addresses 640K through 1024K, explicitly including and excluding addresses, and (2) don't allow MemMaker to aggressively search memory for free space.

Readers of last year's "Hardware Clinic" columns about using the DOS 5.0 memory manager will recall that I grumbled about DOS 5.0 just loading each program into whichever area has the most free space available rather than letting you pick where each program should go in upper memory. That's a terrible approach, and DOS 6.0 now allows you to add a parameter to your LOADHIGH and DEVICEHIGH statements that will let you specify which region of upper memory to load a program into.

But what about handling yo-yo programs? Quarterdeck handles them with its Squeeze feature, and Qualitas handles them with its Flexframe feature. DOS 6.0, on the other hand, puts its head in the sand about programs that grow and shrink at boot time. According to a Microsoft techie, the reason why DOS 6.0 doesn't include commands for special handling of yo-yos is that this would make the system unstable. Unstable? Hmmm . . . Microsoft, by the way, viewed the whole idea of memory management as unstable a few years ago. Perhaps in time the company will get comfortable enough with the idea of yo-yos that it will add some kind of yo-yo support. It's most needed with Microsoft programs--the MOUSE.COM driver loads at 56K and shrinks to 17K!

On-Line Documentation

If you find hunting around in a manual to be tedious, Microsoft's heard you. It's solved the problem by not including a manual with DOS 6.0.

That's not really true. There is a manual discussing some of the why's, where's, and how-to's of the new DOS. But there's no command reference for the new DOS commands. That's only available online. (Or in my new book, Inside DOS 6.0.) Now, if you type, say, help chkdsk, you'll get the Chkdsk syntax, notes on what Chkdsk does, and examples of use of Chkdsk. I've found this aspect of the new DOS very useful, particularly when using my notebook on the road.

Choice Comes to PCs

People who write really snazzy batch files have always lacked a command to receive input from the user of the batch file. Many have gotten by with the dozens of commercial public domain programs that fill the gap, but now DOS finally has a batch input command of its own: CHOICE.

CHOICE is a simple command. It will provide a prompt to the user; then it will accept one keystroke--and only one--from a list of acceptable keystrokes. By default, it only accepts the keys Y and N, but you can change that, and even make the choices case-sensitive. It will also optionally "time out" after a given time, using a default choice if no other is made. This command really opens up some interesting possibilities for batch files; I've even used the timeout option to create a batch file that will cause the PC to "sleep" for a specified number of seconds by telling CHOICE (1) not to display a prompt and (2) only to accept as input an Alt-255, the "invisible" ASCII code.

Better Disk Management

Little by little, Microsoft is chipping away at the domain of the disk utility vendors. DOS 6.0 includes four new commands which together are probably worth half the cost of the package--Dosback, Deltree, Defrag, and Move.

Dosback is a trimmed-down version of Norton Backup, and Microsoft ships it in both a Windows flavor and a DOS flavor. Don't use both, by the way--running one trashes the configuration file of the other. Dosback does all of the things you've come to expect from a high-speed backup program. It's easy to use, it supports data compression, it has built-in error recovery, and it can memorize your pattern of backing up into configuration files called sets. It does not support tape drives directly, but it will back up to any DOS device driver-type storage mechanism; for example, I've used Dosback with Bernoulli Box cartridges with no problems. Those using floppy disks for backup will wish that Dosback used direct memory access to transfer data to the floppies. This feature was trimmed from the original Norton product.

Deltree is my third-favorite DOS 6.0 feature. (MultiConfig is first, and being able to place programs into particular regions of upper memory is second.) Ever had to erase a subdirectory, and the subdirectories in it, and the subdirectories in them? Erase and RD, and erase and RD, and . . . It's tiresome. Now, to delete directory X and all of its subdirectories, just type deltree x. You'll get just one Are you sure?, and then the directory and all of its subdirectories and subsubdirectories are history. I hope I needn't mention that you should handle this with care, but that's the case with all power tools.

Defrag is another cut-down Norton product, a version of Speed Disk. Not only will it unfragment your disk, but it'll sort your directories.

Move is another utility that's been around since at least 1983 in public domain versions, and it finally comes to DOS. Move will move a file from one directory to another in one command, rather than making you copy a file and then delete the original. Oddly enough, Move also has another purpose: It lets you rename a subdirectory. (Move is another one of those it's-about-time commands).

More Bulletproof Undeletion

It's hard not to like the Undelete command in DOS 5.0. It's potentially of use to almost anyone. Nice as DOS 5.0's Undelete is, however, DOS 6.0's outdoes it by providing three levels of undeletion protection.

The Undelete that comes with DOS 5.0 already has two levels of undelete protection: simple undeletion and deletion tracking. DOS 6.0's Undelete not only includes those two undeletion methods (which space does not allow me to recapitulate), but it adds a new level of protection called the Deletion Sentry. It's a simple idea, but it offers a whole new level of data integrity. The idea is this: Once you've activated the Deletion Sentry, any file erase operations do not actually erase files. Instead, they move the files to a hidden directory. The files in this directory are not counted as taking up disk space, and in general, you won't see them at all. If you need a lot of disk space for some new file or files, so much disk space that DOS would have to actually erase the hidden files in order to fit the new files, then DOS erases the files for good. But that won't happen in most cases, and the net effect of the Delete Sentry is to extend the life of an erased file for a few extra days--time enough for you to realize that you've erased a file that you didn't mean to erase.

Should You Upgrade?

Is DOS 6.0 worth the cost and trouble of upgrading?

For most of us, the answer is yes. The continual improvements in data recovery tools are priceless, as the most valuable thing on your computer is your data. The disk compression lets you put more data on that hard disk--a real blessing if you're using modern disk-hungry software.

The improved memory manager lets you load more programs in your computer, and the antivirus protection makes it easier to keep malicious virus programs from loading into your computer.

For heavy Windows users, DOS 6.0 offers a new Windows Undelete, an antivirus utility and a backup program, plus DoubleSpace.

The E-mail and network support are convenient add-ons if you're already using Windows for Workgroups or LAN Manager, and the Interlnk software will keep the folks who make Laplink, FastWire, and the like burning the midnight oil trying to turn out something better.

Something better may be the best way to characterize DOS 6.0. It's not everything we want in an operating system, but it's a step beyond any previous version of Microsoft DOS. Whether you've got an XT or a Pentium-driven machine, at $60 (discounted price) there's something in the latest DOS for you.