Si vous êtes un développeur de logiciels dans la vingtaine ou la trentaine, vous avez grandi dans un monde dominé par Linux. Il a été un acteur important dans le centre de données pendant des décennies, et bien qu’il soit difficile de trouver des rapports définitifs de part de marché du système d’exploitation, la part de Linux dans les systèmes d’exploitation du centre de données pourrait atteindre 70%, avec des variantes Windows portant presque tout le pourcentage restant. Les développeurs utilisant n’importe quel cloud public majeur peuvent s’attendre à ce que le système cible fonctionne sous Linux., La preuve que Linux est partout s’est développée ces dernières années lorsque vous ajoutez des systèmes embarqués basés sur Android et Linux dans les smartphones, Les téléviseurs, les automobiles et de nombreux autres appareils.
malgré tout, la plupart des développeurs de logiciels, même ceux qui ont grandi pendant cette vénérable « Révolution Linux », ont au moins entendu parler d’Unix. Cela ressemble à Linux, et vous avez probablement entendu des gens utiliser ces termes de manière interchangeable. Ou peut-être avez-vous entendu Linux appeler un système d’exploitation « de type Unix ».
alors, qu’est-ce que C’est Unix?, Les caricatures parlent de « graybeards » ressemblant à des sorciers assis derrière des écrans verts brillants, écrivant du code C et des scripts shell, alimentés par du café à l’ancienne et infusé au goutte à goutte. Mais Unix a une histoire beaucoup plus riche au-delà de ces programmeurs C barbus des années 1970. alors que les articles détaillant l’histoire d’Unix et les comparaisons « Unix vs. Linux » abondent, cet article offrira un arrière-plan de haut niveau et une liste de différences majeures entre ces mondes complémentaires.,
les débuts d’Unix
L’histoire d’Unix commence à&T Bell Labs à la fin des années 1960 avec une petite équipe de programmeurs cherchant à écrire un système d’exploitation multi-tâches et multi-utilisateurs pour le PDP-7. Deux des membres les plus remarquables de cette équipe au centre de recherche Bell Labs étaient Ken Thompson et Dennis Ritchie. Alors que de nombreux concepts D’Unix étaient dérivés de son prédécesseur (Multics), la décision de l’équipe Unix au début des années 1970 de réécrire ce petit système d’exploitation en langage C est ce qui séparait Unix de tous les autres., À l’époque, les systèmes d’exploitation étaient rarement, voire jamais, portables. Au lieu de cela, par la nature de leur conception et de leur langage source de bas niveau, les systèmes d’exploitation étaient étroitement liés à la plate-forme matérielle pour laquelle ils avaient été créés. En refactorisant Unix sur le langage de programmation C, Unix pourrait maintenant être porté sur de nombreuses architectures matérielles.
en plus de cette nouvelle portabilité, qui a permis à Unix de s’étendre rapidement au-delà des Bell Labs à d’autres utilisations de recherche, universitaires et même commerciales, plusieurs principes clés de la conception du système d’exploitation étaient attrayants pour les utilisateurs et les programmeurs., D’une part, la philosophie Unix de Ken Thompson est devenue un modèle puissant de conception de logiciels modulaires et d’informatique. La philosophie Unix recommandait d’utiliser de petits programmes spécialement conçus en combinaison pour effectuer des tâches globales complexes. Depuis Unix a été conçu autour des fichiers et des tuyaux, Ce modèle de « tuyauterie » entrées et sorties de programmes ensemble dans un ensemble linéaire d’opérations sur l’entrée est encore en vogue aujourd’hui. En fait, le modèle informatique cloud sans serveur actuel doit une grande partie de son héritage à la philosophie Unix.,
croissance rapide et concurrence
à la fin des années 1970 et 80, Unix est devenu la racine d’un arbre généalogique qui s’est étendu à la recherche, au milieu universitaire et à une activité commerciale croissante de systèmes D’exploitation Unix. Unix n’était pas un logiciel open source, et le code source Unix pouvait être concédé sous licence via des accords avec son propriétaire, à& T. La première licence de logiciel connue a été vendue à L’Université de L’Illinois en 1975.
Unix s’est rapidement développé dans le milieu universitaire, Berkeley devenant un centre d’activité important, étant donné le congé sabbatique de Ken Thompson dans les années 70., Avec toute l’activité autour D’Unix à Berkeley, une nouvelle livraison de logiciels Unix est née: la Berkeley Software Distribution, ou BSD. Initialement, BSD n’était pas une alternative à L’Unix D’AT&T, mais un add-on avec des logiciels et des capacités supplémentaires. Au moment où 2BSD (la deuxième Distribution logicielle de Berkeley) est arrivée en 1979, Bill Joy, un étudiant diplômé de Berkeley, avait ajouté des programmes désormais célèbres tels que vi
et le shell C (/bin/csh).,
en plus de BSD, qui est devenu l’une des branches les plus populaires de la famille Unix, les offres commerciales d’Unix ont explosé au cours des années 1980 et dans les années 90 avec des noms comme HP-UX, AIX D’IBM, Solaris de Sun, Sequent et Xenix. Comme les branches se sont développées à partir de la racine originale, les « guerres Unix » ont commencé, et la normalisation est devenue un nouvel objectif pour la communauté. La norme POSIX est née en 1988, ainsi que d’autres suivis de normalisation via le Groupe Open dans les années 1990.,
à cette époque,&T et Sun ont publié la version 4 de System V (SVR4), qui a été adoptée par de nombreux fournisseurs commerciaux. Par ailleurs, la famille de systèmes D’exploitation BSD s’est développée au fil des ans, conduisant à certaines variantes open source qui ont été publiées sous la licence BSD désormais familière. Cela comprenait FreeBSD, OpenBSD et NetBSD, chacun avec un marché cible légèrement différent dans l’industrie des serveurs Unix. Ces variantes Unix continuent d’avoir une certaine utilisation aujourd’hui, bien que beaucoup aient vu leur part de marché des serveurs diminuer dans les chiffres simples (ou inférieurs)., BSD peut avoir la plus grande base d’installation de tout système Unix moderne aujourd’hui. En outre, chaque unité matérielle Apple Mac livrée dans l’histoire récente peut être revendiquée par BSD, car son système D’exploitation OS X (maintenant macOS) est un dérivé de BSD.
alors que l’histoire complète D’Unix et de ses variantes académiques et commerciales pourrait prendre beaucoup plus de pages, pour le bien de notre article focus, passons à la montée de Linux.
Enter Linux
ce que nous appelons Aujourd’hui le système D’exploitation Linux est vraiment la combinaison de deux efforts du début des années 1990., Richard Stallman cherchait à créer une alternative vraiment libre et open source au système Unix propriétaire. Il travaillait sur les utilitaires et les programmes sous le nom GNU, un acronyme récursif signifiant » GNU’s not Unix! »Bien qu’il y ait eu un projet de noyau en cours, il s’est avéré difficile d’aller, et sans noyau, le rêve du système d’exploitation libre et open source ne pouvait pas être réalisé. C’est le travail de Linus Torvald—produire un noyau fonctionnel et viable qu’il a appelé Linux—qui a donné vie au système d’exploitation complet. Étant donné que Linus utilisait plusieurs outils GNU (par exemple,, the GNU Compiler Collection, ou GCC), le mariage des outils GNU et du noyau Linux était un match parfait.
Les distributions Linux ont vu le jour avec les composants de GNU, le noyau Linux, L’interface graphique X-Windows du MIT et d’autres composants BSD pouvant être utilisés sous la licence BSD open source. La popularité précoce de distributions comme Slackware puis Red Hat a donné à « L’utilisateur PC commun » des années 1990 l’accès au système D’exploitation Linux et, avec lui, à de nombreuses fonctionnalités et utilitaires Unix propriétaires qu’ils utilisaient dans leur travail ou leur vie universitaire.,
en raison de la position libre et open source de tous les composants Linux, n’importe qui pouvait créer une distribution Linux avec un peu d’effort, et bientôt le nombre total de distributions a atteint des centaines. Bien sûr, de nombreux développeurs utilisent Linux soit via des fournisseurs de cloud, soit en utilisant des distributions gratuites populaires comme Fedora, canonical Ubuntu, Debian, Arch Linux, Gentoo et bien d’autres variantes., Les offres commerciales Linux, qui fournissent un support en plus des composants libres et open source, sont devenues viables car de nombreuses entreprises, y compris IBM, ont migré d’Unix propriétaire vers des solutions middleware et logicielles au-dessus de Linux. Red Hat a construit un modèle de support commercial autour de Red Hat Enterprise Linux, tout comme le fournisseur allemand SUSE avec SUSE Linux Enterprise Server (SLES).
comparer Unix et Linux
Jusqu’à présent, nous avons examiné l’histoire d’Unix et la montée de Linux et les fondements de la GNU / Free Software Foundation d’une alternative libre et open source à Unix., Examinons les différences entre ces deux systèmes d’exploitation qui partagent une grande partie du même héritage et plusieurs des mêmes objectifs.
du point de vue de l’expérience utilisateur, peu de choses sont différentes! Une grande partie de L’attraction de Linux était la disponibilité du système d’exploitation dans de nombreuses architectures matérielles (y compris le PC moderne) et la capacité d’utiliser des outils familiers aux administrateurs système Unix et aux utilisateurs.
en raison des normes et de la conformité POSIX, les logiciels écrits sur Unix pouvaient être compilés pour un système D’exploitation Linux avec un effort de portage généralement limité., Les scripts Shell peuvent être utilisés directement sur Linux dans de nombreux cas. Alors que certains outils avaient des options de drapeau/ligne de commande légèrement différentes entre Unix et Linux, beaucoup fonctionnaient de la même manière sur les deux.
Une remarque secondaire est que la popularité du matériel et du système d’exploitation macOS en tant que plate-forme de développement qui cible principalement Linux peut être attribuée au système d’exploitation macOS de type BSD. De nombreux outils et scripts destinés à un système Linux fonctionnent facilement dans le terminal macOS. De nombreux composants logiciels open source disponibles sur Linux sont facilement disponibles via des outils tels que Homebrew.,
Les différences restantes entre Linux et Unix sont principalement liées au modèle de licence: open source vs propriétaire, Logiciel sous licence. En outre, l’absence d’un noyau commun dans les distributions Unix a des implications pour les fournisseurs de logiciels et de matériel. Pour Linux, un fournisseur peut créer un pilote de périphérique pour un périphérique matériel spécifique et s’attendre à ce que, dans des limites raisonnables, il fonctionne sur la plupart des distributions., En raison des branches commerciales et académiques de l’arborescence Unix, un fournisseur peut avoir à écrire différents pilotes pour les variantes d’Unix et avoir des licences et d’autres problèmes liés à l’accès à un SDK ou à un modèle de distribution pour le logiciel en tant que pilote de périphérique binaire dans de nombreuses variantes Unix.
comme les deux communautés ont mûri au cours de la dernière décennie, de nombreux progrès de Linux ont été adoptés dans le monde Unix. De nombreux utilitaires GNU ont été mis à disposition en tant que modules complémentaires pour les systèmes Unix où les développeurs voulaient des fonctionnalités de programmes GNU qui ne font pas partie d’Unix., Par exemple, AIX D’IBM a offert une boîte à outils AIX pour les Applications Linux avec des centaines de progiciels GNU (comme Bash, GCC, OpenLDAP et bien d’autres) qui pourraient être ajoutés à une installation AIX pour faciliter la transition entre Linux et les systèmes AIX basés sur Unix.
Unix propriétaire est toujours bien vivant et, avec de nombreux fournisseurs majeurs promettant un support pour leurs versions actuelles jusque dans les années 2020, il va sans dire qu’Unix sera présent dans un avenir prévisible., En outre, la branche BSD De l’arborescence Unix est open source, et NetBSD, OpenBSD et FreeBSD ont tous des bases d’utilisateurs solides et des communautés open source qui ne sont peut-être pas aussi visibles ou actives que Linux, mais qui se maintiennent dans les rapports de partage de serveur récents, avec bien au-dessus des nombres Unix propriétaires dans des domaines
là où Linux a montré un avantage significatif par rapport à Unix propriétaire, c’est dans sa disponibilité sur un grand nombre de plates-formes matérielles et de périphériques., Le Raspberry Pi, populaire auprès des amateurs et des passionnés, est piloté par Linux et a ouvert la porte à toute une gamme d’appareils IoT fonctionnant sous Linux. Nous avons déjà mentionné les appareils Android, les automobiles (avec Linux de qualité automobile) et les téléviseurs intelligents, où Linux détient une grande part de marché. Chaque fournisseur de cloud sur la planète propose des serveurs virtuels fonctionnant sous Linux, et la plupart des piles cloud natives les plus populaires d’aujourd’hui sont basées sur Linux, que vous parliez de temps d’exécution de conteneurs ou de Kubernetes ou de nombreuses plates-formes sans serveur qui gagnent en popularité.,
L’une des représentations les plus révélatrices de L’ascendant de Linux est la transformation de Microsoft ces dernières années. Si vous avez dit aux développeurs de logiciels il y a dix ans que le système D’exploitation Windows « exécuterait Linux » en 2016, la plupart d’entre eux auraient ri hystériquement. Mais l’existence et la popularité du sous—système Windows Pour Linux (WSL), ainsi que des fonctionnalités plus récemment annoncées comme le port Windows de Docker, y compris le support LCOW (Linux containers on Windows), sont la preuve de l’impact que Linux a eu—et continuera à avoir-dans le monde du logiciel.,
Cet article a été initialement publié en Mai 2018 et a été mis à jour par l’éditeur.