Caractéristiques-clefs
Description
Présentation rapide et historique
Unix, officiellement UNIX (parfois écrit « Unix »), est une famille de systèmes d'exploitation multitâche et multi-utilisateur dérivée du Unix d'origine créé par AT&T. Le développement de ce dernier a commencé dans les années 1970 au centre de recherche de Bell Labs, sous la direction de Kenneth Thompson. Unix repose sur un interpréteur ou superviseur (le shell) et de nombreux petits utilitaires, chacun accomplissant une action spécifique, commutables entre eux (mécanisme de « redirection ») et appelés depuis la ligne de commande.
Particulièrement répandu dans les milieux universitaires au début des années 1980, Unix a été adopté par de nombreuses start-ups fondées par des jeunes entrepreneurs à cette époque. Il a donné naissance à une famille de systèmes, dont les plus populaires à ce jour sont les variantes de BSD (notamment FreeBSD, NetBSD et OpenBSD), GNU/Linux, iOS et macOS. La quasi-totalité des systèmes d'exploitation PC ou mobile (à l'exception de Windows NT) est basée sur le noyau de Unix. On nomme « famille Unix », « systèmes de type Unix » ou simplement « systèmes Unix » l'ensemble de ces systèmes.
Le nom « UNIX » est une marque déposée de l'Open Group, qui autorise son utilisation pour tous les systèmes certifiés conformes à la single UNIX specification ; cependant, il est courant d'appeler ainsi les systèmes de type Unix de façon générale. Il dérive de « Unics » (acronyme de « Uniplexed Information and Computing Service »), et est un jeu de mot avec « Multics », car contrairement à ce dernier qui visait à offrir simultanément plusieurs services à un ensemble d'utilisateurs, le système initial de Kenneth Thompson se voulait moins ambitieux et utilisable par une seule personne à la fois avec des outils réalisant une seule tâche.
Caractéristiques et fonctionnalités
- Multitâche et multi-utilisateur: Unix est conçu pour permettre à plusieurs utilisateurs d'exécuter simultanément plusieurs tâches. Cette caractéristique le rend particulièrement adapté aux environnements où la collaboration et la gestion des ressources sont cruciales.
- Shell et utilitaires: Unix repose sur un interpréteur de commandes (le shell) et une multitude de petits utilitaires, chacun spécialisé dans une tâche précise. Ces utilitaires peuvent être combinés et redirigés pour accomplir des tâches complexes, offrant ainsi une grande flexibilité et puissance.
- Portabilité: Unix est connu pour sa portabilité, ce qui signifie qu'il peut être facilement adapté et exécuté sur différentes architectures matérielles. Cette caractéristique a contribué à sa large adoption et à son évolution en de nombreuses variantes.
- Standards et normes: Unix est conforme à un ensemble de standards réunis sous les normes POSIX et single UNIX specification. Ces normes visent à unifier certains aspects de son fonctionnement, assurant ainsi une compatibilité et une interopérabilité entre les différents systèmes Unix.
- Sécurité et stabilité: Unix est réputé pour sa sécurité et sa stabilité. Ses mécanismes de gestion des permissions et de contrôle d'accès, ainsi que sa conception robuste, en font un choix privilégié pour les environnements nécessitant une haute disponibilité et une grande fiabilité.
- Outils de développement: Unix dispose d'un large éventail d'outils de développement, tels que des compilateurs, des débogueurs et des éditeurs de texte avancés. Ces outils facilitent le développement de logiciels et l'administration du système.
- Scripting et automatisation: Grâce à son shell et à ses utilitaires, Unix permet une automatisation puissante des tâches via des scripts. Les utilisateurs peuvent créer des scripts shell pour automatiser des processus répétitifs, améliorant ainsi l'efficacité et la productivité.
- Gestion des ressources: Unix offre des outils avancés pour la gestion des ressources système, tels que la gestion de la mémoire, des processus et des périphériques. Ces outils permettent aux administrateurs de surveiller et d'optimiser les performances du système.