Oracle Solaris
Solaris is a proprietary Unix operating system originally developed by Sun Microsystems. After the Sun acquisition by Oracle in 2010, it was renamed Oracle Solaris.

Solaris superseded the company's earlier SunOS in 1993, and became known for its scalability, especially on SPARC systems, and for originating many innovative features such as DTrace, ZFS and Time Slider. 
Solaris supports SPARC and x86-64 workstations and servers from Oracle and other vendors. Solaris was registered as compliant with UNIX 03 until 29 April 2019.

Historically, Solaris was developed as proprietary software. In June 2005, Sun Microsystems released most of the codebase under the CDDL license, and founded the OpenSolaris open-source project. With OpenSolaris, Sun wanted to build a developer and user community around the software. After the acquisition of Sun Microsystems in January 2010, Oracle decided to discontinue the OpenSolaris distribution and the development model. In August 2010, Oracle discontinued providing public updates to the source code of the Solaris kernel, effectively turning Solaris 11 back into a closed source proprietary operating system. Following that, OpenSolaris was forked as illumos and is alive through several illumos distributions.

In 2011, the Solaris 11 kernel source code leaked to BitTorrent.   Through the Oracle Technology Network (OTN), industry partners can gain access to the in-development Solaris source code. Solaris is developed under a proprietary development model, and only the source for open-source components of Solaris 11 is available for download from Oracle.

History

In 1987, AT&T Corporation and Sun announced that they were collaborating on a project to merge the most popular Unix variants on the market at that time: Berkeley Software Distribution, UNIX System V, and Xenix. This became Unix System V Release 4 (SVR4).

On September 4, 1991, Sun announced that it would replace its existing BSD-derived Unix, SunOS 4, with one based on SVR4. This was identified internally as SunOS 5, but a new marketing name was introduced at the same time: Solaris 2. The justification for this new overbrand was that it encompassed not only SunOS, but also the OpenWindows graphical user interface and Open Network Computing (ONC) functionality.

Although SunOS 4.1.x micro releases were retroactively named Solaris 1 by Sun, the Solaris name is used almost exclusively to refer only to the releases based on SVR4-derived SunOS 5.0 and later.

For releases based on SunOS 5, the SunOS minor version is included in the Solaris release number. For example, Solaris 2.4 incorporates SunOS 5.4. After Solaris 2.6, the 2. was dropped from the release name, so Solaris 7 incorporates SunOS 5.7, and the latest release SunOS 5.11 forms the core of Solaris 11.4.

Although SunSoft stated in its initial Solaris 2 press release their intent to eventually support both SPARC and x86 systems, the first two Solaris 2 releases, 2.0 and 2.1, were SPARC-only.  An x86 version of Solaris 2.1 was released in June 1993, about 6 months after the SPARC version, as a desktop and uniprocessor workgroup server operating system. It included the Wabi emulator to support Windows applications. At the time, Sun also offered the Interactive Unix system that it had acquired from Interactive Systems Corporation. In 1994, Sun released Solaris 2.4, supporting both SPARC and x86 systems from a unified source code base.

On September 2, 2017, Simon Phipps, a former Sun Microsystems employee not hired by Oracle in the acquisition, reported on Twitter that Oracle had laid off the Solaris core development staff, which many interpreted as sign that Oracle no longer intended to support future development of the platform. While Oracle did have a large layoff of Solaris development engineering staff, development continued and Solaris 11.4 was released in 2018.

Supported architectures
Solaris uses a common code base for the platforms it supports: SPARC and i86pc (which includes both x86 and x86-64).

Solaris has a reputation for being well-suited to symmetric multiprocessing, supporting a large number of CPUs. It has historically been tightly integrated with Sun's SPARC hardware (including support for 64-bit SPARC applications since Solaris 7), with which it is marketed as a combined package. This has led to more reliable systems, but at a cost premium compared to commodity PC hardware. However, it has supported x86 systems since Solaris 2.1 and 64-bit x86 applications since Solaris 10, allowing Sun to capitalize on the availability of commodity 64-bit CPUs based on the x86-64 architecture. Sun has heavily marketed Solaris for use with both its own "x64" workstations and servers based on AMD Opteron and Intel Xeon processors, as well as x86 systems manufactured by companies such as Dell, Hewlett-Packard, and IBM. As of 2009, the following vendors support Solaris for their x86 server systems:
 Dell – will "test, certify, and optimize Solaris and OpenSolaris on its rack and blade servers and offer them as one of several choices in the overall Dell software menu"
 Intel
 Hewlett Packard Enterprise – distributes and provides software technical support for Solaris on BL, DL, and SL platforms
 Fujitsu Siemens

