web-dev-qa-db-fra.com

MacOS est-il une distribution Unix?

Je sais que macOS est un système d'exploitation UNIX , mais je ne sais pas si macOS pourrait être appelé une distribution UNIX de la même manière que Gentoo ou Debian sont distributions GNU/Linux.

MacOS est-il une distribution UNIX? Si ce n'est pas le cas, comment pourrait-on se référer correctement à l'appartenance de macOS à la famille de systèmes d'exploitation UNIX et à la conformité à Single UNIX Specification (c'est-à-dire est-ce une variante Unix =, a version Unix, a version Unix, etc.)? De plus, cette question s'applique à Solaris, HP-UX et à d'autres unités (s'agit-il toutes de distributions UNIX?).

De plus, est-ce que Word "distribution" est limité aux systèmes d'exploitation GNU (/ Linux,/Hurd,/kFreeBSD,/etc), ou peut-il être utilisé dans d'autres cas?

EDIT: J'ai réalisé que le site officiel d'UNIX utilise "implémentations UNIX" et "Systèmes d'exploitation UNIX" pour faire référence à la famille des systèmes d'exploitation Unix, c'est-à-dire ceux qui implémentent le standard Unix standard .

20
Seninha

Qu'est-ce que UNIX?

Réponse courte: UNIX est une spécification/standard de nos jours.

Au moment de la rédaction du présent rapport, pour citer sources officielles , "UNIX® est une marque déposée de The Open Group", la société qui fournit entre autres choses certification UNIX :

"UNIX®, un standard ouvert détenu et géré par The Open Group, est un catalyseur de technologies clés et offre un coût total de possession réduit, une agilité informatique, une stabilité et une interopérabilité accrues dans des environnements hétéro¬énergiques permettant l'innovation commerciale et commerciale à travers le monde. . "

La même page indique spécifiquement quelle spécification définit UNIX:

La dernière version de la norme de certification est UNIX V7, alignée sur la spécification UNIX unique version 4, édition 2013

Les détails de ces spécifications peuvent être trouvés ici . Curieusement, le dernier standard répertorié sur leur site Web est UNIX 03, et pour en citer un autre source , "UNIX® 03 - la marque des systèmes conformes à la version 3 du Single UNIX Spécification".

Pour citer la page À propos de nous avec mon accent en gras:

Le succès de l'approche UNIX a conduit à un grand nombre de systèmes d'exploitation "similaires", souvent divergents en termes de compatibilité et d'interopérabilité. Pour résoudre ce problème, les fournisseurs et les utilisateurs se sont réunis dans les années 1980 pour créer la norme POSIX® et, plus tard, la spécification UNIX unique .

Donc, ce que cela suggère (ou du moins c'est mon interprétation), c'est que lorsqu'un système d'exploitation est conforme au standard POSIX et aux spécifications UNIX simples, il est compatible en comportement avec Unix comme système d'exploitation qui une fois a existé à un moment donné de l'histoire. Veuillez noter que ceci ne mentionne pas la présence de traces du code source Unix original, ni ne mentionne le noyau en aucune façon (cela deviendra important plus tard).

Quant à AT&T et System V Unix développé par Ritchie et Thompson, on peut dire aujourd'hui qu'il a cessé d'exister. Sur la base des sources ci-dessus, il semble qu'UNIX aujourd'hui n'est pas ce système d'exploitation spécifique, mais plutôt un standard dérivé de la meilleure généralisation possible pour la façon dont systèmes d'exploitation de la famille Unix se comportent.


Où se situe macOS X dans le monde * nix?

Dans une définition très spécifique, macOS version 10.13 High Sierra sur le matériel Intel est conforme à la norme UNIX 03 et pour citer certificat pdf , "Apple Inc. est entré dans un accord de licence de marque avec X/Open Company Limited. " Note latérale: j'hésite à me demander ce que cela signifierait pour macOS 10.13 sur du matériel non Intel, mais, étant donné que le matériel est mentionné pour d'autres systèmes d'exploitation, le matériel est important. Exemple: "Hewlett Packard Enterprise: HP-UX 11i V3 version B.11.31 ou ultérieure sur les serveurs HP 9000 avec architecture de précision" (à partir de la page d'inscription ).

Revenons à la section précédente de ma réponse. Étant donné que cette version particulière du système d'exploitation est conforme aux normes d'interopérabilité et de compatibilité, cela signifie que le système d'exploitation est aussi proche du comportement et de la mise en œuvre du système que possible d'Unix d'origine en tant que système d'exploitation. À tout le moins, il sera proche de son comportement et de son environnement. Plus elle se rapproche du niveau système et du niveau du noyau, plus la zone sera spécifique et ombragée, mais au moins les mécanismes et comportements fondamentaux qui étaient présents dans Unix devraient être présents dans un système d'exploitation qui vise à être compatible. macOS X devrait être très proche de cet objectif.


Qu'est-ce qu'une distribution?

Pour citer Wikipedia :

Une distribution Linux (souvent abrégée en distro) est un système d'exploitation fabriqué à partir d'une collection de logiciels, basée sur le noyau Linux et, souvent, sur un système de gestion de paquets.

Souvenons-nous une seconde que Linux comme dans le noyau Linux est censé être distribuable logiciel, avec des modifications, ou au moins conformément à GPL v2 . Si nous considérons un gestionnaire de paquets et un noyau, Ubuntu et Red Hat étant des distributions ont du sens. macOS X a un noyau différent de celui d'AT & T Unix d'origine - donc appeler macOS X une distribution Unix n'a pas de sens. Les gens suggèrent que le noyau macOS X est basé sur FreeBSD, mais pour citer FreeBSD Wiki :

Le noyau XNU utilisé sur OS X comprend quelques sous-systèmes de (anciennes versions de) FreeBSD, mais est principalement une implémentation indépendante

Certaines personnes appellent par erreur le noyau OS X Darwin. Pour citer Apple Guide de programmation du noya :

Le noyau, ainsi que d'autres parties centrales d'OS X, sont appelés collectivement Darwin. Darwin est un système d'exploitation complet basé sur bon nombre des mêmes technologies qui sous-tendent OS X.

Et pour citer la même page:

La technologie Darwin est basée sur les technologies BSD, Mach 3.0 et Apple Apple.

Sur la base de tout ce qui précède, nous pouvons dire en toute confiance, OS X n'est pas une distribution , au sens de la distribution Linux. De même, les autres systèmes d'exploitation mentionnés sont conformes à POSIX et sont des systèmes certifiés Unix, mais là encore, ils diffèrent par les noyaux et les variations des appels système sous-jacents (c'est pourquoi il existe des livres sur la programmation du système Solaris et c'est un sujet à part entière). Par conséquent, ce ne sont pas des distributions au sens où les distributions Linux le sont - un noyau commun avec des variations sur les utilitaires. Dans le cas de Linux, vous voyez des livres sur la programmation système Linux ou la programmation du noyau Linux, pas la programmation système spécifique à la distribution, car il n'y a rien de spécifique au système dans une distribution particulière.

La confirmation de ce que nous voyons ici peut être trouvée dans la documentation officielle. Par exemple, un article sur developerWorks by IBM qui traitait de la différence entre les types de systèmes d'exploitation UNIX et les états des distributions Linux (soulignement ajouté):

La plupart des variantes UNIX modernes connues aujourd'hui sont des versions sous licence de l'une des éditions UNIX originales . Solaris de Sun, HP-UX de Hewlett-Packard et AIX d'IBM sont toutes des versions d'UNIX qui ont leurs propres éléments et fondements uniques .

En d'autres termes, ils sont basés sur le même fondement, mais ils ne partagent pas exactement le même dans le sens où les distributions Linux partagent le noyau.

Considérations

Notez que Word distribution semble être principalement utilisé lors du référencement de systèmes d'exploitation qui ont le noyau Linux en son cœur. Prenons par exemple le type de systèmes d'exploitation BSD: il y a GhostBSD , qui est basé sur le noyau et utilise certains des utilitaires de FreeBSD , mais je ne l'ai jamais vu être appelé distribution BSD; chaque OS BSD ne mentionne que sur quoi il est basé et généralement un système d'exploitation est mentionné comme OS à part entière. Bien sûr, BSD signifie Berkeley Software Distribution, mais ... c'est tout.

Pour citer cette réponse sur notre site en réponse à la question de savoir si différentes versions de BSD utilisent les mêmes noyaux:

Non, bien qu'il existe des similitudes en raison des fourches historiques. Chaque projet a évolué séparément.

Ce ne sont pas des distributions au sens de distributions Linux. Considérez l'avis de droit d'auteur de ce document :

Des portions de ce produit peuvent être dérivées des systèmes UNIX® et Berkeley 4.3 BSD

Remarques

  • la norme POSIX mentionnée ci-dessus est également référencée comme norme IEEE (où IEEE est l'Institut des ingénieurs électriciens et électroniciens, qui gère entre autres les types de choses informatiques).
  • pour citer Wikipedia : "En 2016, avec la sortie de macOS 10.12 Sierra, le nom a été changé d'OS X à macOS pour le rationaliser avec la marque des autres systèmes d'exploitation principaux d'Apple: iOS, watchOS et tvOS. [56] "
  • Réponse historique de Mac OS X
  • différence conceptuelle entre le noyau Linux et BSD

En conclusion:

  • macOS X peut être appelé OS de type Unix, système de type Unix, implémentation Unix, OS conforme POSIX lorsque vous souhaitez le relier à AT&T Unix d'origine;
  • "Version Unix" ne serait pas le terme approprié car macOS X est très différent de l'AT & T Unix d'origine, et comme mentionné précédemment, il n'y a plus Unix dans le sens du logiciel, et c'est maintenant plus une norme de l'industrie;
  • Probablement, la "distribution" de Word ne convient que dans le monde Linux.
  • Le vrai problème est que vous (le lecteur) et moi avons trop de temps pour discuter du sujet sur lequel les avocats devraient débattre. Peut-être que nous devrions être comme Linux Torvalds et utiliser une terminologie et des systèmes d'exploitation qui nous permettent simplement d'avancer dans la vie et de faire les choses qui nous intéressent honnêtement et sont censées nous soucier.
32
Sergiy Kolodyazhnyy

Q: MacOS est-il une distribution Unix? Si ce n'est pas le cas, comment peut-on se référer correctement à la naissance de macOS dans la famille de systèmes d'exploitation Unix (c'est-à-dire, est-ce une variante Unix, une version Unix, une saveur Unix, etc.)? De plus, cette question s'applique à Solaris, HP-UX et à d'autres unités (sont-elles toutes des distributions Unix?).

Source de l'image: https://developer.Apple.com/library/content/documentation/MacOSX/Conceptual/OSX_Technology_Overview/SystemTechnology/SystemTechnology.html

MacOS X

Source: https://en.m.wikipedia.org/wiki/XN

" [~ # ~] xnu [~ # ~] est le système d'exploitation de l'ordinateur kernel développé chez Apple Inc. depuis décembre 1996 pour une utilisation dans le système d'exploitation macOS et publié en tant que logiciel libre et open source dans le cadre du système d'exploitation Darwin. Il est également utilisé comme noyau pour les systèmes d'exploitation iOS, tvOS et watchOS. [~ # ~] xnu [~ # ~] est l'abréviation de [~ # ~] x [~ # ~] est Pas [~ # ~] u [~ # ~] nix.


Source: https://developer.Apple.com/library/content/documentation/Darwin/Conceptual/KernelProgramming/build/build.html#//Apple_ref/doc/uid/TP30000905-CH221-CIHFEIFI

" Construire votre premier noyau

Avant de pouvoir construire un noyau, vous devez d'abord obtenir le code source. Le code source du noyau OS X peut être trouvé dans le projet Darwin xnu sur http://www.opensource.Apple.com . Pour connaître votre version actuelle du noyau, utilisez la commande uname -a. Si vous rencontrez des problèmes, recherchez des informations dans les archives des listes de diffusion darwin-kernel et darwin-development. Si cela n'aide pas, demandez de l'aide sur l'une ou l'autre liste. Les archives de la liste et les informations d'abonnement sont disponibles sur http://www.lists.Apple.com ".


Source: https://developer.Apple.com/library/content/documentation/Porting/Conceptual/PortingUnix/glossary/glossary.html

Cocoa - Une plate-forme de développement orientée objet avancée pour OS X. Cocoa est un ensemble de frameworks avec des interfaces de programmation à la fois Java et Objective-C. Il est basé sur l'intégration des technologies OPENSTEP, Apple et Java.

Darwin - Un autre nom pour le cœur du système d'exploitation OS X. Le noyau Darwin est équivalent au noyau OS X plus les bibliothèques et commandes [~ # ~] bsd [~ # ~] essentielles aux commandes [~ # ~] bsd [~ # ~] environnement de ligne de commande. Darwin est une technologie open source.

Xcode - L'environnement de développement graphique intégré d'Apple. Il est disponible gratuitement avec le package OS X Developer Tools.

[~ # ~] xnu [~ # ~] - Le noyau OS X. L'acronyme signifie X n'est pas Unix. XNU combine les fonctionnalités de Mach et BSD avec le kit d'E/S, le modèle de pilote pour OS X.


  • Architecture

Source: https://en.wikipedia.org/wiki/MacOS#Architecture

"Au cœur de macOS se trouve un système d'exploitation compatible POSIX construit au-dessus du noyau XNU, avec des fonctionnalités Unix standard disponibles à partir de l'interface de ligne de commande. Apple a publié cette famille de logiciel en tant que système d'exploitation gratuit et open source nommé Darwin. En plus de Darwin, Apple en couches un certain nombre de composants, y compris le Interface Aqua et Finder, pour compléter le système d'exploitation basé sur GUI qui est macOS. ".


Q: Distribution ou Release? - Source: https://en.wikipedia.org/wiki/MacOS#Updating_methods

Source: https://en.wikipedia.org/wiki/MacOS_High_Sierra

"macOS High Sierra (version 10.13) est le quatorzième majeur - release du système d'exploitation de bureau de macOS, Apple Inc. pour les ordinateurs Macintosh. Le successeur de macOS Sierra, il a été annoncé lors de la WWDC 2017 le 5 juin 2017. ". Msgstr "Type de noyau: hybride (XNU)".


Q: En outre, cette question s'applique à Solaris, HP-UX et autres unités (sont-elles toutes des distributions Unix?).

  • HP-UX Implémentation propriétaire du système d'exploitation Unix, basée sur NIX System V

  • Solarisnix SVR4

4
Rob