Developer | Sun Microsystems (acquired by Oracle Corporation in 2010) |
---|---|
Written in | C, C++ |
OS family | Unix (SVR4) |
Working state | Current |
Source model | Mixed |
Initial release | June 1992 |
Latest release | 11.4 SRU61 / September 18, 2023 |
Marketing target | Server, workstation |
Platforms | Current: SPARC, x86-64 Former: IA-32, PowerPC |
Kernel type | Monolithic with dynamically loadable modules |
Userland | POSIX |
Default user interface | GNOME |
License | Various |
Official website | www |
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 the Single UNIX Specification 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 September 2017, Oracle laid off most of the Solaris teams.
In 2011, the Solaris 11 kernel source code leaked. 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: 64-bit SPARC 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 heavily marketed Solaris for use with both its own x86-64-based Sun Java Workstation and the x86-64 models of the Sun Ultra series 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:
License to Use. Customer is granted a non-exclusive and non-transferable license ("License") for the use of the accompanying binary software in machine-readable form, together with accompanying documentation ("Software"), by the number of users and the class of computer hardware for which the corresponding fee has been paid.
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-Sun 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:
If You are an educational institution vested with the power to confer official high school, associate, bachelor, master and/or doctorate degrees, or local equivalent, ("Degree(s)"), You may also use the Programs as part of Your educational curriculum for students enrolled in Your Degree program(s) solely as required for the conferral of such Degree (collectively "Educational Use").
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:
Legend: | Old version, not maintained | Older version, still maintained | Current stable version |
---|
Solaris version | SunOS version | Release date | End of support | Basis | License form | Major new features | |
---|---|---|---|---|---|---|---|
SPARC | x86 | SPARC/x86 | |||||
1.x | 4.1.x | 1991–1994 | – | September 2003 | 4.3BSD | Traditional license | SunOS 4 rebranded as Solaris 1 for marketing purposes. See SunOS article for more information. |
2.0 | 5.0 | June 1992 | – | January 1999 | SVR4 | Traditional license | Preliminary release (primarily available to developers only), support for only the sun4c architecture. First appearance of NIS+. |
2.1 | 5.1 | December 1992 | May 1993 | April 1999 | SVR4 | Traditional license | Support for sun4 and sun4m architectures added; first Solaris x86 release. First Solaris 2 release to support SMP. |
2.2 | 5.2 | May 1993 | – | May 1999 | SVR4 | Traditional license | SPARC-only release. First to support sun4d architecture. First to support multithreading libraries (UI threads API in libthread). |
2.3 | 5.3 | November 1993 | – | June 2002 | SVR4 | Traditional license | SPARC-only release. OpenWindows 3.3 switches from NeWS to Display PostScript and drops SunView support. Support added for autofs and CacheFS filesystems. |
2.4 | 5.4 | November 1994 | September 2003 | SVR4 | Traditional license | First unified SPARC/x86 release. Includes OSF/Motif runtime support. | |
2.5 | 5.5 | November 1995 | December 2003 | SVR4 | Traditional license | First to support UltraSPARC and include CDE, NFSv3 and NFS/TCP. Dropped sun4 (VMEbus) support. POSIX.1c-1995 pthreads added. Doors added but undocumented. | |
2.5.1 | 5.5.1 | May 1996 | September 2005 | SVR4 | Traditional license | The only Solaris release that supports PowerPC; Ultra Enterprise support added; user and group IDs (uid_t, gid_t) expanded to 32 bits, also included processor sets and early resource management technologies. | |
2.6 | 5.6 | July 1997 | July 2006 | SVR4 | Traditional license | Includes Kerberos 5, PAM, TrueType fonts, WebNFS, large file support, enhanced procfs. SPARCserver 600MP series support dropped. Last update was Solaris 2.6 5/98. | |
7 | 5.7 | November 1998 | August 2008 | SVR4 | Traditional license | The first 64-bit UltraSPARC release. Added native support for file system meta-data logging (UFS logging). Dropped MCA support on x86 platform. Sun dropped the prefix "2." in the Solaris version number, leaving "Solaris 7". Last update was Solaris 7 11/99. | |
8 | 5.8 | February 2000 | March 2012 | SVR4 | Traditional license | Includes Multipath I/O, Solstice DiskSuite, IPMP, first support for IPv6 and IPsec (manual keying only), mdb Modular Debugger. Introduced Role-Based Access Control (RBAC); sun4c support removed. Last update is Solaris 8 2/04. | |
9 | 5.9 | May 28, 2002 | January 10, 2003 | October 2014 | SVR4 | Traditional license | iPlanet Directory Server, Resource Manager, extended file attributes, IKE IPsec keying, and Linux compatibility added; OpenWindows dropped, sun4d support removed. Most current update is Solaris 9 9/05 HW. |
10 | 5.10 | January 31, 2005 | January 2027 | SVR4 | before Oracle acquisition in March 2010, open source under CDDL after March 2010, Post-Oracle closed source |
Includes x86-64 (AMD64/Intel 64) support, DTrace (Dynamic Tracing), Solaris Containers, Service Management Facility (SMF) which replaces init.d scripts, NFSv4. Least privilege security model. Support for sun4m and UltraSPARC I processors removed. Support for EISA-based PCs removed. Adds Java Desktop System (based on GNOME) as default desktop.
| |
11 Express 2010.11 | 5.11 | November 15, 2010 | November 2011 | SVR4 | Post-Oracle closed source | Adds new packaging system (IPS – Image Packaging System) and
associated tools, ZFS (only) for boot, 1 GB RAM min., x86, Solaris 10
Containers, network virtualization and quality of service (QoS), virtual consoles, ZFS encryption and deduplication, fast reboot, updated GNOME. Removed Xsun, CDE, and the /usr/ucb BSD-compatible commands
| |
11 | 5.11 | November 9, 2011 | ? | SVR4 | Post-Oracle closed source | New features and enhancements (compared to Solaris 10) in software
packaging, network virtualization, server virtualization, storage,
security and hardware support:
| |
11.1 | 5.11 | October 3, 2012 | ? | SVR4 | Post-Oracle closed source | New features and enhancements:
| |
11.2 | 5.11 | April 29, 2014 | ? | SVR4 | Post-Oracle closed source | New features and enhancements:
| |
11.3 | 5.11 | October 26, 2015 | January 2027 | SVR4 | Post-Oracle closed source | New features and enhancements:
| |
11.4 | 5.11 | August 28, 2018 | November 2034 | SVR4 | Post-Oracle closed source | New features and enhancements: |
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. 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.
- SmartOS – Virtualization centered derivative from MNX Solutions (previously 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.
- Dyson – illumos kernel with GNU userland and packages from Debian. Project is no longer active and the website is offline.
- 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:
All in all, Sun has stayed the course with Solaris 9. While its more user-friendly management is welcome, that probably won't be enough to win over converts. What may is the platform's reliability, flexibility, and power.
- Robert Lipschutz also reviewed Solaris 10:
Be that as it may, since the Solaris 10 download is free, it behooves any IT manager to load it on an extra server and at least give it a try.
- Tom Henderson reviewed Solaris 10 for Network World:
Solaris 10 provides a flexible background for securely dividing system resources, providing performance guarantees and tracking usage for these containers. Creating basic containers and populating them with user applications and resources is simple. But some cases may require quite a bit of fine-tuning.
- Robert Escue for OSNews:
I think that Sun has put some really nice touches on Solaris 10 that make it a better operating system for both administrators and users. The security enhancements are a long time coming, but are worth the wait. Is Solaris 10 perfect, in a word no it is not. But for most uses, including a desktop OS I think Solaris 10 is a huge improvement over previous releases.
- Thomas Greene for The Register:
We've had fun with Solaris 10. It's got virtues that we definitely admire. What it needs to compete with Linux will be easier to bring about than what it's already got. It could become a Linux killer, or at least a serious competitor on Linux's turf. The only question is whether Sun has the will to see it through.