Single UNIX Specification
Da Wikipedia, l'enciclopedia libera.
Single UNIX Specification (SUS) è una definizione collettiva di una serie di standard che i sistemi operativi per computer devono rispettare per potersi fregiare del nome "Unix". La SUS viene sviluppata e mantenuta da Austin Group, ed è basata su specifiche precedenti dell'IEEE e di The Open Group.
Indice |
[modifica] Storia
La SUS è il prodotto scaturito da un progetto nato nella prima metà degli anni Ottanta per uniformare l'interfaccia del sistema operativo dal punto di vista dei software progettati per essere eseguiti sulle diverse varianti del sistema operativo Unix. La necessità di una standardizzazione si fece sentire poiché le aziende che avevano acquistto dei computer volevano essere in grado di sviluppare programmi che potevano essere utilizzati su sistemi di produttori diversi senza che fosse necessario reimplementarli da zero. Unix fu scelto come base di un'interfaccia di sistema standard poiché non era legato a nessun produttore in particolare. Questi standard divennero nel 1988 IEEE 1003 (registrato anche come ISO/IEC 9945), o POSIX, che significa proprio Interfaccia di Sistema Operativo Portabile per uniX.
Nei primi anni Novanta, diverse grandi aziende, che formarono l'alleanza COSE all'inizio delle Unix wars, crearono la Common API Specification, o Spec 1170. Questa specifica divenne sempre più popolare perché era disponibile gratuitamente, mentre l'IEEE chiedeva il pagamento di una somma di denaro consistente prima di fornire l'accesso alle specifiche POSIX.
A partire dal 1998, un gruppo di lavoro congiunto noto come Austin Group ha iniziato a sviluppare lo standard combinato che sarebbe divenuta la Single UNIX Specification Version 3, rilasciata il 30 Gennaio 2002.[1]
[modifica] Specifiche
L'interfaccia utente e il software del sistema operativo vengono descritti in quattro sezioni principali:
- Definizioni basilari - lista di definizioni e convenzioni utilizzate nelle specifiche e una lista di file d'intestazione C che devono essere forniti dai sistemi.
- Shell ed utility - lista di utility e descrizione della shell, sh.
- Interfacce di sistema - lista di chiamate di sistema C che devono essere forniti.
- Rationale - la motivazione che sta dietro allo standard
L'interfaccia di riga di comando e di scripting standard è la shell POSIX, un'estensione della Bourne shell basata su una delle prime versioni della Korn shell. Altri programmi a livello utente sono awk, echo, ed, vi, e centinaia di altri. È richiesta la presenza di servizi quali quelli di I/O (per i file, i terminali e le reti).
Una suite di test viene fornita insieme allo standard, chiamata PCTS (Posix Certification Test Suite).
Si noti che un sistema non deve includere necessariamente del codice sorgente derivato da AT&T Unix per poter rispettare la specifica: ad esempio, IBM OS/390, ora z/OS, è uno Unix secondo la specifica, sebbene non abbia alcun legame a livello di codice.
[modifica] Marchi per i sistemi
I marchi ufficiali di cui i sistemi operativi che rispettavano la specifica possono fregiarsi:
- UNIX 98 - per i sistemi conformi alla versione 2 della SUS (aderenza parziale)
- UNIX 03 - per i sistemi conformi alla versione 3 della SUS (aderenza totale)
In precedenza ne sono stati disponibili degli altri, adesso obsoleti:
- UNIX93 (del tutto obsoleto)
- UNIX95 (aderenza tutt'ora accettabile per alcuni sottosistemi software semplici)
[modifica] Sistemi aderenti alla specifica
[modifica] AIX
IBM AIX 5L V5.2 con alcuni aggiornamenti, ed AIX 5L V5.3, sono UNIX 03 compliant. AIX 5L V5.2 è UNIX 98 compliant.
[modifica] HP/UX
HP-UX 11i V3 Release B.11.31 è UNIX 03 compliant. Le release ad essa precedenti erano UNIX 95 compliant.
[modifica] Mac OS X
Mac OS X v10.5 "Leopard", rilasciato il 26 Ottobre 2007, è un sistema Open Brand UNIX 03 registered product se eseguito su processori Intel[2][3]
[modifica] SCO
UnixWare 7.1.3 è UNIX 95 compliant. SCO OpenServer 5 è UNIX 93 compliant.
[modifica] Solaris
Solaris 10 è UNIX 03 compliant su i sistemi x86 and SPARC a 32-bit e 64-bit. Solaris 8 e 9 sono UNIX 98 compliant sulle medesime piattaforme, eccezion fatta per i sistemi x86 a 64-bit.
Solaris 2.5.1 era stato certificato come UNIX 95 compliant sulla piattaforma PReP PowerPC nel 1996, ma il prodotto è stato ritirato prima che ne venisse venduta poco meno di una dozzina di copie.[4]
[modifica] Tru64 UNIX
Tru64 UNIX V5.1A (e versioni successive) sono UNIX 98 compliant.
[modifica] z/OS
Le versioni di IBM z/OS precedenti alla 1.9 sono UNIX 95 compliant.
IBM ha annunciato che z/OS 1.9, rilasciato il 28 Settembre 2007 si "allineerà meglio" ad UNIX 03 (non è chiaro, in questo momento, se rispetterà del tutto la specifica, o soltanto in maniera parziale).[5]
[modifica] ALtri sistemi che seguono la specifica
Altri sistemi operativi registrati come UNIX 95 o UNIX 93 compliant:
[modifica] Sistemi Unix-like non registrati
I distributori di sistemi Unix-like quali GNU/Linux e BSD non certificano, in genere, i loro prodotti, dal momento che il costo della certificazione e la loro natura estremamente mutevole rendono la procedura troppo costosa da affrontare.[6]
[modifica] BSD
Nessun sistema BSD liberamente disponibile ha la certificazione SUS.
FreeBSD ha un "Progetto di adeguamento agli standard C99 e POSIX" [2] che ha lo scopo di raggiungere l'aderenza ad un vasto subset della specifica.
Darwin è un sistema operativo open source basato su FreeBSD: a conti fatti è un subset open source di Mac OS X. Darwin rispetta la SUS 03[7].
[modifica] Linux
Linus Torvalds ha affermato che il kernel Linux è progettato per rispettare quanto più possibile la specifica POSIX, sebbene abbia cominciato a scriverne il codice prima di aver ottenuto una copia della stessa, basando il comportamento delle chiamate di sistema sulle pagine di manuale di sistemi Unix preesistenti.[citazione necessaria]
La Linux Standard Base è stata costituita nel 2001 come tentativo di standardizzare le strutture interne dei sistemi basati su Linux per migliorarne la compatibilità. Si basa, ed estende, le specifiche POSIX, la Single UNIX Specification ed altri standard aperti. È accettata de facto e seguita da molte distribuzioni Linux.[citazione necessaria]
[modifica] Vedere anche
- Andrew Josey (2004-10-28). "Single UNIX Specification Frequently Asked Questions". 1.9.
[modifica] Argomenti correlati
- Unix wars
- Native POSIX Thread Library per un'implementazione incentrata su Linux della libreria per i thread POSIX
- Man (Unix)l
- Sistema aperto (informatica)
- Standard aperto
[modifica] Fonti
- ^ (EN) The Open Group annuncia il completamento della revisione congiunta alle specifiche POSIX e Single UNIX
- ^ Mac OS X Leopard - Technology - UNIX in Leopard Technology Overview. Apple Inc.. URL consultato il 2007-06-11.
- ^ The Open Group. Certificazione per Mac OS X 10.5 Leopard su computer Macintosh con processore Intel. URL consultato il 2007-06-12.
- ^ (EN) http://www.ocf.berkeley.edu/solaris/versions/solaris/2.5.1.html
- ^ Anteprima: Soluzioni avanzate di IBM z/OS V1.9 per le vostre necessità d'impresa (PDF), pp. pp. 4, 15. IBM, 6 Febbraio 2007. URL consultato il 2007-06-11.
- ^ The Open Brand Fee Schedule. The Open Group. URL consultato il 2007-05-11. Lista dei prezzi da pagare per ottenere l'autorizzazione all'utilizzo del marchio UNIX
- ^ {en} [1]
[modifica] Collegamenti esterni
- (EN) The Single UNIX Specification
- (EN) Text of the Single UNIX Specification, Version 3
- (EN) The Portable Application Standards Committee
- (EN) Registro dei prodotti certificati per UNIX ed altri marchi Open Group
- (EN) Unix-Wars (Living Internet)
- (EN) Unix Standards (Eric S. Raymond, The Art of Unix Programming)