UNIX - Définition et Explications

Source: Wikipédia sous licence CC-BY-SA 3.0.
La liste des auteurs de cet article est disponible ici.

Le système UNIX

Le système UNIX est multi-utilisateur et multitâche, il permet donc à un ordinateur mono ou multi-processeurs d'exécuter apparemment simultanément plusieurs programmes dans des zones protégées appartenant chacune à un utilisateur.

Stations de travail et serveurs Unix

Seuls quelques grands constructeurs de stations de travail et de serveurs développant des dérivés d'UNIX subsistent en 2007 :

  • IBM : système AIX ;
  • Oracle corp. : Solaris ;
  • HP-Compaq : HP-UX ;
  • SGI : IRIX ;
  • SCO Group : UnixWare

Microsoft (Microsoft Corporation (NASDAQ : MSFT) est une multinationale américaine de solutions...) a possédé quelque temps (Le temps est un concept développé par l'être humain pour appréhender le...) les droits d'une version d'UNIX qui se nommait XENIX.

La philosophie des constructeurs de stations et serveurs UNIX a été au départ de développer un système d'exploitation pour pouvoir vendre leurs machines, en y ajoutant si possible un petit « plus » pour se démarquer de la concurrence. C'était oublier que les parcs UNIX sont le plus souvent hétérogènes et que toute différence d'une machine à l'autre, même créée avec la meilleure intention du monde (Le mot monde peut désigner :), menace l'interopérabilité (L’ interopérabilité est la capacité que possède un produit ou un...) donc constitue un risque réel de contre-productivité car contraignent les informaticiens à bricoler afin d'interconnecter les systèmes.

C'est une des raisons pour lesquelles nombre (La notion de nombre en linguistique est traitée à l’article « Nombre...) de ces constructeurs proposent désormais le système GNU/Linux avec leurs serveurs. Toutefois, si le noyau Linux (Le noyau Linux est un noyau de système d'exploitation de type UNIX. Le noyau Linux est un...) est bien défini, le système Linux (Au sens strict, Linux est le nom du noyau de système d'exploitation libre, multitâche,...) change sensiblement d'une distribution à l'autre, ce qui conduit à des dissemblances causant parfois des pertes de temps.

Ce problème se posait déjà jadis avec l'opposition entre UNIX System V (UNIX System V, ou System V (soit « système cinq », 5 étant écrit en chiffre romain)...) et UNIX BSD, en particulier sur des gestions sensiblement différentes de l'impression et des signaux.

Les grands constructeurs tels que PSA, EADS, Dassault utilisent encore des stations sur Unix pour travailler sur la CAO, dans le but de garder une compatibilité avec leur ancien logiciel (En informatique, un logiciel est un ensemble d'informations relatives à des traitements...) de conception Catia V4.

Cependant, PSA utilise de plus en plus Windows (Windows est une gamme de systèmes d'exploitation produite par Microsoft, principalement destinées...) XP Pro 64 bit pour ses postes CAO.

Aspects techniques

Le noyau d'UNIX repose sur quatre concepts élémentaires : les fichiers, les processus, les IPC (communications inter-processus), et les droits d'accès :

Fichiers

Le fichier ( Un fichier est un endroit où sont rangées des fiches. Cela peut-être un meuble, une pièce,...) est l'unité élémentaire de gestion de ressources sous UNIX. Un fichier sous UNIX n'est pas typé, ce qui veut dire que le système ne connaît pas le format des données (Dans les technologies de l'information (TI), une donnée est une description élémentaire, souvent...) qu'il contient, et peut représenter différentes ressources telles qu'une suite de caractères stockée sur un support physique (La physique (du grec φυσις, la nature) est étymologiquement la...), un périphérique (disque dur, imprimante (Les imprimantes ont été conçues dès l’apparition des premiers...), dérouleur à bandes, mémoire (D'une manière générale, la mémoire est le stockage de l'information. C'est aussi le souvenir...), interface (Une interface est une zone, réelle ou virtuelle qui sépare deux éléments. L’interface...) réseau (Un réseau informatique est un ensemble d'équipements reliés entre eux pour échanger des...) etc.), ou même des paramètres dynamiquement reconfigurables du noyau. Un fichier est un objet (De manière générale, le mot objet (du latin objectum, 1361) désigne une entité définie dans...) référencé dans un système de fichiers (Un système de fichiers (file system ou filesystem en anglais) ou système de gestion de...) avec des partitions. Cette référence contient toutes les informations nécessaires au traitement de ce fichier : propriétaire, groupe (chaque fichier étant détenu par un propriétaire faisant partie d'un ou plusieurs groupes, le propriétaire et chaque groupe possèdent des droits particuliers), droits d'accès des différentes catégories d'utilisateurs, taille, date de dernière modification, date du dernier accès, références des blocs de données sur le disque (Le mot disque est employé, aussi bien en géométrie que dans la vie courante, pour désigner une...) s'il représente une suite de caractères.

Processus

Le processus est l'unité élémentaire de gestion des traitements sous UNIX. Il s'agit d'une abstraction ( En philosophie, l'abstraction désigne à la fois une opération qui consiste a isoler par la...) comprenant un espace d'adressage et supportant un ou plusieurs flots (Flots) d'exécution de programme, les threads, chacun possédant une pile et son propre contexte (Le contexte d'un évènement inclut les circonstances et conditions qui l'entourent; le...) d'exécution. UNIX étant un système multitâche (Un système d'exploitation est multitâche (en anglais : multi-task) s’il...), il permet de partager les ressources de calcul entre les threads. D'autre part il est préemptif, ce qui implique que ce partage est effectué de manière transparente pour les threads. Ce partage transparent est réalisé grâce à un ordonnanceur adapté à l'usage (L’usage est l'action de se servir de quelque chose.) auquel est destiné le système. Dans un système à temps partagé (Le temps partagé est une approche permettant de simuler le partage par plusieurs utilisateurs de...), l'ordonnanceur tente de répartir les ressources de calcul de manière équitable entre les threads tout (Le tout compris comme ensemble de ce qui existe est souvent interprété comme le monde ou...) en privilégiant le temps de réponse des entrées/sorties. Dans un système temps-réel, les threads sont ordonnancés selon des contraintes temporelles qui doivent être garanties strictement (temps-réel dur) ou bien avec un certain taux d'échec (temps-réel souple).

Communications inter-processus (IPC)

Les communications inter-processus servent (Servent est la contraction du mot serveur et client.) à arbitrer l'utilisation de ressources partagées entre différents processus ou threads par le biais d'objets de synchronisation tels que les sémaphores ou les mutex (Un Mutex (anglais : Mutual exclusion, Exclusion mutuelle) est une primitive de synchronisation...), à permettre le contrôle (Le mot contrôle peut avoir plusieurs sens. Il peut être employé comme synonyme d'examen, de...) d'un processus par un autre ou bien par le noyau par le biais de signaux, et enfin à permettre à deux processus d'établir une communication : localement par le biais de pipes, de segments de mémoire partagée (Dans un contexte de la programmation concurrente, la mémoire partagée désigne un...) ou de files de messages, et de manière transparente (localement ou sur un réseau) par le biais de sockets.

Contrôle d'accès aux ressources

Au niveau logiciel, la politique de sécurité du système UNIX est fondée sur le principe que chaque ressource admet un identificateur (En programmation informatique, les identificateurs sont des mots qui sont reconnus par le...), un propriétaire et un ensemble (En théorie des ensembles, un ensemble désigne intuitivement une collection...) de droits d'accès (en lecture, en écriture, en exécution) répartis en trois groupes : 1) les droits du propriétaire; 2) les droits du groupe auquel appartient le propriétaire; 3) les droits des autres utilisateurs. La plupart des systèmes UNIX actuels proposent un modèle plus fin, celui des listes de contrôle d'accès (ACL - Access Control List). Un utilisateur spécial appelé root possède tous les droits sur toutes les ressources. Il est en général utilisé uniquement pour des tâches d'administration. Par souci d'une meilleure sécurité, certains systèmes UNIX permettent de mieux nuancer l'acquisition (En général l'acquisition est l'action qui consiste à obtenir une information ou à acquérir un...) de droits supplémentaires par les utilisateurs. Ainsi Linux propose-t-il les « capacités » (capabilities) et Mac OS X (Mac OS X est une ligne de systèmes d’exploitation propriétaire développés et...) permet d'installer des applications et d'intervenir sur la configuration du système au moyen d'un compte administrateur distinct de root (qui est d'ailleurs désactivé par défaut), en ce qu'il ne peut modifier les fichiers fondamentaux du système.

Au niveau matériel, le contrôle d'accès aux ressources se base d'une part sur des mécanismes inhérents aux principes de fonctionnement de la mémoire virtuelle (En informatique, le mécanisme de mémoire virtuelle a été mis au point dans les...), et d'autre part sur un modèle de protection à 2 niveaux : le mode superviseur (le plus privilégié, réservé au fonctionnement du noyau) et le mode utilisateur (le moins privilégié). Ce type de contrôle d'accès est possible sur la plupart des processeurs modernes supportant un UNIX. Certains processeurs fournissent des possibilités de protection plus étendues. Ainsi les processeurs de la famille Intel ix86 comportent 4 niveaux (ou anneaux) de protection. Des systèmes d'exploitation (peu nombreux à l'heure (L’heure est une unité de mesure du temps. Le mot désigne aussi la grandeur...) actuelle), tels que OS/2 (OS/2 est un système d'exploitation créé par Microsoft et IBM, qui ensuite a...), exploitent cette possibilité.

Page générée en 0.064 seconde(s) - site hébergé chez Contabo
Ce site fait l'objet d'une déclaration à la CNIL sous le numéro de dossier 1037632
Ce site est édité par Techno-Science.net - A propos - Informations légales
Partenaire: HD-Numérique