Quelle est la différence entre Unix et Linux? [dupliquer]


13

Je veux savoir quelle est la différence réelle entre Unix et Linux.

  • Partagent-ils le même noyau?
  • Linux est-il construit sur Unix?
  • Les programmes écrits pour Linux fonctionnent-ils sous Unix et vice-versa?

car qui d'autre connaît le code source linux et unix?

6
Je ne pense pas que vous ayez besoin de connaître le code source Linux et Unix pour connaître l'historique des deux systèmes d'exploitation.
Simon P Stevens

Peut-être alors vous devez connaître le code source de Windows et Linux pour les appeler différences?
Pawka

4
Linux -> L inux I s N ot U ni X :)
ukanth

yep .. mais la structure de répertoires des deux est tellement identique, vous devez creuser dans la source pour comprendre les différences ou au moins le diagramme peut montrer la différence .. les fenêtres d'autre part ont une structure de répertoires complètement différente, donc nous sentons la différence ... c'est pourquoi je voulais le savoir ..
Xinus

Réponses:


22

Unix n'est pas une chose, c'est le nom d'une grande famille de systèmes d'exploitation connexes, qui partagent à des degrés différents, l'histoire et l'architecture. Solaris, DEC Unix, IRIX, HP-UX sont des variantes Unix. Ils sont dans une certaine mesure compatibles avec les applications, car ils implémentent les normes POSIX à des degrés différents, ce qui signifie qu'ils exposent des commandes et des API similaires.

Leurs noyaux ne sont pas les mêmes, bien que si vous recherchez «arbre généalogique unix», vous verrez une histoire fascinante de la façon dont ces variantes ont évolué les unes des autres, comme les organismes. Autrement dit, un pinson et une hirondelle ne sont pas le même animal mais ils ont beaucoup en commun.

Linux est une réécriture, à partir de zéro, d'un système d'exploitation de type Unix. La question de savoir si les programmes écrits pour Unix / Linux contre un autre est une question complexe, mais dans certains cas, oui.


21

Non, non, oui (source)

Pour vraiment comprendre la réponse, il est utile d'examiner l'historique des deux systèmes d'exploitation.

Unix a été inventé à AT&T Bell Labs par Ken Thompson. Son collègue Dennis Ritchie a contribué et a également inventé le langage C et a écrit le compilateur C. Au fil des ans, le code a également été apporté par UC Berkeley, d'autres travaux chez AT&T, Sun, IBM et d'autres.

Il a finalement été normalisé dans une série de publications appelées POSIX. Dans l'ensemble, le code était propriétaire, car il était protégé par les droits d'auteur d'AT & T, puis vendu ou concédé sous licence à d'autres sociétés, qui l'ont largement réécrit au fil des ans mais ont conservé divers droits.

Deux branches de "Unix libre" ont vu le jour dans les années 90. L'un était Linux , qui est un clone, écrit pour agir comme Unix sans contenir de code Unix réel.

L'autre branche existe aujourd'hui sous le nom de NetBSD , et qui a été rapidement suivie par FreeBSD , puis beaucoup plus tard par tout autre * BSD dont vous avez peut-être entendu parler. Ces projets sont un peu différents de Linux en ce qu'ils sont des "clones partiels". Ils contiennent un mélange de code source "réel Unix" (la partie qui a été librement concédée sous licence, principalement par UC Berkeley) et du code "clone" nouvellement écrit et d'autres codes ultérieurs émergeant dans le cadre de réécritures ou selon les besoins pour prendre en charge HW moderne et moderne Spécifications Posix.

Linux est beaucoup plus populaire car NetBSD et FreeBSD ont été bloqués pendant un certain temps dans un procès entre AT&T et UCB. Bien que résolus en faveur des BSD, ils ne se sont jamais remis du retard, du moins pas en termes de popularité.

