Monday, November 28, 2011

Operating Systems Comparison

Operating Systems Comparison


Phil Hughes


This paper offers a comparison of the various operating systems that are commonly used in the business community.

  1. 1: The Computer Mix
  2. 2: Common Business Platforms
  3. 2.1: Legacy Systems
  4. 2.2: Microsoft Operating Systems
  5. 3: Proprietary UNIX Systems
  6. 4: Open UNIX-like Solutions
  7. 4.1: *BSD Systems
  8. 4.2: Linux
  9. 5: Other Platforms
  10. 6: Selecting the Right Operating System
  11. 6.1: Addresses your current needs
  12. 6.2: Interoperability
  13. 6.3: Support for different hardware platforms
  14. 6.4: Maintainability
  15. 6.5: non-proprietary
  16. 6.6: POSIX compatibility
  17. 7: OS Comparision Table


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.

1: The Computer Mix
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.

2: Common Business Platforms
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.

2.1: Legacy Systems
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
  • IBM mainframes which run proprietary IBM operating systems
  • Unisys and other mainframes with their own proprietary operating systems
  • Digital VAX systems running VMS


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.

3: Proprietary UNIX Systems
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:
  • HP/UX for Hewlett-Packard computer systems
  • Solaris for Sun and SPARC-compatible computer systems
  • IRIX for Silicon Graphics computer systems
  • Digital UNIX for Digital Alpha computer systems
  • AIX for IBM computer systems


SCO also offers SCO UNIX for personal computer systems based on Intel x86 and compatible chips. SCO UNIX differs from the systems in the list because SCO does not manufacture the hardware. This means you have a hardware choice within the constraints of using standard Intel x86 architecture.

These systems offer the following advantages:
  • Excellent connectivity -- UNIX, being the operating system of the Internet and World Wide Web, has always had to offer connectivity options.
  • Stability -- With over 25 years in the marketplace, UNIX systems tend to be very reliable. Note, however, that because modifications tend to be proprietary to a specific vendor it is possible that modifications do not make it back into the UNIX base that is used by all vendors.
  • Scalability -- UNIX technology has run on machines from the original 8086-based PC to multi-million dollar Cray supercomputers. It has proved that it it can grow with your needs. The down side of this statement is that not all manufacturers offer machines throughout the capabilities spectrum so you might have to change vendors to change machine sizes. This could create mean purchasing new versions of applications software for the new vendor/architecture.
  • Multi-user, multi-tasking -- UNIX has always been capable of running multiple programs at one time and supporting multiple users simultaneously. This means that file, print and remote access servers can be implemented using any UNIX-based system.


4: Open UNIX-like Solutions
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 BSD, 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:
  • They diverge from the mainstream UNIX (and POSIX) capabilities
  • They only run on x86 processors
These limitations make them less desirable for a general business solution that Linux but they are commonly used in dedicated systems such as routers. Their long development history and connectivity capabilities are what make them outstanding in dedicated communications systems.


4.2: Linux
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
  • Linux can grow with you. For example, if you are running a web or file server on Intel-based hardware and you need a higher performance system, you can upgrade to a system based on the Sun SPARC or Digital Alpha.
  • Linux can grow with the future. New hardware is being introduced every year. The Linux community has already proved it will port Linux to new computer architecture from multiple vendors.
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:
  • TCP/IP connectivity
  • Drivers for many serial, ISDN and Frame Relay controllers
  • Appletalk for Mac/Linux connectivity
  • SAMBA for Microsoft Windows/Linux connectivity
  • IPX protocol support for Novell Netware/Linux connectivity
5: Other Platforms
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.

6.2: Interoperability
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).

6.4: Maintainability
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:
  • Hardware support is simplified for software that runs on ``commodity hardware'' such as the generic PC platforms.
  • Some vendors offer hardware and software support.
  • Some operating systems come with source code or source code may be purchased. This makes support of special hardware and future expansion easier -- either with an internal support staff or outside contractors.
  • Single-platform solutions can easily lead to a dead end.


6.5: non-proprietary
The choice of non-proprietary operating systems can make it much easier to upgrade hardware as new technology becomes available.

6.6: POSIX compatibility
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.

7: OS Comparision Table
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.

Platform Comparison Chart
System
Connectivity
Stability
Scalability
Multi-user
Multi-platform
POSIX
Non-proprietary
Avg. Price
Legacy System
Poor
Good
Medium-Huge
Yes
No
No
No
$$$$
MS-DOS
None
Poor
Small
No
No
No
No
₨5,067.99
Windows 3.x
Poor
Poor
Small
No
No
No
No
₨5,067.99
Windows95
SMB Only
Fair
Small
Insecure
No
No
No
₨5,067.99
WindowsNT
SMB+
Fair
Small-Medium
Yes
Yes, 2
Some
No
₨25,339.93
UNIX
Excellent
Excellent
Small-Huge
Yes
Yes, Many
Yes
No
₨253,399.35
*BSD
Good
Excellent
Small-Large
Yes
No
Yes
Yes
₨2,533.99
Linux
Excellent
Excellent
Small-Huge
Yes
Yes, Many
Yes
Yes
₨2,533.99