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.[4][5]
Solaris supports SPARC and x86-64workstations and servers from Oracle and other vendors. Solaris was registered as compliant with the Single UNIX Specification until 29 April 2019.[6][7][8]
Historically, Solaris was developed as proprietary software. In June 2005, Sun Microsystems released most of the codebase under the CDDL license, and founded the OpenSolarisopen-source project.[9] 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.[10][11] In August 2010, Oracle discontinued providing public updates to the source code of the Solaris kernel, effectively turning Solaris 11 back into a closed sourceproprietary operating system.[12] 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.[13]
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.[15] The justification for this new overbrand was that it encompassed not only SunOS, but also the OpenWindowsgraphical user interface and Open Network Computing (ONC) functionality.
Although SunOS 4.1.x micro releases were retroactively namedSolaris 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.[16]
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.[17] At the time, Sun also offered the Interactive Unix system that it had acquired from Interactive Systems Corporation.[18] 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.[21] While Oracle did have a large layoff of Solaris development engineering staff, development continued and Solaris 11.4 was released in 2018.[22][23]
Solaris has a reputation for being well-suited to symmetric multiprocessing, supporting a large number of CPUs.[24] It has historically been tightly integrated with Sun's SPARC hardware (including support for 64-bitSPARC 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 seriesworkstations, and servers based on AMDOpteron and IntelXeon processors, as well as x86 systems manufactured by companies such as Dell,[25]Hewlett-Packard, and IBM. As of 2009[update], 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"[26]
Solaris 2.5.1 included support for the PowerPC platform (PowerPC Reference Platform), but the port was canceled before the Solaris 2.6 release.[30] In January 2006, a community of developers at Blastwave began work on a PowerPC port which they named Polaris.[31] In October 2006, an OpenSolaris community project based on the Blastwave efforts and Sun Labs' Project Pulsar,[32] which re-integrated the relevant parts from Solaris 2.5.1 into OpenSolaris,[30] announced its first official source code release.[33]
A port of Solaris to the Intel Itanium architecture was announced in 1997 but never brought to market.[34]
On November 28, 2007, IBM, Sun, and Sine Nomine Associates demonstrated a preview of OpenSolaris for System z running on an IBM System zmainframe under z/VM,[35] 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[36] and on November 19 the same year, IBM authorized the use of Sirius on System z Integrated Facility for Linux (IFL) processors.[37]
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.[38]
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. The DVD ISO image can be used to load Solaris, running in-memory, rather than initiating the installation.
Additional software, like Apache, MySQL, etc. can be installed as well in a packaged form from sunfreeware[39] and OpenCSW.[40] 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.[clarification needed][citation needed]
Updates
There are several types of updates within each major release, including the Software Packages, and the Oracle Solaris Image.
This section needs expansion. You can help by adding to it. (December 2023)
Additional minor updates called Support Repository Updates (SRUs) and Critical Patch Update Packages (CPUs), require a support credential, thus are not freely available to the public.[41]
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.[42] 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.[43] The Java Desktop System is not included in Solaris 11 which instead ships with a stock version of GNOME.[44] 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.[45]
License
Traditional operating system license (1992 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.[46]
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.[47] 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.[48] 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.[49] 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.[50]
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:
First to support UltraSPARC and include CDE, NFSv3 and NFS/TCP. Dropped sun4 (VMEbus) support. POSIX.1c-1995 pthreads added. Doors added but undocumented.[54]
The only Solaris release that supports PowerPC;[55]Ultra Enterprise support added; user and group IDs (uid_t, gid_t) expanded to 32 bits,[56] also included processor sets[57] and early resource management technologies.
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.[59]
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.[62]
Old version, yet still maintained: 10
5.10
January 31, 2005; 19 years ago (2005-01-31)
January 2027
SVR4
before Oracle acquisition in March 2010, open source under CDDL
Solaris 10 5/08 ("U5") added CPU capping for Solaris Containers, performance improvements, SpeedStep support for Intel processors and PowerNow! support for AMD processors.[65][66]
Solaris 10 10/08 ("U6") added boot from ZFS and can use ZFS as its root file system. Solaris 10 10/08 also includes virtualization enhancements including the ability for a Solaris Container to automatically update its environment when moved from one system to another, Logical Domains support for dynamically reconfigurable disk and network I/O, and paravirtualization support when Solaris 10 is used as a guest OS in Xen-based environments such as Sun xVM Server.[67]
Solaris 10 5/09 ("U7") added performance and power management support for Intel Nehalem processors, container cloning using ZFS cloned file systems, and performance enhancements for ZFS on solid-state drives.
Solaris 10 10/09 ("U8") added user and group level ZFS quotas, ZFS cache devices and nss_ldap shadowAccount Support, improvements to patching performance.[68]
Solaris 10 9/10 ("U9") added physical to zone migration, ZFS triple parity RAID-Z and Oracle Solaris Auto Registration.[69]
Solaris 10 8/11 ("U10") added ZFS speedups and new features, Oracle Database optimization, faster reboot on SPARC system.[70][71]
Solaris 10 1/13 ("U11") see release notes.[72][73]
Old version, no longer maintained: 11 Express 2010.11
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,[74] updated GNOME. Removed Xsun, CDE,[75] and the /usr/ucb BSD-compatible commands[citation needed]
New features and enhancements (compared to Solaris 10) in software packaging, network virtualization, server virtualization, storage, security and hardware support:
Packaging: Image Packaging System, network and local package repositories; Automated Installer to automated provisioning, including Zones; Distro Constructor to create ISO 9660 filesystem images;
Network: network virtualization (vNICs, vSwitches, vRouters) and QoS, Exclusive–IP default for Zones, the dladm utility to manage data links, the ipadm utility to manage IP configuration (including IPMP), ProFTPD and enhancements;
Zones: Immutable (read–only) Zones, NFS servers in zones, delegated administration, P2V pre–flight check, the zonestat utility coupled with the libzonestat dynamically linked library;
Security: root as a role, netcat and enhancements;
A more comprehensive summary of some Solaris versions is also available.[92] Solaris releases are also described in the Solaris 2 FAQ.[93]
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 codenamedNevada, 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.[94] 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.[95] The first release of this distribution was OpenSolaris 2008.05.
The Solaris Express Community Edition (SXCE) was intended specifically for OpenSolaris developers.[96] It was updated every two weeks until it was discontinued in January 2010, with a recommendation that users migrate to the OpenSolaris distribution.[97] 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.
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."[98]
SchilliX[99] – The first LiveCD released after OpenSolaris code was opened to public.
napp-it[100] – 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).
StormOS (discontinued September 14, 2012[102]) – A lightweight desktop OS based on Nexenta OS and Xfce.
MartUX[103][104] – 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.[105] 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[106] 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.[107]
MilaX – A small Live CD/Live USB[108][109] 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[110] – A NAS implementation targeted at embedded systems.
Jaris OS – Live DVD and also installable.[111] Pronounced according to the IPA[how?] 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[112] SPARC distribution.[113] 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:[114]
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.
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.
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.
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.
^"Oracle Solaris Documentation". Operating Systems Documentation, Oracle official website. Oracle. Archived from the original on October 6, 2021. Retrieved October 31, 2021.
^Michael Totty (September 11, 2006). "Innovation Awards: The Winners Are..."Wall Street Journal. Retrieved July 5, 2008. The DTrace trouble-shooting software from Sun was chosen as the Gold winner in The Wall Street Journal's 2006 Technology Innovation Awards contest
^Michael Singer (January 25, 2005). "Sun Cracks Open Solaris". InternetNews.com. Archived from the original on June 22, 2011. Retrieved April 12, 2010.
^Steven Stallion / Oracle (August 13, 2010). "Update on SXCE". Iconoclastic Tendencies. Archived from the original on November 9, 2020. Retrieved September 30, 2010.
^"What are SunOS and Solaris?". Knowledge Base. Indiana University Technology Services. May 20, 2013. Archived from the original on November 4, 2013. Retrieved November 10, 2014.
^Vance, Ashlee (April 19, 2002). "Sun rethinks Solaris on Intel". Infoworld. IDG. Archived from the original on October 12, 2007. Retrieved December 11, 2006. Neither Microsoft Windows nor Linux can match Solaris in this type of high-end architecture, said Tony Iams, an analyst at Port Chester, N.Y., research company D.H. Brown and Associates. "Solaris has earned its reputation over a long period of time," Iams said. "They have been working on high-end scalability features for 10 years, and that's the only way you can get solid results."
^Demetrios Stellas (September 3, 1992). "SUMMARY: Solaris 2.0 vs 2.1". Sun Managers mailing list. Archived from the original on October 4, 2006. Retrieved September 10, 2006.
^There was a later PPC port with help from Sun, based on OpenSolaris that was withdrawn because the related hardware could not be produced in a RoHS compliant variant
^"Solaris 8". SunOS & Solaris Version History (OCF Solaris History). UC Berkeley Open Computing Facility. Archived from the original on September 7, 2006. Retrieved September 10, 2006.