Donc non, Linux et Unix commercial n'ont pas de code de noyau en commun, bien qu'Unix commercial et * BSD aient déjà eu pas mal de points communs. Les noyaux Unix des fournisseurs sous licence contiennent du code qu'ils ont eux-mêmes écrit, peut-être avec du code AT&T original toujours présent ici et là. Le noyau Linux est composé de code écrit par Linus Torvalds et d'autres auteurs.

Le "logiciel Unix" est un logiciel écrit sur les API Posix et fonctionne généralement sur toutes les versions d'Unix, Linux, NetBSD et FreeBSD. En théorie, Posix SW peut fonctionner sur des systèmes "non-Unix" mais cela ne semble pas très bien fonctionner. De nos jours, "Unix" est techniquement une marque de commerce, mais a tendance à être utilisé de manière informelle comme désignation pour Unix commercial, Linux et la famille BSD.


En fait, BSD Unix est le plus répandu en termes d'appareils vendus: c'est le cœur d'Apple OS X présent sur les Mac, iPhones et iPads.
mouviciel

7

Lorsque la plupart des gens parlent d'Unix, cela signifie un "système d'exploitation de type Unix compatible POSIX", ce que Linux est.

Partagent-ils un même noyau? Non, Linux EST un noyau, pas un système d'exploitation. Techniquement, les distributions Linux utilisent un noyau Linux et un "userland" GNU (voir gnu.org). L'espace utilisateur est constitué des programmes et bibliothèques de base, etc. qui relient les grandes applications et les tâches utilisateur à l'API de bas niveau du noyau.

Linux est-il construit sur Unix? Non, c'est un clone. Il est conçu pour fournir une version gratuite et utilisable d'Unix sur un PC de bureau modeste.

Les programmes écrits pour Linux peuvent-ils fonctionner sur Unix et vice versa? Parfois. Par exemple, sur FreeBSD, il y a un émulateur Linux ABI, qui détecte essentiellement que les programmes ont été créés pour Linux, et rend disponible un ensemble différent d'appels de noyau. Quelque chose de similaire est disponible pour Linux pour exécuter des trucs Unix System V standard (ou une version commerciale populaire d'Unix de toute façon), mais il est rarement utilisé, car la plupart des programmes sont fournis en tant que code source compatible POSIX et compilent sur Linux sans difficulté. De plus, la plupart des programmes binaires pour unix sont directement disponibles pour Linux. FreeBSD est une préoccupation plus petite et n'a pas ce luxe. Sous Linux, le système pour charger les binaires à partir d'autres systèmes est le plus souvent utilisé pour exécuter des programmes java, des programmes Windows (bien que cela soit déconseillé), etc.

Unix est une marque déposée, et donc Linux ne peut pas utiliser le nom. Unix est l'ancienne version officielle (inasmuchas il existe une version officielle), qui n'est pas si conviviale. La plupart des autres versions d'Unix ont été conçues un peu mieux, mais ne fonctionnent pas nécessairement aussi bien en termes pratiques. C'est à peu près tout. De nombreuses entreprises qui exécutaient Unix utilisent désormais Linux.

Si vous voulez voir les différences entre les différents systèmes d'exploitation de type Unix, procurez-vous des copies de FreeBSD, OpenSolaris et Debian. Je dis ces distributions spécifiquement parce qu'elles seront plus faciles à comparer, bien que d'autres comme pc-bsd, nexenta et ubuntu soient sans doute plus agréables, respectivement.


2
Linux n'est pas complètement compatible POSIX.
MDMarra

