Quelle est la différence entre Linux et Unix?

Linux s’est inspiré d’Unix, mais Linux n’est pas Unix – bien qu’il soit définitivement Unix. Nous expliquerons les différences majeures entre ces deux célèbres systèmes d’exploitation.

Même différence?

Linux est un système d’exploitation gratuit et open source. Unix est un produit commercial, proposé par une variété de fournisseurs, chacun avec sa propre variante, généralement dédiée à son propre matériel. C’est une source coûteuse et fermée. Mais Linux et Unix font plus ou moins la même chose de la même manière, non? Plus ou moins, oui.

Les subtilités sont légèrement plus compliquées. Il existe des différences au-delà des aspects techniques et architecturaux. Pour comprendre certaines des influences qui ont façonné Unix et Linux, nous devons comprendre leurs antécédents.

Les origines d’Unix

Unix a plus de 50 ans. Il a été développé en Digital Equipment Corporation (DÉC) langage d’assemblage sur un DÉC PDP / 7 en tant que projet non officiel à Bell Labs, alors propriété de AT&T. Il a été rapidement porté sur un DÉC PDP / 11/20 ordinateur, puis se répandit régulièrement sur d’autres ordinateurs de Bell. Une réécriture dans le Langage de programmation C conduit à la version 4 d’Unix de 1973. C’était important car les caractéristiques du langage C et du compilateur signifiaient qu’il était maintenant relativement facile de porter Unix vers de nouvelles architectures informatiques.

En 1973, Ken Thompson et Dennis Ritchie a présenté un article sur Unix lors d’une conférence. En conséquence, les demandes de copies d’Unix ont afflué dans Bell. Parce que la vente de systèmes d’exploitation n’entrait pas dans le cadre des opérations autorisées d’AT & T, ils ne pouvaient pas traiter Unix comme un produit. Cela a conduit à la distribution d’Unix en tant que code source avec une licence. Les coûts nominaux étaient suffisants pour couvrir l’expédition et l’emballage et une «redevance raisonnable». Unix est venu «tel quel», sans support technique et sans correction de bogues. Mais vous avez obtenu le code source et vous pouvez le modifier.

Unix a connu une adoption rapide dans les établissements universitaires. En 1975, Ken Thompson a passé un congé sabbatique de Bell à la Université de Californie, Berkeley. Avec quelques étudiants diplômés, il a commencé à ajouter et à améliorer leur copie locale d’Unix. L’intérêt extérieur pour les ajouts de Berkeley a grandi, menant à la première sortie du Distribution de logiciels à Berkeley (BSD). Il s’agissait d’un ensemble de programmes et de modifications système qui pouvaient être ajoutés à un système Unix existant, mais ce n’était pas un système d’exploitation autonome. Les versions ultérieures de BSD étaient des systèmes Unix entiers.

Il y avait maintenant deux versions majeures d’Unix, le flux AT&T et le flux BSD. Toutes les autres variantes Unix, telles que AIX, HP-UX, et Oracle Solaris, en sont les descendants. En 1984, certaines des restrictions sur AT&T ont été libérées, et ils ont pu produire et vendre Unix.

Unix est alors devenu commercialisé.

La genèse de Linux

Considérant la commercialisation d’Unix comme une nouvelle érosion des libertés dont disposent les utilisateurs d’ordinateurs, Richard Stallman a entrepris de créer un système d’exploitation fondé sur la liberté. C’est-à-dire la liberté de modifier le code source, de redistribuer les versions modifiées du logiciel et d’utiliser le logiciel de quelque manière que ce soit.

Le système d’exploitation allait répliquer les fonctionnalités d’Unix, sans inclure de code source Unix. Il a nommé le système d’exploitation GNU et a fondé le Projet GNU en 1983 pour développer le système d’exploitation. En 1985, il fonde la Fondation du logiciel libre promouvoir, financer et soutenir le projet GNU.

Tous les domaines du système d’exploitation GNU progressaient bien, à l’exception du noyau. Les développeurs du projet GNU travaillaient sur un micro-noyau appelé le GNU Hurd, mais les progrès étaient lents. (Il est encore en développement aujourd’hui, et se rapproche d’une version.) Sans noyau, il n’y aurait pas de système d’exploitation.

En 1987, Andrew S. Tanebaum a publié un système d’exploitation appelé MINIX (mini-Unix) comme support pédagogique pour les étudiants qui étudient la conception de systèmes d’exploitation. MINIX était un système d’exploitation fonctionnel de type Unix, mais il présentait certaines restrictions, en particulier avec le système de fichiers. Après tout, le code source devait être suffisamment petit pour garantir une couverture adéquate en un seul semestre universitaire. Certaines fonctionnalités ont dû être sacrifiées.

Pour mieux comprendre le fonctionnement interne du Intel 80386 dans son nouveau PC, un étudiant en informatique a appelé Linus Torvalds a écrit un code de changement de tâche simple comme exercice d’apprentissage. Finalement, ce code est devenu un proto-noyau élémentaire qui est devenu le premier noyau Linux. Torvalds connaissait MINIX. En fait, son premier noyau a été développé sur MINIX en utilisant le compilateur GCC de Richard Stallman.

Torvalds a décidé de créer son propre système d’exploitation qui a surmonté les limitations du MINIX conçu pour l’enseignement. En 1991, il a fait son annonce célèbre sur le MINIX Usenet groupe, demandant des commentaires et des suggestions sur son projet.

