# Oracle Solaris

In informatica Oracle Solaris (noto in passato come Solaris, Solaris Operating System o Solaris OS) è un sistema operativo Unix originariamente sviluppato da Sun Microsystems, scritto in linguaggio C e basato su SunOS 5.0: il 27 gennaio 2010 Oracle Corporation ha acquisito Sun Microsystems, diventando proprietaria di Solaris (divenuto Oracle Solaris).
Conosciuto per la sua scalabilità, specialmente su sistemi SPARC, e per l'introduzione di molte caratteristiche innovative come DTrace, ZFS e Time Slider, Solaris supporta workstation basate su sistemi SPARC e x86. Certificato come una versione di Unix (contro la Single UNIX Specification), anche se, storicamente, era sviluppato come software proprietario, è supportato nei sistemi prodotti da tutti i principali venditori di server e, oggi, la maggior parte del suo codice è sotto licenze open source.

## Storia

Nei primi anni novanta Sun sostituì il SunOS 4 derivato da BSD con una versione di Unix System V Release 4 (SVR4), sviluppata insieme ad AT&T. Il nome di base della release era SunOS 5.0, ma allo stesso tempo fu introdotto un nuovo nome commerciale: Solaris 2.
Le micro release SunOS 4.1.x furono anch'esse retroattivamente denominate Solaris 1, una convenzione generalmente ignorata; il nome Solaris è quasi esclusivamente utilizzato per riferirsi a SunOS 5.0 e successivi derivati di SVR4.
Solaris è considerato essere l'insieme del kernel SunOS, dell'ambiente grafico, di ONC+ (Open Network Computing) e di altri componenti. La "minor version" di SunOS è inclusa nel numero di release di Solaris; per esempio, Solaris 2.4 incorporava SunOS 5.4. Dopo Solaris 2.6, Sun abbandonò il "2." nel nome, cosicché sappiamo che Solaris 7 incorpora SunOS 5.7 e che l'ultima release SunOS 5.10 costituisce il nucleo di Solaris 10.

## Descrizione
### Verso l'open source

Sebbene Oracle Solaris sia storicamente un software proprietario, a partire dal 31 gennaio 2005 alcuni suoi componenti sono stati rilasciati da Sun sotto licenza open source CDDL (Common Development and Distribution License) all'interno del progetto definito OpenSolaris. Le future versioni di (Sun) Solaris sarebbero state basate su OpenSolaris. OpenSolaris, secondo Sun, avrebbe dovuto aumentare il numero di applicazioni, comunità e utenti che lavoravano sotto piattaforme Solaris.
La prima versione di OpenSolaris, rilasciata da Sun, fu OpenSolaris 2008.05 a cui seguirono OpenSolaris 2008.11e OpenSolaris 2009.06 (ultima release rilasciata da Sun). Attualmente Oracle Corporation ha deciso di porre fine allo sviluppo di OpenSolaris, per dedicarsi completamente allo sviluppo di Oracle Solaris (che verrà sempre rilasciata sotto licenza open source CDDL, anche se il codice sorgente sarà reso disponibile solo dopo il rilascio ufficiale della release di Solaris).

### Architetture supportate

Oracle Solaris utilizza una base di codice comune per le architetture che supporta: SPARC, x86 e x64. Venne portato anche all'architettura PowerPC (piattaforma PReP) per la versione 2.5.1, ma il port fu cancellato praticamente appena fu rilasciato; tuttavia un nuovo port è in lavorazione ed attualmente è stata compilata una versione "embrionale" del kernel di Solaris che gira su Powermac G4 e Pegasos II G4. Il supporto per Itanium fu contemporaneamente pianificato ma mai portato sul mercato.
Oracle Solaris ha la reputazione di essere ben adatto ai sistemi SMP, supportando un grande numero di CPU.

### Ambienti desktop

La prima interfaccia grafica di Solaris fu OpenWindows. Esso fu seguito dal Common Desktop Environment (CDE) in Solaris 2.5. Con Solaris 10 è incluso il Java Desktop System, che è basato su GNOME.

### Versioni

