What's the difference between SunOS and Solaris?

Posted by kevinw on 2006-10-31 13:22
OS: Solaris | Product: Main | tags: solaris sparc sunos version x86

What's the difference between SunOS and Solaris? What's a SPARC? Do SPARC packages run on Intel/x86?


The terms SunOS and Solaris both refer to the Solaris operating environment released by Sun Microsystems (http://www.sun.com/). Several years ago they were separate products, but now they are one and the same. SunOS was replaced in marketing material by Solaris, but there are still some places in a modern Solaris system where SunOS is made reference to (most notably in the output of "uname").

SunOS version numbers that might be seen today range from 4.x (pre-Solaris versions of SunOS) to 5.10 (which corresponds to Solaris 2.10 or Solaris 10).

Solaris version numbers that are common range from 2.5 (a.k.a. Solaris 5) to 2.10 (a.k.a. Solaris 10). The "2." prefix is not used in marketing material for Solaris -- it is only used internally.

Putting this all together, SunOS 5.10 is the same beast as Solaris 2.10 which is the same as Solaris 10.

As well as having multiple names and multiple version identifiers, Solaris runs primarily on two types of CPUs. One is the SPARC architecture, which is an advanced RISC architecture, and the other is the Intel/x86 architecture. Sun Microsystems is the primary source of SPARC-based systems, while the x86 version of Solaris runs on commodity IA32 (x86) and AMD x86_64 machines. The two machine types are not compatible; packages for SPARC will not run on x86, and vice versa.

A notable feature of Solaris is that modern versions of the operating system will often have no problems running programs built for earlier versions. For example, ActivePerl built on Solaris 6 will run without issue on Solaris 10. The converse is not true, however. Programs built on a given version of the system will usually not work on an earlier version.

Recently there has been an initiative called OpenSolaris (http://www.opensolaris.org/) that embodies the next version of Solaris. Currently code-named Nevada, it forms the basis for what will be Solaris 11 (a.k.a. Solaris 2.11, a.k.a. SunOS 5.11). Compatibility with software built for earlier versions of Solaris is expected to be mostly kept.