Other platforms
Solaris 2.5.1 included support for the PowerPC platform (PowerPC Reference Platform), but the port was canceled before the Solaris 2.6 release. In January 2006, a community of developers at Blastwave began work on a PowerPC port which they named Polaris. In October 2006, an OpenSolaris community project based on the Blastwave efforts and Sun Labs' Project Pulsar, which re-integrated the relevant parts from Solaris 2.5.1 into OpenSolaris, announced its first official source code release.

A port of Solaris to the Intel Itanium architecture was announced in 1997 but never brought to market.

On November 28, 2007, IBM, Sun, and Sine Nomine Associates demonstrated a preview of OpenSolaris for System z running on an IBM System z mainframe under z/VM, called Sirius (in analogy to the Polaris project, and also due to the primary developer's Australian nationality: HMS Sirius of 1786 was a ship of the First Fleet to Australia). On October 17, 2008, a prototype release of Sirius was made available and on November 19 the same year, IBM authorized the use of Sirius on System z Integrated Facility for Linux (IFL) processors.

Solaris also supports the Linux platform application binary interface (ABI), allowing Solaris to run native Linux binaries on x86 systems. This feature is called Solaris Containers for Linux Applications (SCLA), based on the branded zones functionality introduced in Solaris 10 8/07.

Installation and usage options

Solaris can be installed from various pre-packaged software groups, ranging from a minimalistic Reduced Network Support to a complete Entire Plus OEM. Installation of Solaris is not necessary for an individual to use the system. Additional software, like Apache, MySQL, etc. can be installed as well in a packaged form from sunfreeware and OpenCSW. Solaris can be installed from physical media or a network for use on a desktop or server, or be used without installing on a desktop or server.

Desktop environments

Early releases of Solaris used OpenWindows as the standard desktop environment. In Solaris 2.0 to 2.2, OpenWindows supported both NeWS and X applications, and provided backward compatibility for SunView applications from Sun's older desktop environment. NeWS allowed applications to be built in an object-oriented way using PostScript, a common printing language released in 1982. The X Window System originated from MIT's Project Athena in 1984 and allowed for the display of an application to be disconnected from the machine where the application was running, separated by a network connection. Sun's original bundled SunView application suite was ported to X.

Sun later dropped support for legacy SunView applications and NeWS with OpenWindows 3.3, which shipped with Solaris 2.3, and switched to X11R5 with Display Postscript support. The graphical look and feel remained based upon OPEN LOOK. OpenWindows 3.6.2 was the last release under Solaris 8. The OPEN LOOK Window Manager (olwm) with other OPEN LOOK specific applications were dropped in Solaris 9, but support libraries were still bundled, providing long term binary backwards compatibility with existing applications. The OPEN LOOK Virtual Window Manager (olvwm) can still be downloaded for Solaris from sunfreeware and works on releases as recent as Solaris 10.

Sun and other Unix vendors created an industry alliance to standardize Unix desktops. As a member of the Common Open Software Environment (COSE) initiative, Sun helped co-develop the Common Desktop Environment (CDE). This was an initiative to create a standard Unix desktop environment. Each vendor contributed different components: Hewlett-Packard contributed the window manager, IBM provided the file manager, and Sun provided the e-mail and calendar facilities as well as drag-and-drop support (ToolTalk). This new desktop environment was based upon the Motif look and feel and the old OPEN LOOK desktop environment was considered legacy. CDE unified Unix desktops across multiple open system vendors. CDE was available as an unbundled add-on for Solaris 2.4 and 2.5, and was included in Solaris 2.6 through 10.

In 2001, Sun issued a preview release of the open-source desktop environment GNOME 1.4, based on the GTK+ toolkit, for Solaris 8. Solaris 9 8/03 introduced GNOME 2.0 as an alternative to CDE. Solaris 10 includes Sun's Java Desktop System (JDS), which is based on GNOME and comes with a large set of applications, including StarOffice, Sun's office suite. Sun describes JDS as a "major component" of Solaris 10. The Java Desktop System is not included in Solaris 11 which instead ships with a stock version of GNOME. Likewise, CDE applications are no longer included in Solaris 11, but many libraries remain for binary backwards compatibility.

The open source desktop environments KDE and Xfce, along with numerous other window managers, also compile and run on recent versions of Solaris.

Sun was investing in a new desktop environment called Project Looking Glass since 2003. The project has been inactive since late 2006.

License

Traditional operating system license (1982 to 2004)
For versions up to 2005 (Solaris 9), Solaris was licensed under a license that permitted a customer to buy licenses in bulk, and install the software on any machine up to a maximum number.  The key license grant was:

In addition, the license provided a "License to Develop" granting rights to create derivative works, restricted copying to only a single archival copy, disclaimer of warranties, and the like.  The license varied only little through 2004.

Open source (2005 until March 2010)
From 2005–10, Sun began to release the source code for development builds of Solaris under the Common Development and Distribution License (CDDL) via the OpenSolaris project.  This code was based on the work being done for the post-Solaris 10 release (code-named "Nevada"; eventually released as Oracle Solaris 11).  As the project progressed, it grew to encompass most of the necessary code to compile an entire release, with a few exceptions.

Post-Oracle closed source (March 2010 to present)
When Sun was acquired by Oracle in 2010, the OpenSolaris project was discontinued after the board became unhappy with Oracle's stance on the project. In March 2010, the previously freely available Solaris 10 was placed under a restrictive license that limited the use, modification and redistribution of the operating system. The license allowed the user to download the operating system free of charge, through the Oracle Technology Network, and use it for a 90-day trial period. After that trial period had expired the user would then have to purchase a support contract from Oracle to continue using the operating system.

With the release of Solaris 11 in 2011, the license terms changed again. The new license allows Solaris 10 and Solaris 11 to be downloaded free of charge from the Oracle Technology Network and used without a support contract indefinitely; however, the license only expressly permits the user to use Solaris as a development platform and expressly forbids commercial and "production" use. Educational use is permitted in some circumstances. From the OTN license:

When Solaris is used without a support contract it can be upgraded to each new "point release"; however, a support contract is required for access to patches and updates that are released monthly.

Version history

Notable features of Solaris include DTrace, Doors, Service Management Facility, Solaris Containers, Solaris Multiplexed I/O, Solaris Volume Manager, ZFS, and Solaris Trusted Extensions.

Updates to Solaris versions are periodically issued. In the past, these were named after the month and year of their release, such as "Solaris 10 1/13"; as of Solaris 11, sequential update numbers are appended to the release name with a period, such as "Oracle Solaris 11.4".

In ascending order, the following versions of Solaris have been released:

 

A more comprehensive summary of some Solaris versions is also available. Solaris releases are also described in the Solaris 2 FAQ.

Development release
The underlying Solaris codebase has been under continuous development since work began in the late 1980s on what was eventually released as Solaris 2.0. Each version such as Solaris 10 is based on a snapshot of this development codebase, taken near the time of its release, which is then maintained as a derived project. Updates to that project are built and delivered several times a year until the next official release comes out.

The Solaris version under development by Sun since the release of Solaris 10 in 2005, was codenamed Nevada, and is derived from what is now the OpenSolaris codebase.

In 2003, an addition to the Solaris development process was initiated. Under the program name Software Express for Solaris (or just Solaris Express), a binary release based on the current development basis was made available for download on a monthly basis, allowing anyone to try out new features and test the quality and stability of the OS as it progressed to the release of the next official Solaris version. A later change to this program introduced a quarterly release model with support available, renamed Solaris Express Developer Edition (SXDE).

In 2007, Sun announced Project Indiana with several goals, including providing an open source binary distribution of the OpenSolaris project, replacing SXDE. The first release of this distribution was OpenSolaris 2008.05.

The Solaris Express Community Edition (SXCE) was intended specifically for OpenSolaris developers. It was updated every two weeks until it was discontinued in January 2010, with a recommendation that users migrate to the OpenSolaris distribution. Although the download license seen when downloading the image files indicates its use is limited to personal, educational and evaluation purposes, the license acceptance form displayed when the user actually installs from these images lists additional uses including commercial and production environments.

SXCE releases terminated with build 130 and OpenSolaris releases terminated with build 134 a few weeks later. The next release of OpenSolaris based on build 134 was due in March 2010, but it was never fully released, though the packages were made available on the package repository. Instead, Oracle renamed the binary distribution Solaris 11 Express, changed the license terms and released build 151a as 2010.11 in November 2010.

Open source derivatives

Current

 illumos – A fully open source fork of the project, started in 2010 by a community of Sun OpenSolaris engineers and Nexenta OS. Note that OpenSolaris was not 100% open source: Some drivers and some libraries were property of other companies that Sun (now Oracle) licensed and was not able to release.
 OpenIndiana – A project under the illumos umbrella aiming "... to become the de facto OpenSolaris distribution installed on production servers where security and bug fixes are required free of charge."
 SchilliX – The first LiveCD released after OpenSolaris code was opened to public.
 napp-it – A webmanaged ZFS storage appliance based on Solaris and the free forks like OmniOS with a Free and Pro edition.
 NexentaStor – Optimized for storage workloads, based on Nexenta OS.
 Dyson – illumos kernel with GNU userland and packages from Debian. Project is no longer active and the website is offline.
 SmartOS – Virtualization centered derivative from Joyent.

Discontinued
 OpenSolaris – A project initiated by Sun Microsystems, discontinued after the acquisition by Oracle.
 Nexenta OS (discontinued October 31, 2012) – First distribution based on Ubuntu userland with Solaris-derived kernel.
 StormOS (discontinued September 14, 2012) – A lightweight desktop OS based on Nexenta OS and Xfce.
 MartUX – The first SPARC distribution of OpenSolaris, with an alpha prototype released by Martin Bochnig in April 2006. It was distributed as a Live CD but is later available only on DVD as it has had the Blastwave community software added. Its goal was to become a desktop operating system. The first SPARC release was a small Live CD, released as marTux_0.2 Live CD in summer of 2006, the first straight OpenSolaris distribution for SPARC (not to be confused with GNOME metacity theme). It was later re-branded as MartUX and the next releases included full SPARC installers in addition to the Live media. Much later, MartUX was re-branded as OpenSXCE when it moved to the first OpenSolaris release to support both SPARC and Intel architectures after Sun was acquired by Oracle.
 MilaX – A small Live CD/Live USB with minimal set of packages to fit a 90 MB image.
 EON ZFS Storage – A NAS implementation targeted at embedded systems.
 Jaris OS – Live DVD and also installable. Pronounced according to the IPA but in English as Yah-Rees. This distribution has been heavily modified to fully support a version of Wine called Madoris that can install and run Windows programs at native speed. Jaris stands for "Japanese Solaris". Madoris is a combination of the Japanese word for Windows "mado" and Solaris.
 OpenSXCE – An OpenSolaris distribution release for both 32-bit and 64-bit x86 platforms and SPARC microprocessors, initially produced from OpenSolaris source code repository, ported to the illumos source code repository to form OpenIndiana's first SPARC distribution. Notably, the first OpenSolaris distribution with illumos source for SPARC based upon OpenIndiana, OpenSXCE finally moved to a new source code repository, based upon DilOS.

Reception 
Robert Lipschutz and Gregg Harrington from PC Magazine reviewed Solaris 9 in 2002:

Robert Lipschutz also reviewed Solaris 10:

Tom Henderson reviewed Solaris 10 for Network World:

Robert Escue for OSNews:

Thomas Greene for The Register:

See also
 IBM AIX
 HP-UX
 illumos
 Trusted Solaris
 Oracle VM Server for SPARC

References

External links
 
 Solaris Documentation
 
 Lifetime Support Policy: Oracle and Sun System Software and Operating Systems
 
 SunHELP – Sun/Solaris News, References, and Information
 Nikolai Bezroukov. Solaris vs. Linux: Ecosystem-based Approach and Framework for the Comparison in Large Enterprise Environments – Large Softpanorama article comparing Solaris 10 and Linux 2.6
  – Solaris information site by Michael Holve

1993 software
Formerly free software
OpenSolaris
Oracle Corporation
Oracle software
Proprietary operating systems
Sun Microsystems software
UNIX System V
X86 operating systems