In ordine decrescente, sono state rilasciate le seguenti versioni di Solaris:
| Versione (Solaris) | Versione (SunOS) | Data di rilascio | Descrizione |
| Solaris 11 | SunOS 5.11 | 9 novembre 2011 | Rimosso il supporto ad x86-32 (è comunque presente in Oracle Solaris 11 Express 2010.11), SPARC II-III-IV serie, rimosso CDE e rimossa lx64 branded zone. Introdotto ZFS come File System predefinito, Caiman, Crossbow, IPS (è comunque disponibile il vecchio sistema di gestione pacchetti SysV), GRUB, Immutable Zone, ZFS v5 e ZFS SPA v33 (con supporto alla deduplicazione, cifratura, RAIDZ/mirror hybrid allocator e zle). Introdotta la nuova modalità di distribuzione "Automated install" e un LiveCD per x86-64. Introdotti front-end sia per il Package Manager che per l'Update Manager e Time Slider (quest'ultimo complemente integrato in Nautilus), che fornisce una GUI per la gestione e la pianificazione degli snapshot con ZFS. Introdotto il driver i915 con supporto al KMS/DRI2 e X.org 1.10. La versione 11.1 (b175.1) ha introdotto il nuovo ZFS v6 e ZFS SPA v34, X.org 1.12, Firefox 10.0 ESR, la funzionalità keychange in ZFS crypto, GRUB2, supporto a UEFI, un profilo RBAC per AI, supporto per iSCSI nell'installer, Zones on Shared Storage, Zones Parallel Updates, supporto ai protocolli RDSv3 e IPoIB nelle zone, miglioramenti ad IPS (in particolar modo, una più dettagliata fase di pianificazione delle operazioni), miglioramenti a PAM e allo stack della crittografia, Data Center Bridging, DataLink Multipathing, VNIC live migration, FedFS, VM2, PulseAudio, USB 3.0 e miglioramenti alle Trusted Extensions. |
| Solaris 10 | SunOS 5.10 | 31 gennaio 2005 | Include il supporto a x64 (AMD64/EM64T), DTrace (Dynamic Tracing), Solaris Containers, Service Management Facility (SMF) che sostituisce gli script init.d, Network File System (v4). Modello di sicurezza dei "minimi privilegi". Rimosso il supporto per processori sun4m e UltraSPARC I funzionanti con velocità inferiori a 200 MHz. Rimosso il supporto per periferiche EISA, inclusi i PC basati su EISA. Aggiunto il JDS (basato su GNOME) come desktop predefinito ma il CDE è comunque incluso. La revisione 1/06 di Solaris 10 ha aggiunto per i sistemi x86 il bootloader GRUB e supporto a iSCSI. La revisione 6/06 di Solaris 10 ha aggiunto il nuovo filesystem ZFS di Sun. La revisione 11/06 di Solaris 10 ha aggiunto le Solaris Trusted Extensions ed i Logical Domains. |
| Solaris 9 | SunOS 5.9 | 28 maggio 2002 (SPARC) 10 gennaio 2003 (x86) | iPlanet Directory Server, Resource Manager, Solaris Volume Manager, attributi estesi per i file, generazione delle chiavi IKE IPsec e aggiunta la compatibilità Linux; OpenWindows abbandonato, supporto a sun4d rimosso. Il suo aggiornamento più recente è Solaris 9 (revisione 9/05). |
| Solaris 8 | SunOS 5.8 | febbraio 2000 | Include Solaris Multiplexed I/O, IPMP, supporto iniziale per IPv6 e IPsec (generazione delle chiavi solo manuale), debugger modulare "mdb". Introdotto il Role-Based Access Control (RBAC); supporto a sun4c rimosso. Il suo ultimo aggiornamento è Solaris 8 (revisione 2/04) . |
| Solaris 7 | SunOS 5.7 | novembre 1998 | La prima release per UltraSPARC a 64-bit. Aggiunto il supporto nativo per il meta-data logging del file system (UFS logging). Abbandonato il supporto MCA su piattaforma x86. Il suo ultimo aggiornamento è stato Solaris 7 (revisione 11/99) . |
| Solaris 2.6 | SunOS 5.6 | luglio 1997 | Include il protocollo Kerberos 5, Pluggable Authentication Modules, font TrueType, WebNFS, supporto ai file di grandi dimensioni . |
| Solaris 2.5.1 | SunOS 5.5.1 | maggio 1996 | Unica release a supportare la piattaforma PowerPC; aggiunto il supporto a Ultra Enterprise; ID utente e gruppo (uid_t, gid_t) espansi a 32-bit . |
| Solaris 2.5 | SunOS 5.5 | novembre 1995 | Prima release a supportare i sistemi UltraSPARC e include il CDE, il Network File System (v3) ed il NFS/TCP. Abbandonato il supporto sun4 (VMEbus). Aggiunto POSIX.1c-1995 pthreads . |
| Solaris 2.4 | SunOS 5.4 | novembre 1994 | Prima release unificata per SPARC/x86. Include il supporto runtime a OSF/Motif. |
| Solaris 2.3 | SunOS 5.3 | novembre 1993 | OpenWindows 3.3 cambia da NeWS a Display PostScript ed abbandona il supporto a SunView. Aggiunto il supporto per i file-system autofs e cachefs. Solo per SPARC. |
| Solaris 2.2 | SunOS 5.2 | maggio 1993 | Prima release a supportare l'architettura sun4d. Prima release a supportare le librerie per il multithreading (UI API per i threads in libthread). Solo per SPARC. |
| Solaris 2.1 | SunOS 5.1 | dicembre 1992 (SPARC) maggio 1993 (x86) | Aggiunto il supporto per le architetture sun4 e sun4m; prima release di Solaris per x86. Prima release di Solaris 2 a supportare l'SMP. |
| Solaris 2.0 | SunOS 5.0 | giugno 1992 | Release preliminare, supporto per la sola architettura sun4c. Prima comparsa di NIS+ . |
Solaris 7 non è più venduto e l'assistenza è cessata nell'agosto 2008; di Solaris 8 è cessata la vendita nel febbraio 2007 ed è stato supportato fino ad aprile 2012.
È disponibile anche un elenco più esauriente di alcune versioni di Solaris. Le release di Solaris sono descritte anche nelle Solaris 2 FAQ.