unix vs linux what is difference between unix
Unix vs Linux: découvrez quelle est la différence fondamentale entre l'architecture, le noyau et les commandes UNIX et Linux
Linux n'est rien d'autre qu'un clone UNIX qui est écrit Linus Torvalds à partir de zéro avec l'aide de pirates informatiques à travers le monde.
Les systèmes d'exploitation Unix et de type Unix sont une famille de systèmes d'exploitation informatiques qui dérivent du système Unix original de Bell Labs, qui remonte à 1965.
Linux est la variante la plus populaire et il existe un certain nombre de distributions différentes.
=> Cliquez ici pour la série complète de tutoriels Unix
comment ouvrir un fichier eps
Unix est une famille de systèmes d'exploitation informatiques multitâches, portables et multi-utilisateurs, qui ont également des configurations de partage de temps.
Les systèmes Unix utilisent un noyau OS centralisé qui est responsable de la gestion de l'ensemble du système.
L'interface de programmation, l'abstraction des fichiers, la mise en réseau intégrée et le traitement en arrière-plan persistant appelé démons sont les autres fonctionnalités et capacités prises en charge par un système d'exploitation Unix.
Ce que vous apprendrez:
- Qu'est-ce que UNIX?
- Qu'est-ce que Linux?
- Différence entre Unix et Linux
- Linux vs noyau Unix
- Commandes Unix Vs Linux
- Conclusion
- lecture recommandée
Qu'est-ce que UNIX?
Unix est considéré comme la mère de la plupart des systèmes d'exploitation.
La conception des systèmes Unix est basée sur la «philosophie Unix» qui comprend les caractéristiques suivantes:
- Utilisation de texte brut pour le stockage des données.
- Système de fichiers hiérarchique.
- Manipuler les périphériques et certains types spécifiques de communication inter-processus (IPC) sous forme de fichiers.
- Employant un grand nombre d'outils logiciels.
- Plusieurs petits programmes simples et modulaires qui peuvent être assemblés via un interpréteur de ligne de commande à l'aide de tubes, contrairement à l'utilisation d'un seul programme monolithique qui comprend toutes les mêmes fonctionnalités.
Il convient de mentionner ici la citation ci-dessous sur la philosophie Unix:
«Bien que cette philosophie ne puisse pas être écrite en une seule phrase, son cœur est l’idée que la puissance d’un système vient plus des relations entre les programmes que des programmes eux-mêmes. De nombreux programmes UNIX font des choses assez triviales isolément, mais, combinés à d’autres programmes, deviennent des outils généraux et utiles. » - Brian Kernighan et Rob Pike
Architecture Unix
Le diagramme ci-dessous vous décrit l'architecture Unix.
(image la source )
Le programme de contrôle principal d'Unix est son noyau. Le noyau a un contrôle total sur l'ensemble du système. Il comporte des sous-systèmes qui offrent des services de gestion du système de fichiers, de gestion des ressources, de gestion de la mémoire, de démarrage et d'arrêt des programmes et de quelques autres tâches de base de bas niveau.
Le noyau est le cœur du système d'exploitation et agit comme une interface entre l'utilisateur et le matériel. Chaque sous-système du noyau possède certaines fonctionnalités telles que la concurrence, la mémoire virtuelle, la pagination et un système de fichiers virtuel.
Dans les couches externes de l'architecture, nous avons le shell, les commandes et les programmes d'application. Shell est l'interface entre l'utilisateur et le noyau. Shell et l'utilisateur saisissent les commandes, interprètent ces commandes et appellent les programmes informatiques en conséquence.
Exemple du système d'exploitation Unix est Solaris et HP-UX. Les plus grands distributeurs de systèmes UNIX sont IBM, HP et SUN.
Lecture recommandée => Tutoriels de formation Unix gratuits
Qu'est-ce que Linux?
A présent, vous auriez une bonne idée d'Unix. Explorons maintenant Linux en détail.
Les gens confondent beaucoup les termes Unix et Linux et posent généralement des questions comme «Unix est-il différent de Linux?» / «Est-ce que Linux et Unix sont la même chose?» / 'Linux est-il comme Unix?' / 'Linux est-il construit sur Unix?' .
Voici la réponse à toutes ces questions. Tout d'abord, permettez-moi de clarifier votre confusion en une seule ligne. Linux et Unix sont différents mais ils ont une relation l'un avec l'autre car Linux est dérivé d'Unix.
Linux n'est pas Unix, mais c'est un système d'exploitation de type Unix. Le système Linux est dérivé d'Unix et c'est une continuation de la base de la conception Unix. Les distributions Linux sont l'exemple le plus célèbre et le plus sain des dérivés directs Unix.BSD (Berkley Software Distribution) est également un exemple de dérivé Unix.
À ce stade, il est important pour nous de vous expliquer ce qu'est Unix-like?
Un système d'exploitation de type Unix (également appelé UN * X ou * nix) est celui qui fonctionne d'une manière similaire aux systèmes Unix, cependant, il n'est pas nécessaire qu'ils soient conformes à la spécification UNIX unique (SUS) ou POSIX similaire (Portable Interface du système d'exploitation) standard.
SUS est une norme qui doit être respectée pour que tout système d'exploitation puisse être autorisé à utiliser la marque «UNIX». Cette marque est concédée par «The Open Group».
Quelques exemples des systèmes UNIX actuellement enregistrés incluent macOS, Solaris et AIX. Si nous considérons le système POSIX, alors Linux peut être considéré comme un système d'exploitation de type Unix.
Selon le fichier README officiel du noyau Linux, Linux est un clone UNIX qui est développé à partir de zéro par Linus Torvalds et son équipe. Il vise la conformité POSIX. Le code du noyau Linux a été entièrement écrit à partir de zéro. Il est conçu de telle manière qu'il agit comme Unix mais il ne contient pas le code Unix original.
Il est également important de noter que Linux n'est que le noyau et non le système d'exploitation complet . Ce noyau Linux est généralement emballé dans des distributions Linux, ce qui en fait un système d'exploitation complet.
Ainsi, Linux n'est que le noyau, tandis que les distributions Linux peuvent être traitées comme le système d'exploitation. D'un autre côté, UNIX est en soi un système d'exploitation complet car tout (toutes les applications requises reliées ensemble) provient d'un seul fournisseur. Par exemple, Solaris.
La distribution Linux (également appelée distribution en bref) est un système d'exploitation créé à partir d'une collection de logiciels construits sur le noyau Linux et est un système de gestion de paquets.
Une distribution Linux standard comprend un noyau Linux, un système GNU, des utilitaires GNU, des bibliothèques, un compilateur, des logiciels supplémentaires, de la documentation, un système de fenêtres, un gestionnaire de fenêtres et un environnement de bureau.
La plupart des logiciels inclus dans la distribution Linux sont gratuits et open source. Ils peuvent inclure des logiciels propriétaires tels que des blobs binaires, essentiels pour quelques pilotes de périphériques.
Architecture OS basée sur Linux
(image la source )
Ainsi, les distributions Linux rendent en fait le noyau Linux complètement utilisable comme système d'exploitation en y ajoutant différentes applications. Il existe différentes versions de distributions Linux qui répondent à un large éventail de besoins des utilisateurs.
Par exemple , nous avons un système d'exploitation basé sur OpenWrt Linux pour les périphériques embarqués, Linux Mint pour les ordinateurs personnels et Rocks Cluster Distribution pour les supercalculateurs. Au total, environ 600 distributions Linux existent.
Il sera intéressant pour vous de savoir que le célèbre système d'exploitation mobile Android de Google est basé sur Linux. Chaque itération du système d'exploitation Android repose sur le noyau Linux actuel.
Différence entre Unix et Linux
Linux | Unix et autres variantes |
---|---|
Différentes variantes maintenues par différentes communautés; avec le noyau fusionnant dans la branche maintenue par Linus | Différentes variantes maintenues par différentes entreprises; chacun maintient son propre noyau |
Linux fait référence au noyau du système d'exploitation GNU / Linux. Plus généralement, il se réfère à la famille des distributions dérivées. | Unix fait référence au système d'exploitation d'origine développé par AT&T. Plus généralement, il fait référence à une famille de systèmes d'exploitation dérivés. |
Code original développé par Linus et la Fondation GNU | Code original développé par AT & T |
La marque Linux appartient à Linus Trovalds et est gérée par le Linux Mark Institute sous la Linux Foundation. | La marque UNIX est certifiée par Open Group. Liste des systèmes d'exploitation certifiés. |
Le Linux Standard Base (LSB), disponible sous le nom ISO / CEI 23360, est un effort de normalisation de plusieurs distributeurs Linux. LSB est principalement une extension de POSIX mais présente quelques différences. Cependant, la certification LSB n’est pas vraiment nécessaire car les différentes distributions utilisent dans tous les cas le même noyau. | Certification UNIX basée sur la «spécification Unix unique» qui est une extension de IEEE 1003 (POSIX), également disponible en tant qu'ISO / CEI 9945. POSIX spécifie les API de programmation et les interfaces shell et utilitaires. POSIX a été développé pour permettre l'interopérabilité entre les différents fournisseurs UNIX. |
GNU / Linux et ses dérivés comme Debian et Fedora | System-V Unix et ses dérivés comme IBM-AIX et HP-UX; Berkeley Unix et ses dérivés comme FreeBSD et macOS |
Open Source sous la licence publique générale copyleft | Berkeley Unix est partiellement open source sous la licence BSD. La source System-V Unix peut être obtenue sous une licence commerciale propriétaire. |
Conçu comme une plate-forme évolutive à usage général pour un large éventail d'applications. | Généralement conçu pour un public restreint avec un ensemble défini de plates-formes et d'applications cibles. |
Largement disponible sous forme de téléchargement et d'installation de logiciels configurables. | Généralement livré avec du matériel, par ex. MacBook |
Support communautaire gratuit. Assistance payante disponible auprès d'un certain nombre de fournisseurs de services. | Support commercial payant. Conduit souvent à un verrouillage du fournisseur. |
Les interfaces évoluent souvent | Interfaces généralement stables |
Mises à jour fréquentes, avec des corrections de bogues rapides | Les mises à jour peu fréquentes et les correctifs peuvent prendre du temps |
Prend en charge presque tous les systèmes de fichiers utilisés sur les systèmes d'exploitation | La plupart des versions prennent en charge deux ou peut-être trois systèmes de fichiers |
Étendue des outils d'administration système souvent avec une concentration limitée, par ex. Suse YAST | Chaque version dispose généralement d'un outil d'administration système mature, par ex. HP SAM |
Système d'exploitation préféré pour le déploiement dans le cloud et les centres de données principalement pour des raisons économiques | Système d'exploitation préféré pour les exigences de serveur à usage spécial en raison de la disponibilité des applications et serveurs Internet pour des raisons héritées |
Évolutivité obtenue à l'aide de clusters, de grilles ou de cloud. | Évolutivité obtenue à l'aide de clusters ou de grilles |
(Un cluster est un ensemble d'ordinateurs homogènes, une grille est un ensemble d'ordinateurs distribués et un service cloud est un ensemble de clusters virtualisés.) | |
La plupart des lignes de commande et des utilitaires graphiques sont similaires à Unix | La plupart des lignes de commande et des utilitaires graphiques sont similaires à Linux |
Nous espérons que vous devez avoir compris les principales différences entre Unix et Linux dans cet article.
Voyons maintenant quelques différences plus importantes entre Linux et Unix dans le format tabulaire ci-dessous:
Fonctionnalités | Linux | Unix |
---|---|---|
Première version | Linux est plus récent que Unix. Il est dérivé d'Unix et est sorti en septembre 1991. | Unix est plus ancien. A été libéré en octobre 1973 pour des parties extérieures. Auparavant, il était utilisé en interne dans les Bell Labs depuis sa création en 1970. |
Développeur | Inspiré de MINIX (un système d'exploitation de type Unix), Linux a été développé à l'origine par l'ingénieur logiciel finno-américain Linus Torvalds. Puisqu'il s'agit d'une open source, nous avons des développeurs communautaires pour Linux. | Dérivé à l'origine d'AT & T Unix, il a été développé aux Bell Labs par Kenneth Lane Thompson, Dennis Ritchie et 3 autres. |
Écrit en | C et autres langages de programmation. | C et langage d'assemblage. |
Famille OS | Unix-like | Unix |
État de fonctionnement | Actuel | Actuel |
Modèle source | Open source | Mixte. Cependant, traditionnellement source fermée, peu de projets Unix sont open source qui incluent illumos OS et BSD (Berkley Software Distribution) OS. |
Disponible en | Multilingue | Anglais |
Type de noyau | Noyau monolithique | Le type de noyau varie. Il peut être monolithique, micro-noyau et hybride. |
Licence | GNUv2 (licence publique générale GPL) et autres. | La licence varie. Peu de versions sont propriétaires tandis que d'autres sont libres / OSS. |
Site officiel | https://www.kernel.org/ | http://opengroup.org/unix |
Interface utilisateur par défaut | Shell Unix | CLI (Interface de ligne de commande) et graphique (système X Windows) |
Interface en mode texte | Par défaut, le shell est BASH (Bourne Again Shell). De plus, est compatible avec de nombreux interpréteurs de commandes. | À l'origine la coquille Bourne. Il est également compatible avec de nombreux interpréteurs de commandes. |
Coût | Peut être obtenu et utilisé librement. Il existe également des versions payantes de Linux. Mais, généralement, Linux est moins cher que Windows. | Les systèmes d'exploitation propriétaires ont des structures de coûts différentes définies en conséquence par les fournisseurs qui les vendent. |
Exemples | Debian, Ubuntu, Fedora, Red Hat, Android, etc. | IBM AIX, Solaris, HP-UX, Darwin, macOS X, etc. |
Architecture | A été créé à l'origine pour le matériel x86 d'Intel, ports disponibles pour de nombreux types de processeurs. | Compatible avec les machines PA et Itanium. Solaris est également disponible sur x86 / x64. OSX est PowerPC. |
Détection et solution des menaces | Comme Linux est principalement géré par la communauté open source, de nombreux développeurs à travers différentes parties du monde travaillent sur le code. Par conséquent, la détection et la solution des menaces sont assez rapides dans le cas de Linux. | En raison de la nature propriétaire d'Unix, les utilisateurs doivent attendre les correctifs de correction de bogues appropriés. |
Sécurité | Les systèmes d'exploitation basés sur Linux et Unix sont généralement considérés comme très bien protégés contre les logiciels malveillants. Cela est dû au manque d'accès root, aux mises à jour rapides et à une part de marché comparativement faible (par rapport à Windows). En 2018, il n'y avait pas de virus Linux répandu. | Unix est également considéré comme très sûr. Il est encore plus difficile d'infecter car la source n'est pas non plus disponible. Il n'y a pas de virus qui se propage activement pour Unix de nos jours. |
Prix | Linux est gratuit. Cependant, le soutien aux entreprises est disponible à un prix. | Unix n'est pas gratuit. Cependant, certaines versions d'Unix sont gratuites pour le développement (Solaris). Dans un environnement collaboratif, Unix coûte 1 407 $ par utilisateur et Linux coûte 256 $ par utilisateur. Par conséquent, UNIX est extrêmement coûteux. |
Linux vs noyau Unix
Comme Linux seul n'est qu'un noyau, il vaut la peine de discuter des principales différences entre le noyau Linux et le noyau Unix.
Il existe trois types de noyau, à savoir monolithique, micro et hybride (combinaison de monolithique et micro), comme le montre l'image ci-dessous.
(image la source )
Dans l'architecture de noyau monolithique, l'ensemble du système d'exploitation fonctionne dans un seul espace de noyau. Il définit à lui seul une interface virtuelle de haut niveau au-dessus du matériel informatique.
Bien que le noyau Linux tire la plupart de ses caractéristiques de noyaux de type Unix / Unix, cependant, il existe des différences significatives entre les deux.
Dans l'architecture micro-noyau, les services de base du système d'exploitation s'exécutent dans un processus tandis que les autres services s'exécutent dans des processus différents.
Dans le noyau µ, la quantité quasi minimale de mécanismes est incluse dans le mode noyau. Ces mécanismes comprennent l'IPC de base (communication inter-processus), la planification et la gestion de l'espace d'adressage de bas niveau.
En termes de taille de code source, généralement, un micro-noyau est plus petit que le noyau monolithique.
Fonctionnalités | Noyau Linux | Noyau Unix |
---|---|---|
Approche du noyau | Linux suit l'approche du noyau monolithique. | Le noyau Unix peut être monolithique, micro-noyau ou hybride. Par exemple, macOS a un noyau hybride, Solaris a le noyau monolithique et AIX a un noyau monolithique avec des modules chargeables dynamiquement. |
Ajout / suppression de fonctionnalités du noyau | Fournit une fonctionnalité intéressante grâce à laquelle les composants du noyau tels que les lecteurs de périphériques peuvent être ajoutés et supprimés dynamiquement en tant que modules. Cette fonctionnalité est appelée modules de noyau chargeables (LDM). Cela élimine le besoin de recompiler tout le noyau. Cette fonctionnalité donne à son tour une grande flexibilité à Linux. | Le noyau des systèmes Unix traditionnels a besoin de la liaison statique des nouveaux systèmes ajoutés. |
Ruisseaux | Sous Linux, il n'y a pas de sous-système d'E / S de flux. | Dans la plupart des noyaux Unix, le sous-système d'E / S de flux est inclus, ce qui s'avère être l'interface souhaitée pour l'écriture de pilotes de périphériques, de pilotes de terminaux, etc. |
Approche préemptive vs non préemptive | Normalement, un noyau Linux est non préemptif. Cependant, ces derniers temps, le système d'exploitation Linux en temps réel a commencé à utiliser des noyaux préemptifs. | Certains systèmes Unix sont totalement préemptifs. Par exemple, Solaris 2.x. etc. |
Filetage du noyau | Linux utilise le thread du noyau uniquement pour exécuter périodiquement du code du noyau. | De nombreux systèmes d'exploitation de type Unix utilisent le thread du noyau dans le but de changer de contexte de processus. |
Façons de gérer l'environnement multi-thread | Grâce au multi-threading, plusieurs flux d'exécution indépendants appelés processus légers (LWP) sont créés. Sous Linux, LWP est créé en appelant la fonction clone (). Ces processus sous Linux peuvent partager la mémoire physique, les fichiers ouverts, l'espace d'adressage, etc. | Sous Unix, le LWP est basé sur les threads du noyau. |
Commandes Unix Vs Linux
Il existe certaines différences entre les commandes shell, c'est-à-dire même entre les versions de la même variante Unix. Cependant, ce qui varie le plus, c'est le shell interne qui est intégré plutôt que la présentation.
Dans l'ensemble, des efforts sont faits pour garder Linux aussi proche que possible d'Unix en se conformant aux standards POSIX. Par conséquent, les commandes de terminal dans les distributions Linux et les systèmes d'exploitation Unix ne sont pas exactement les mêmes, mais il n'y a pas non plus beaucoup de différences.
Chaque distribution Linux en elle-même a son propre mode d'exécution.
Par exemple , dans CentOS qui est un système d'exploitation de la famille Linux, nous utilisons les commandes yum (modificateur de mise à jour de yellowdog) pour l'installation de nouveaux paquets, tandis que dans Debian qui est un autre système d'exploitation de la famille Linux, nous utilisons les commandes apt-get pour l'installation.
Dans IBM AIX, qui est un système d'exploitation Unix propriétaire, nous utilisons -doigt commande pour vérifier qui est connecté au système. Mais cette commande n'est pas utilisée sous Linux. Sous Linux, nous utilisons le pinky commande pour récupérer le même résultat.
Dans Ubuntu / Debian (un système d'exploitation Linux), nous avons fdisk, séparé, gparted commandes pour la tâche «créer». Par contre, sous Solaris (un système d'exploitation Unix), nous avons un format, fmthard pour la tâche «créer» .
Vous pouvez vous référer à la liste des commandes Linux et Unix, vous constaterez que les commandes Linux et Unix sont similaires mais pas exactement les mêmes.
Exemples
Jusqu'à présent, dans cet article, nous avons vu les différences fondamentales généralisées entre Linux et Unix. Ces différences peuvent être plus spécifiques si nous comparons les versions exactes des deux. Voyons cela à travers quelques exemples.
Solaris contre Linux
Solaris, qui s'appelle désormais Oracle Solaris, est un système d'exploitation de la famille Unix. Comparons Linux avec Solaris.
Linux prend en charge plus d'architectures système que Solaris. Par conséquent, Linux est plus portable.
Tout en parlant de stabilité et d'intégration matérielle, Solaris semble mieux ici. Linux a également un taux de développement plus rapide que Solaris.
Il existe peu d'autres différences techniques entre les deux, mais ici nous limitons notre comparaison uniquement aux performances.
MacOS contre Linux
questions et réponses entretien analyste qualité
MacOS est un système d'exploitation Unix certifié. Il a son propre noyau nommé XNU. Il est utilisé dans les ordinateurs Apple, considérés comme les PC les plus fiables.
MacOS est relativement facile à configurer. D'un autre côté, Linux est moins cher et dispose de nombreux logiciels open source par rapport aux solutions propriétaires d'Apple. De plus, Linux est plus flexible car il peut être exécuté sur presque n'importe quel matériel alors que MacOS ne peut fonctionner que sur du matériel Apple. Par exemple , les iPhones.
MacOS utilise HFS + comme système de fichiers par défaut tandis que Linux utilise ext4.
Conclusion
Unix est très ancien et serait la mère de tous les systèmes d'exploitation. Le noyau Linux est également dérivé d'Unix. La principale différence entre les systèmes d'exploitation basés sur Unix et Linux ne réside pas dans la partie présentation, mais dans la manière dont ils fonctionnent en interne, c'est-à-dire principalement au niveau du noyau.
La différence entre les deux dépendra également des versions exactes de Linux et d'Unix que vous comparez.
Il est également essentiel de déclarer que Linux (et de nombreux autres systèmes d'exploitation de type Unix) sont libres d'obtenir et de modifier, alors que les systèmes d'exploitation Unix ne le sont pas. Le coût est toujours une préoccupation majeure lors du choix de la technologie à utiliser, et Linux a un avantage à cet égard.
Linux est plus flexible et gratuit par rapport aux vrais systèmes Unix et c'est pourquoi Linux a gagné en popularité. Lors de la discussion des commandes sous Unix et Linux, elles ne sont pas les mêmes mais sont très similaires. En fait, les commandes de chaque distribution de la même famille OS varient également.
Solaris, HP, Intel, etc. utilisent des serveurs Internet Unix, des stations de travail et un ordinateur personnel. Alors que Linux est largement utilisé pour les logiciels et le matériel informatique, les jeux, les tablettes, les ordinateurs centraux, etc.
Il existe des études qui indiquent que Linux se développe plus rapidement que tout autre système d'exploitation au cours des dernières années. Par conséquent, à l'avenir, Linux pourrait avoir tendance à laisser les installations UNIX loin derrière.
Les références: Linux, Unix, Distribution Linux, Livre: L'environnement de programmation Unix
J'espère que vous avez apprécié cet article informatif sur la différence Unix et Linux !!
=> Cliquez ici pour la série complète de tutoriels Unix
Tutoriel PREV | Tutoriel SUIVANT
lecture recommandée
- Qu'est-ce qu'Unix: une brève introduction à Unix
- Commandes Unix: commandes Unix de base et avancées avec exemples
- Commandes de traitement de texte Unix: filtres Unix avec exemples
- Tutoriel Unix Pipes: Pipes dans la programmation Unix
- Différence Linux vs Windows: quel est le meilleur système d'exploitation?
- Plus de filtres Unix et de commandes Awk, Sed dans le traitement de texte
- Tutoriel UNIX pour les débutants (plus de 20 vidéos de formation Unix approfondies)
- Comment comparer deux fichiers sous Unix: commandes de comparaison de fichiers