Je peux me tromper, mais AFAIK, à toutes fins utiles, c'est le cas. Il était certifié conforme POSIX dans le passé, mais obtenait les coûts de certification ACTUAL, et donc ce n'est pas vraiment fait étant donné que Linux est un projet de logiciel libre en constante évolution. La distribution (Linux-FT) qui a obtenu la certification avec un standard encore plus élevé à la fin des années 90 (FIPS quelque chose d'autre) a déclaré leur intention d'aider à intégrer leur travail dans le noyau principal. Depuis lors, LSB (un sur-ensemble de POSIX.1) est apparu et a été adopté par au moins quelques distributions.
Lee B

@unknown poster: Je suppose que le véritable test d'Unix ces jours-ci est SUS - la spécification Unix unique. Linux ne se conforme PAS à cela, pour autant que je sache. Je ne sais pas si c'est simplement une technicité, mais je pense que c'est plus --- Linux peut être lent à développer des fonctionnalités qui sont généralement considérées comme inutiles en termes pragmatiques, pour quelque raison que ce soit. Cependant, si cela est toujours pertinent est une autre question, étant donné que Linux est probablement LA variante unix la plus populaire actuellement. D'autres unités doivent ajouter des fonctionnalités Linux, autant que vice versa.
Lee B

N'appellent-ils pas cela * nix?
Hello71

2

Je pense que techniquement parlant, GNU / Linux n'est pas moins UNIX que n'importe lequel des systèmes UNIX officiels, mais ce n'est que pour des raisons juridiques que les gens décrivent Linux comme un système d' exploitation de type UNIX, au lieu d'un simple système d'exploitation "UNIX".

En ce qui concerne les noyaux, Linux est un noyau. Donc par définition, si un système utilise le noyau Linux, alors c'est un système Linux, pas un système UNIX.

Linux est-il construit sur Unix

Linux n'a pas été construit "sur" Unix, il est construit comme un clone UNIX. Tous les divers utilitaires gnu (bash, etc.) ont été écrits à partir de zéro en tant que clones des utilitaires unix correspondants.

Ironiquement, Mac OS X, qui a un noyau UNIX, est livré avec bash, gcc et éventuellement d'autres utilitaires GNU. C'est donc un système UNIX qui inclut des parties de GNU, et non l'inverse comme on pourrait s'y attendre.



-2

De NixCraft

UNIX est un nom protégé par le droit d'auteur Seules les grandes entreprises sont autorisées à utiliser le droit d'auteur et le nom UNIX, donc IBM AIX et Sun Solaris et HP-UX sont tous UNIX. L'Open Group détient la marque UNIX en fiducie pour l'industrie et gère le programme de licence de marque UNIX. Linux est un clone UNIX

Mais si vous considérez les normes POSIX (Portable Operating System Interface), Linux peut être considéré comme UNIX. Pour citer un fichier README du noyau Linux officiel: Linux est un clone Unix écrit à partir de zéro par Linus Torvalds avec l'aide d'une équipe de pirates informatiques peu soudée à travers le Net. Il vise la conformité POSIX. Linux n'est qu'un noyau

Linux n'est qu'un noyau. La distribution Linux comprend un système GUI, des outils d'installation et de gestion, des compilateurs, des éditeurs, etc. La distribution Linux le rend

La plupart des systèmes d'exploitation UNIX sont considérés comme des systèmes d'exploitation concurrents.

Comme je l'ai dit plus tôt, Linux n'est qu'un noyau avec une distribution Linux qui le rend complet et utilisable. La plupart des fichiers UNIX sont fournis avec des programmes AZ tels que des éditeurs, des compilateurs, etc. Par exemple, FreeBSD est fourni avec des programmes AZ. Licence et coût

Linux est gratuit (comme dans la bière [liberté]). Vous verrez le meilleur soutien de la communauté autour. De nombreux logiciels UNIX ne sont pas gratuits (mais cela évolue rapidement, par exemple OpenSolaris / Solaris UNIX). Convivial

Linux est considéré comme UNIX le plus convivial comme os. Il facilite l'installation de la carte son, des lecteurs flash et d'autres accessoires de bureau. Point de vue de l'utilisateur final

Les différences ne sont pas si grandes pour l'utilisateur final moyen.


Les erreurs concernant les coûts relatifs de Linux et FreeBSD ne sont pas dans ce qui est censé être cité ici. Néanmoins, il ne faut pas se fier à une explication qui confond le droit d'auteur et la marque et confond la "liberté" avec "comme dans la bière", les deux erreurs étant dans l'original.
JdeBP
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.