Linux n’est pas vraiment un clone Unix. Si Linux était un clone d’Unix, ce serait Unix. Ce n’est pas le cas, c’est un peu Unix. Le mot «clone» implique qu’une petite partie de l’original est cultivée dans une nouvelle réplique cellule pour cellule de l’original. Linux a été créé à nouveau, pour avoir l’apparence d’Unix et pour répondre aux mêmes besoins. C’est moins un clone, et plus un réplicant.

Mais de toute façon, Linux était un noyau à la recherche d’un système d’exploitation; GNU était un système d’exploitation à la recherche d’un noyau. Avec le recul, ce qui s’est passé ensuite semble inévitable. Cela a également changé le monde.

Qui fait le développement?

Une distribution Linux est la somme de nombreuses parties différentes, tirées de nombreux endroits différents. Le noyau Linux, la suite GNU d’utilitaires de base et les applications utilisateur sont combinées pour créer une distribution viable. Et quelqu’un doit faire cela en combinant, en maintenant et en gérant – tout comme quelqu’un doit développer le noyau, les applications et les utilitaires de base. Les responsables de la distribution, et les communautés de chaque distribution, jouent tous leur rôle pour donner vie à une distribution Linux tout autant que les développeurs du noyau.

Linux est le résultat d’un effort de collaboration distribué effectué par des bénévoles non rémunérés, par des organisations comme Canonique et chapeau rougeet les personnes parrainées par l’industrie.

Chaque Unix commercial est développé comme une seule entité cohérente utilisant des installations de développement internes – ou sous-traitées étroitement contrôlées. Souvent, ceux-ci ont un noyau unique et sont conçus spécifiquement pour les plates-formes matérielles fournies par chaque fournisseur.

Les dérivés libres et open-source du flux BSD Unix, tels que FreeBSD, OpenBSD, et DragonBSD, utilisez une combinaison de code BSD hérité et de nouveau code. Ce sont maintenant des projets soutenus par la communauté et gérés comme des distributions Linux.

Normes et conformité

En général, Linux n’est ni Spécification Unix unique (SUS) conforme ni POSIX conforme. Il essaie de satisfaire les deux normes sans en être l’esclave. Il y a eu une ou deux exceptions – littéralement, une ou deux -, telles que Inspur K-UX, un Linux chinois compatible POSIX.

Un véritable Unix, comme les offres commerciales, est conforme. Certains dérivés BSD, y compris toutes les versions de macOS sauf une, sont compatibles POSIX. Les noms de variantes, tels que AIX, HP-UX et Solaris, sont toutes des marques déposées détenues par leurs organisations respectives.

Marques de commerce et droits d’auteur

Linux est une marque déposée de Linus Torvalds. le Fondation Linux gère la marque en son nom. Le noyau Linux et les utilitaires de base sont publiés sous divers GNU «Copyleft» Licences publiques générales. Le code source est disponible gratuitement.

Unix est une marque déposée de Groupe ouvert. Il est protégé par copyright, propriétaire et source fermée.

FreeBSD est protégé par le droit d’auteur Projet FreeBSD, et le code source est disponible.

Différences d’utilisation

Du point de vue de l’expérience utilisateur, sur la ligne de commande, il n’y a pas beaucoup de différence visible. En raison des normes et de la conformité POSIX, les logiciels écrits sous Unix peuvent être compilés pour un système d’exploitation Linux avec un effort de portage limité. Les scripts shell, par exemple, peuvent être utilisés directement sous Linux dans de nombreux cas avec peu ou pas de modifications.

Certains des utilitaires de ligne de commande ont des options de ligne de commande légèrement différentes, mais essentiellement le même arsenal d’outils est disponible sur les deux plates-formes. En réalité, IBM AIX a un Boîte à outils AIX pour les applications Linux. Cela permet à l’administrateur système d’installer des centaines de packages GNU (comme Bash, GCC, etc.).

Les différentes saveurs Unix ont des interfaces utilisateur graphiques (GUI) à leur disposition, tout comme Linux. Un utilisateur Linux familier avec GNOME ou Camarade devront sentir leur chemin la première fois qu’ils rencontrent KDE ou Xfce, mais ils le ramasseront bientôt. C’est similaire à la gamme d’interfaces graphiques disponibles sous Unix, telles que Motif, Environnement de bureau commun, et le Système X Windows. Ils sont tous suffisamment similaires pour être navigables par toute personne familiarisée avec les concepts d’un environnement fenêtré avec des boîtes de dialogue, des menus et des icônes.

Vous en apprendrez plus sur les différences lors de l’administration des systèmes. Par exemple, il existe différents init mécanismes. Les dérivés de System V Unix et les flux BSD ont des systèmes d’initialisation différents. Les variantes BSD libres conservaient les schémas d’initialisation BSD. Par défaut, les distributions Linux utiliseront un système d’initialisation dérivé d’Unix System V ou systemd.

Stick Shift vs Automatique

Si vous pouvez en conduire un, vous pouvez conduire l’autre, même si cela va être un peu stop-start pour commencer.

Si l’on met le prix de côté, les différences de philosophie, de licence, de modèle de développement, d’organisation communautaire et de type et style de gouvernance sont plus importantes et plus significatives que les différences dans les indicateurs de ligne de commande entre, par exemple, une grep et autre.

Les plus grandes différences ne sont pas celles que vous voyez à l’écran.