Un système d'exploitation de type Unix (parfois appelé UN*X, *nix ou *NIX ) est un système qui se comporte de manière similaire à un système Unix , sans pour autant être nécessairement conforme à une version de la spécification Single UNIX ou certifié selon celle-ci . Une application de type Unix est une application qui se comporte comme la commande ou l'interpréteur de commandes Unix correspondant . Bien qu'il existe des principes généraux de conception pour Unix, aucune norme technique ne définit ce terme, et les avis peuvent diverger quant au degré de similarité entre un système d'exploitation, une application et un système Unix donné. Linux , FreeBSD et OpenBSD sont des exemples bien connus de systèmes d'exploitation de type Unix . Ces systèmes sont fréquemment utilisés sur des serveurs, des ordinateurs personnels et d'autres appareils. De nombreuses applications populaires, telles que le serveur web Apache et l' interpréteur de commandes Bash , sont également conçues pour être utilisées sur des systèmes de type Unix.
D'autres parties considèrent fréquemment « Unix » comme une marque générique . Certaines ajoutent un caractère générique au nom pour former une abréviation comme « Un*x » ou « *nix », car les systèmes de type Unix portent souvent des noms similaires, tels que AIX , A/UX , HP-UX , IRIX , Linux , Minix , Ultrix , Xenix et XNU . Ces abréviations ne correspondent pas littéralement à de nombreux noms de systèmes, mais sont généralement reconnues comme désignant tout système UNIX, descendant ou similaire, même ceux portant des noms totalement différents comme Darwin / macOS , illumos / Solaris ou FreeBSD .
En 2007, Wayne R. Gray a intenté une action en justice pour contester le statut de marque UNIX, affirmant que Novell n'en était pas le propriétaire légitime lors de son transfert à X/Open (se référant aux déclarations de The SCO Group, déjà invalidées par un tribunal). Il a été débouté en première instance et en appel, la cour confirmant la validité de la marque et la propriété de ses détenteurs.
Histoire
Les systèmes de type Unix ont commencé à apparaître à la fin des années 1970 et au début des années 1980. De nombreuses versions propriétaires , telles que Idris (1978), UNOS (1982), Coherent (1983) et UniFlex (1985), visaient à fournir aux entreprises les fonctionnalités disponibles pour les utilisateurs universitaires d'UNIX.
Lorsque AT&T autorisa la sous-licence binaire commerciale relativement peu coûteuse d'UNIX en 1979, divers systèmes propriétaires furent développés sur cette base, notamment AIX , HP-UX , IRIX , SunOS , Tru64 , Ultrix et Xenix . Ces systèmes supplantèrent largement les clones propriétaires. L'incompatibilité croissante entre eux mena à la création de normes d'interopérabilité, telles que POSIX et la spécification UNIX unique (SUN) .
Diverses alternatives gratuites, peu coûteuses et sans restriction à UNIX ont émergé dans les années 1980 et 1990, notamment 4.4BSD , Linux et Minix . Certaines d'entre elles ont ensuite servi de base à des systèmes commerciaux de type « Unix », tels que BSD/OS et macOS . Plusieurs versions de macOS (pour Mac) fonctionnant sur des ordinateurs Mac équipés de processeurs Intel et Apple Silicon ont été certifiées conformes à la spécification UNIX unique . Les variantes de BSD sont issues d'UNIX développé par l'Université de Californie à Berkeley, avec un code source UNIX provenant des laboratoires Bell . Cependant, la base de code de BSD a évolué depuis, remplaçant l'intégralité du code d'AT&T. Étant donné que les variantes BSD ne sont pas certifiées conformes à la spécification UNIX unique, elles sont qualifiées de « type UNIX » plutôt que d’« UNIX ».
Catégories
Eric S. Raymond et Rob Landley ont suggéré qu'il existe trois types de systèmes de type Unix : « UNIX génétique », dérivé de l'UNIX original des Bell Labs, « UNIX de marque » (ou « UNIX de marque »), pour lequel l' Open Group a concédé une licence sur la marque UNIX, et une troisième catégorie de systèmes d'exploitation qui ne font partie d'aucune de ces catégories mais qui sont inspirés de l'UNIX original des Bell Labs.
UNIX génétique
Ces systèmes ont un lien historique avec le code source d' AT&T . La plupart des systèmes UNIX commerciaux appartiennent à cette catégorie. Il en va de même pour les systèmes BSD , issus des travaux menés à l' Université de Californie à Berkeley à la fin des années 1970 et au début des années 1980. Certains de ces systèmes ne contiennent aucun code original d'AT&T, mais peuvent néanmoins retracer leur origine jusqu'aux conceptions d'AT&T.
Marque déposée UNIX
Les systèmes UNIX de marque, ou systèmes UNIX « commercialisés » — à vocation majoritairement —Open Group comme conformes à la spécification UNIX unique et sont autorisés à porter le nom UNIX. La plupart de ces systèmes sont des dérivés commerciaux du code source de System V, sous une forme ou une autre. Apple macOS 10.5 et versions ultérieures sont une variante BSD certifiée, et EulerOS et Inspur K-UX sont des distributions Linux certifiées. Quelques autres systèmes (comme IBM z/OS) ont obtenu la marque grâce à une couche de compatibilité POSIX et ne sont pas, par ailleurs, des systèmes UNIX intrinsèques. De nombreux systèmes UNIX anciens ne répondent plus à cette définition.
Autres systèmes UNIX
De manière générale, tout système de type Unix dont le comportement est globalement conforme à la spécification UNIX, notamment grâce à un programme gérant les sessions de connexion et de ligne de commande ; plus précisément, cela peut concerner des systèmes tels que Linux ou Minix , qui fonctionnent de façon similaire à un système UNIX mais n’ont aucun lien génétique ou de marque avec le code source d’AT&T. La plupart des implémentations libres/open source de l’architecture UNIX, qu’elles soient ou non conformes à la spécification UNIX, relèvent de la définition restrictive de cette troisième catégorie en raison du coût élevé de la certification Open Group, qui s’élève à plusieurs milliers de dollars.
Dennis Ritchie , l'un des créateurs originaux d'Unix, a mentionné Linux comme l'un des dérivés directs d'Unix les plus sains en raison de sa forte adhésion aux principes d'Unix.
Aux alentours de 2001, Linux a eu l'opportunité d'obtenir une certification, incluant l'assistance gratuite d'Andrew Josey, président de POSIX, pour le prix symbolique d'un dollar. Des efforts ont été déployés pour rendre Linux conforme à POSIX ; Josey avait notamment établi une liste des différences entre la norme POSIX et la spécification Linux Standard Base . Cependant, en août 2005, ce projet a été abandonné faute d'intérêt au sein du groupe de travail LSB. Conformément à Certains systèmes d'exploitation non de type Unix offrent une couche de compatibilité de type Unix , avec différents degrés de fonctionnalités similaires à Unix.
- Les services système UNIX d' IBM z/OS sont suffisamment complets pour être certifiés comme marque déposée UNIX.
- Cygwin , MSYS et MSYS2 fournissent chacun un environnement GNU basé sur l' API utilisateur de Microsoft Windows , suffisant pour compiler et exécuter la plupart des logiciels libres courants .
- MKS Toolkit et UWIN sont des outils d'interopérabilité complets qui permettent de porter des programmes Unix vers Windows.
- Les systèmes de type Windows NT disposent d'un sous-système environnemental POSIX (l'implémentation originale a été abandonnée depuis Windows XP ; l'implémentation basée sur Interix a été abandonnée depuis Windows 8.1 ).Le sous-système pour applications basées sur Unix (anciennement Interix ) fournit des fonctionnalités de type Unix en tant que sous-système Windows NT (abandonné).
- Le sous-système Windows pour Linux fournit une interface noyau compatible Linux développée par Microsoft et ne contenant aucun code Linux, avec des binaires en mode utilisateur Ubuntu s'exécutant dessus.
- Le sous-système Windows pour Linux version 2 (WSL2) fournit un environnement Linux entièrement fonctionnel fonctionnant dans une machine virtuelle.
- OpenHarmony utilise la bibliothèque tierce musl libc et les ports d'API natives, fournissant une prise en charge des appels système POSIX pour Linux au sein du noyau Linux et des noyaux par défaut LiteOS du sous-système Kernel Abstract Layer multi-noyau pour l'interopérabilité des fournisseurs et des développeurs.
- HarmonyOS avec le système HarmonyOS NEXT dispose d'un mode utilisateur OpenHarmony qui contient la bibliothèque musl libc et des ports d'API natives, offrant une prise en charge des appels système POSIX pour Linux au sein des noyaux par défaut du système standard du noyau Linux et du côté système léger LiteOS du sous-système Kernel Abstract Layer multi-noyaux pour l'interopérabilité sur les fonctionnalités de type Unix héritées.
D'autres moyens d'interopérabilité Windows-Unix incluent :
- Les packages Windows mentionnés ci-dessus peuvent être utilisés avec différents serveurs X pour Windows.
- Hummingbird Connectivity offre plusieurs moyens pour les machines Windows de se connecter aux machines Unix et Linux, allant des émulateurs de terminal aux clients et serveurs X, et autres.
- Les kits de ressources Windows pour les versions de Windows NT incluent un shell Bourne , des outils en ligne de commande et une version de Perl.
- Hamilton C shell est une version de csh écrite spécifiquement pour Windows.