Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.
Computer users at the turn of the millennium are increasingly faced with the possibility—and desirability—of running several operating systems (OSs) on a single computer. The explosive growth of Linux in the late 1990s, the interest in "real" UNIX versions that goes with this growth, the increasing usability of Windows NT (now called Windows 2000) as an alternative to Windows 9x, and the availability of "oddball" OSs such as BeOS and OS/2—these all make for a very dynamic OS marketplace. This dynamic marketplace is often hidden by the prevalence of Windows 9x in terms of total units shipped, but for a person who looks a bit farther than what's preinstalled on a computer, plenty of alternatives merit investigation.
Unfortunately, no one OS can be all things to all people. Indeed, it's unlikely that any one OS perfectly fills the needs of even a single person. By using multiple OSs, you can fill in the gaps, as it were. One OS might be slow and bloated but run a particular program you need, and another might be quick and sleek but might lack a few critical applications. You can get the best of both worlds by using both OSs.
Unfortunately, the range of available OSs, constantly changing standards, and differences in fundamental features of available OSs make it difficult to use multiple OSs on a single computer. In most cases, non-dominant OSs (currently meaning anything that's not Windows 9x) try to get along well with the dominant OS, but even so there are challenges for you to overcome. What's the best way to share files between Windows 98 and BeOS 4.5? How can you clear up enough disk space to install Windows 2000 without damaging Windows 95? What applications are good for enabling you to work in either Windows NT or Linux? Add two or more unusual OSs into the mix and the questions don't just add up, they explode.
In sum, although maintaining a multi-OS computer provides many benefits, it can also be challenging. Most people who try it manage to muddle through, slowly accumulating tidbits of information on integrating OS x with OS y. When the time comes to add OS z, the process begins anew. Some people run into one problem too many and give up before accumulating many tidbits.
As a long-time user of several OSs on x86 hardware, I've accumulated more than my fair share of multi-OS tidbits. In the interests of sharing (and because I thought it would be a fun project), I wrote this book. You'll find within these pages the accumulated knowledge of close to a decade running x86 PCs with multiple OSs. (I've run other computers with multi-OS configurations earlier than that, too—my first such experience was running both TOS and Mac OS 6 on an Atari ST! Today I run Mac OS 8.6 and Linux on an iMac, and I expect to add the UNIX-based Mac OS X as soon as it's released. I've restricted this book to a discussion of OSs for x86 PCs, however, in order to narrow the scope to a manageable level.)
This book is aimed toward an audience that's familiar with x86 PCs or at least with computers in general. You should be reasonably familiar with at least one OS but find that you want to experience something more. Chapter 1, "The Trials and Triumphs of a Multi-OS Computer," covers the many reasons you might have for wanting to run multiple OSs on your computer—curiosity, need for additional or specialized software, and so on. Suffice it to say, though, that I assume you're serious about this endeavor. Running multiple OSs on your computer takes work and dedication. I'm not talking about a volunteering-for-the-Peace-Corps level of dedication, of course, but you will invest many hours in the project—or give up in disgust.
What this book can do is to help reduce the amount of time it takes you to configure and effectively use a multi-OS system. It might even prevent you from throwing in the towel if you encounter a problem. Whether you've never installed more than one OS on a computer before or you're an old hand at it but need help adding a third, fourth, or subsequent OS, this book can help you find your way in the often intimidating realm of multi-OS computing. You'll find within these pages tips on sharing data (including foreign OSs' filesystems, common file formats, and cross-platform applications), information on partitioning and OS installation, advice on OS customization with an eye to easing multi-OS use, tips on emulators to run one OS's programs within another, and advice on the purchase and configuration of hardware.
This book is not intended as an introductory text on any specific OS. Although I do include plenty of material for specific OSs—including Windows 9x, Windows NT, Windows 2000, OS/2, BeOS, Linux, and FreeBSD—this book does not include the sort of day-to-day operations information you need to use a new OS. For that, you should read the manuals and online help files that come with your OS, or purchase a book specific to your OS. (Chapter 11, "Finding Help," can help point you toward many specific sources of information about a new or old OS.)
There are points in the book where I assume you have some knowledge of the basic tools available in an OS. For example, I assume you know how to start the X Window System in a UNIX-like OS and how to browse for files in Windows, OS/2, or BeOS. When two OSs I discuss do something differently, though, I try to point out these differences. For example, Chapter 12, "Filesystems for Assorted OSs," discusses the differences in filesystem features required by the various OSs available for x86 hardware today.
This book is divided into eight parts of from two to four chapters each. Each part covers a broad topic of interest in a multi-OS environment, and each chapter covers one particular subject. I've tried to make each chapter as self-contained as possible, but of course some topics interact strongly with others, so you might need to read one chapter before you can get the most out of another. I always mention when this is the case at the start of a chapter that has a "prerequisite." Here's a summary of the sections of this book:
Part I, "Overview," provides a broad examination of the state of multi-OS computing on the x86 platform today—why you might want to run several OSs on a single computer, what OSs are available, and so on. If you already have a good idea of what OSs you want to run and why, you can safely skip this section. If you're dissatisfied with your current OS and are looking for alternatives, though, Part I is a must read.
Part II, "The Boot Process," describes how an x86 computer boots. This process is critically important in understanding how a single computer can run two or more OSs and in determining how best to configure your system. Different boot loader programs to select between OSs at system startup have very different characteristics, and a poor choice of boot loader can create an inability to install or use certain OS combinations.
Part III, "Partitioning and Partition Management," covers the allocation of space to multiple OSs. Most OS combinations can't share disk space except in certain limited ways, or by giving up functionality such as long filenames or the capability to use large partitions. Partitions let multiple OSs coexist, but they're difficult to modify after they're set up. It's therefore important that you configure your partitions correctly when you set up a multi-OS computer.
Part IV, "Operating System Installation," covers tools and procedures to follow when installing a new OS. This section doesn't include detailed installation instructions for any specific OSs; instead, it provides an overview of typical steps and tips for how to proceed in such a way as to provide the most functional setup possible. This part concludes with a chapter describing where to go for help in case you need more specific advice. Even if you don't need advice on OS installation, this chapter can be helpful in tracking down help on many other topics, even in a single-OS environment.
Part V, "Data Exchange," is devoted to the topic of sharing data between OSs. A multi-OS computer is most useful when you can work on the same documents in more than one OS, either because you happen to be booted into a given OS or because different OSs provide tools that are ideally suited to performing different types of actions on a single data file. This part of the book covers topics that help in achieving this OS-independence goal, including filesystems and common data file formats.
Part VI, "Common Configurations and Tools," explores the topic of making your OSs more like one another. You might want to do this if you're forced to use a new OS and want to make it function in a more familiar way than it does by default, or if you need multiple OSs but want to make the Oss seem alike so you're not bothered by annoying differences. Tools I cover in this section include programs that run on multiple OSs, tools to modify an OS's appearance and behavior, and emulators to allow one OS's programs to run within another.
Part VII, "Network Access," broadens the scope of the book somewhat by covering the use of an OS in a network of computers. You can get many OSs to work well with others in a network by using protocols that are common to all OSs. You can even use a network to help integrate two OSs on one computer better; for example, you can use file sharing protocols with a separate file server to provide common storage space to two OSs that otherwise would not share a good common filesystem.
Part VIII, "Hardware Considerations," covers hardware issues that are unique or particularly important in a multi-OS configuration. Specific subjects include resource requirements of various OSs, obtaining drivers, and locating new hardware when it comes time to upgrade your computer.
The CD-ROM that accompanies this book includes many tools and utilities to help make your multi-OS experience a pleasant one:
A demonstration version of PowerQuest's (http://www.powerquest.com) PartitionMagic software— This software is a great boon when it comes to partitioning your computer for multiple OSs. The demonstration version includes most of the functionality of the regular retail version.
Versions of LaTeX for multiple OSs— LaTeX is a powerful document layout tool that many people prefer to a conventional word processor.
Filesystem drivers for many OSs— A large number of drivers allow OSs to read each others' filesystems, and this book's CD includes many of these drivers.
GNU utilities and tools— The Free Software Foundation's (http://www.fsf.org) GNU's Not Unix (GNU) project is devoted to developing a freely redistributable version of UNIX. Many GNU tools have been ported to non-UNIX OSs, however, and this book's CD includes many of these ports.
GUI utilities for Windows and OS/2— It's possible to modify the "look and feel" of these OSs by using an assortment of third-party utilities and add-ons, some of which are on this book's CD. (UNIX OSs are almost infinitely variable using tools and programs that usually come with the OS.)
XFree86 for OS/2— The XFree86 (http://www.xfree86.org) GUI environment is common on UNIX systems but is also available for OS/2, and the OS/2 version comes with this book. Commercial X servers are also available for Windows, as described in Chapter 19, "TCP/IP Networking."
VNC for Windows, Linux, and OS/2— The Virtual Network Computing (VNC; http://www.uk.research.att.com/vnc/index.html) tool enables you to use one computer from another computer over a network connection. Versions for Windows, Linux, and OS/2 are included on this book's CD-ROM.
VMware for Linux and Windows NT— This emulator enables you to run any of several other Oss within the host OS. This CD includes a 30-day demo version of the program.
This broad range of tools and utilities can help make your multi-OS experience a pleasant one. There are, of course, many gigabytes of additional multi-OS tools available, and the text to the book includes information on how to locate such tools.
This book uses certain conventions to help you get the most out of it, and from your multi-OS computer.
Various typefaces in this book identify terms and other special objects. These special typefaces include the following:
| Type | Meaning |
|---|---|
| Italic | New terms or phrases when initially defined. |
| Mono | Information displayed by the computer in a command prompt window, when running in text mode, or that appears in a configuration file. This is also used for filenames, URLs, and information that you type into the computer at a command prompt or when running a program. |
| Initial Caps | Menus, dialog box names, dialog box elements, and commands are displayed in Headline-Style Capitalization to distinguish them from body text. |
Key combinations are represented with a plus sign. For example, if the text calls for you to enter Ctrl+S, you would press the Ctrl key and the S key at the same time. When referring to menu items, each menu label is separated by a comma. For example, if the text refers to Edit, Search, Forward, you would click the Edit menu item, then the Search item from the Edit menu, and then the Forward item from the Search submenu.
Throughout this book, you'll find Tips, Notes, Cautions, Sidebars, and Cross References. These elements provide a variety of information, ranging from warnings you shouldn't miss to ancillary information that will enrich your multi-OS experience but isn't required reading.
Tip
Tips are designed to point out features, annoyances, and tricks of the trade that you might otherwise miss. Tips generally help you use your computer more efficiently by providing you with a quicker or more effective way of doing something than might otherwise be immediately obvious.
Note
Notes point out items that you should be aware of, though you can skip these if you're in a hurry. Generally, I've added Notes as a way to give you some extra information on a topic without weighing you down.
Caution
Pay attention to Cautions! These could save you precious hours in lost work. Don't say I didn't warn you.
Cross References Cross references are designed to point you to other locations in this book that will provide supplemental or supporting information. Cross references appear like this:
→ To learn more about Linux and BSD distribution Web sites, see Useful Official Contact Information.