Operating Systems ComparisonPhil HughesThis paper offers a comparison of the various operating systems that are commonly used in the business community. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Today, computers are an integral part of most businesses. Much like a fork list, the company truck or filing cabinets, businesses recognize computers as a necessary tool to make the business work. Unfortunately, most businesses are not in a position to make as informed a decision on computers as on other needed tools. This is because computer systems are more complicated than other business choices. In this article I will share my experience as a systems design specialist and systems programmer for government and industry. Most businesses today are running a mix of computer types and computer operating systems to get their work done. For example, Intel Pentium and equivalent computer systems running Windows 95 are very common on office desktops but other types of computers may be used for graphic arts work, point of sale systems or connectivity to the Internet. In fact, it is very possible that you are not even aware of what type of computer hardware and operating system is contained in a dedicated system performing a specific function for your company. The right mix of computers offering the necessary interoperability is almost always a better choice than selecting one type of computer and operating system and then attempting to make it fit all tasks. The latter choice would be similar to requiring all employees to have the same type of work space--whether they were a secretary, a computer programmer or a warehouse manager. This is not to say that you should not dictate standards when appropriate. For example, you will most likely want to select one word processor that will be used by everyone. This decision, however, should really be based on interoperability rather than an arbitrary edict. Let me introduce some common business platforms and discuss their capabilities. First, what do I mean by a platform? This is a combination of the computer equipment (hardware) along with the operating software (operating system) that offers the computing capabilities. On top of this platform you would run the applications software (word processors, spreadsheets, databases, dedicated applications) that you need to run your business. One confusion is that you will sometimes see a specific hardware/software combination discussed here (such as MacOS on a Apple Macintosh) but, in other places, you will see operating systems choices on one hardware platform (such as DOS, Linux, SCO UNIX and Windows95 all on the same hardware) as well as hardware choices (such as Digital Alpha and Intel Pentium) for one operating system. This is because some operating systems only run on one type of hardware but other operating systems are more portable. The term ``Legacy System'' is generally used to refer to older systems such as mainframes. They are already installed, perform some needed functions but are no longer being considered as a new solution. They still need to be discussed because it may be necessary to support these systems in the computer mix of the office for some time to come. Common examples of such systems are
These machines were commonly installed to offer specific computing capabilities to a company. This could be anything from a manufacturing control system to an airline reservation system. The problem with these systems is that their were never designed to interact with other computers and operating systems making it hard to add new capabilities to the company computer mix. For example, Internet connectivity is becoming more and more important but dealing with such issues as electronic mail to and from proprietary systems is, at best, difficult. [For an explanation of how one company dealt with this issue, see ______ in the _____ issue of Linux Journal %%% this the the LMB about sendmail at Robers/Viking/...] 2.2: Microsoft Operating Systems Microsoft offers the most popular operating systems for use on the desktop. Their series of operating systems started with MS-DOS and now includes Windows95 and WindowsNT. One of be big pluses for these operating systems is a wealth of relatively inexpensive applications programs are available. One of the biggest shortcomings of this series of operating systems was the lack of decent connectivity and interoperability. These problems we more significant that with legacy systems because the single-user nature of these systems increased the need for decent connectivity. Windows95 and WindowsNT addresses the connectivity issue fairly well among like systems but these systems are still lacking in the areas of interoperability with other operating system. This deficiency actually encourages people to still with an ``all-Microsoft'' shop. On the surface this may sound like a good solution but limitations such as poor Internet connectivity and low security may cost more to overcome. UNIX started out as a product of AT&T who then licensed the source code and trade-name to various vendors. Today, UNIX is a brand that belongs to X/Open and the original source code is owned by The Santa Cruz Operation (SCO). Any vendor that meets testing requirements and pays a fee can use the UNIX name. In parallel with this effort, a standard called POSIX was developed that defines what makes a UNIX-like system. Thus, being POSIX-compliant means the operating supports a standard set of interfaces. It is relatively easy to port Applications software written for a POSIX-compliant system to other POSIX-compliant systems. It does, however, mean that the source code for the application must be available to do the port. The proprietary issue here is generally that a specific vendor has developed a version of the operating system that only runs on their hardware. While it is based on original UNIX source code, modifications that make it run on specific hardware and enhancements are not available. Examples of these systems are:
These systems offer the following advantages:
An alternative to proprietary (and vendor-specific) UNIX systems is a system that offers UNIX capabilities without being tied to a specific hardware vendor or machine architecture. There are a series of operating systems that do not tie themselves to a specific vendor but only one, Linux, that also offers independence from a specific machine architecture. 4.1: *BSD Systems The non-Linux answers are related to BSD UNIX. What is BSD UNIX? Starting in the 1970s, the University of California at Berkeley, licensed UNIX from AT&T and did significant work on it. This resulted in two development paths: what became known as System V UNIX (from the AT&T path) and BSD UNIX. The most significant commercial user of BSD UNIX was Sun Microsystems in their SunOS product. This isn't surprising considering Bill Joy, founder of Sun Microsystems was one of the primary developers of BSD UNIX while he was at the University of California at Berkeley. In the 1980s, AT&T, Sun and others formed an alliance to merge the best of System V and BSD UNIX into one product. Solaris, the current operating system from Sun is a result of this merge. While AT&T source code remained proprietary, the BSD source code is available under a very unrestrictive license. Proponents of BSD UNIX--commercial and non-commercial--put forth an effort to extract BSD-developed capabilities from the total BSD UNIX package and make this code available. Today, the BSDI, NetBSD and FreeBSD systems are based on this BSD UNIX code. The offer all the UNIX capabilities you would expect. Unfortunately they have two shortcomings:
Linux started out as a project of a single individual, Linux Torvalds. [You probably want to insert a link to what is Linux here]. What made Linux different from any other operating system development project is that thousands of people--from students to computer professionals--got involved in the development. While the ideas of UNIX and POSIX capabilities were always the basis, development was very pragmatic. Where BSD development tended to suffer from the ``not invented here'' syndrome, Linux development was much more inclusive. This means that capabilities that were used in other systems were integrated into Linux development. While Linux development was started on an Intel 386-based system, the philosophy of inclusion meant that other architectures were considered. Today Linux runs on SPARC, PowerPC (including Mac), Digital Alpha and %%%%% [what am I forgetting?] machines with ports on the way for others. This portability is significant because
Along with these advantages, Linux offers the connectivity capabilities that have been the trademark of UNIX-based systems as well as some additional connectivity capabilities that are unique to Linux. These capabilities include:
Two other platforms are common today: MacOS on the Apple Macintosh and Novell Netware. The Mac was developed as a workstation and for some specific applications such as graphics, it may well be the best workstation. It was, however, never designed to inter-operate well with non-Mac systems and, unless your company is only doing graphics work, it is not likely to be a general solution. Novell Netware was designed to make up for the poor connectivity of early Microsoft products. It accomplished this task by offering file server capabilities for DOS and Windows-based systems but little more. With today's client-side interoperability capabilities of Windows95 and server-side capabilities of other systems such as Linux, Netware has really moved into the camp of legacy systems. 6: Selecting the Right Operating System If you are in management of a business you may have never heard of an operating system and you are unlikely to want to select one. Unfortunately, the potential dangers of a wrong selection go well beyond the decision-making capabilities of an external sales person or a technical person. This information is designed to help the manager guide a technical person in their search for a selection that is in the best interest of the company -- both in solving problems today and working well in the future. 6.1: Addresses your current needs The most basic requirement is that the selection you make must address your current needs. For example, if your business requires secure, on-line transactions from the World Wide Web, you need to make sure the system you select can support this. It is very likely that you will need more than one type of system to perform all the tasks for your company. For example, your accounting system is unlikely to run on the same type of computer system and your World Wide Web server. Make sure that any selected systems will properly inter-operate. 6.3: Support for different hardware platforms Company growth usually means growth in computing requirements. Make sure your selection will offer a reasonable upgrade path. This path could be the addition of networked computers, upgrades to faster and more capable hardware or support of performance-enhancing architectures such as Symmetric Multi-Processing (SMP). Being able to maintain the systems you choose is vital. There are many technical considerations here and many tradeoffs. There is no single ``best'' answer. Here are a few of the issues:
The choice of non-proprietary operating systems can make it much easier to upgrade hardware as new technology becomes available. The most prominent operating system standard is POSIX. Selecting an operating system that complies with the POSIX standard offers the best chance of long-term growth and support. The table below offers a quick feature comparision. It is only a guide. There is, of course, a lot more to the selection process than can be represented in this table or even this complete article. Another thing that is not shown is what is included with the operating system. For example, Linux and *BSD come with a wealth of development tools, applications and utilities that would cost thousands of dollars if needed for any of the other platforms.
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||