Les systèmes d'exploitation

Le système d'exploitation, (en anglais operating system, ou encore OS ou SE par abréviation), est l'ensemble de programmes central d'un ordinateur qui coordonne et uniformise l'utilisation du matériel par les applications (ou logiciels applicatifs). C'est une sorte d'intermédiaire entre ces logiciels et l'architecture matériel.

Le système d'exploitation sert à coordonner l'utilisation du ou des processeurs. Il peut accorder un certain temps pour l'exécution de chaque processus, réserver de l'espace dans les mémoires pour les besoins des programmes et enfin organiser le contenu des disque durs ou autres type de mémoires de stockage (ou de masse). Il sert enfin à créer une interface de communication homme-machine.

Divers logiciels utilitaires sont fournis d'office avec le système d'exploitation. Ils servent à régler des paramètres de configuration du système d'exploitation, ou à effectuer des opérations élémentaires de manipulation des fichiers (copier, déplacer, renommer, supprimer, etc).

Il existe sur le marché plus de 100 systèmes d'exploitation. Les familles de systèmes d'exploitation les plus populaires sont, aujourd'hui, Windows et les Unix-likes .


Partie I - Les différents systèmes :

 

I – Composition d'un système d'exploitation :

Les principaux éléments qui composent un OS sont les suivants :

* monolithique : lorsque la totalité des programmes du système d'exploitation (en particulier les pilotes (drivers en anglais), les programmes qui traitent le réseau et le système de fichier) résident dans l'espace du noyau. Les systèmes à noyaux monolithique les plus connus sont Linux, BSD, Solaris, ...

* micro noyau : lorsque le noyau contient le strict minimum, (l'ordonnanceur et le programme qui simule la mémoire virtuelle), et lorsque la grande majorité des programmes se trouvent en dehors (les pilotes, les programmes qui traitent les systèmes de fichiers ou l'interface graphique, ainsi que les logiciels applicatifs). Les systèmes à micro-noyaux les plus connus sont Minix, Mac OS X, ...

* noyau hybride : lorsqu'il est entre les deux. On y retrouve plusieurs systèmes dont Windows.

II – Les systèmes d'exploitation les plus connus :

Les systèmes d'exploitation les plus célèbres sont :


  Dans les années 90-2000 : évolution de la branche Windows (désormais multi-tâche) avec des système utilisateurs (Windows 95, 98, Millenium, XP, Vista, Seven) et des systèmes serveurs (Windows NT 4, 2000, 2003, 2008). Aujourd'hui, une version de Windows est installé d'office sur une grande majorité des PC qui sont cette fois de toutes marques (ils ne sont plus la propriété exclusive d'IBM). Microsoft a donc le monopole du marché en matière d'OS. Voici un graphe de l'évolution de la famille Windows Microsoft jusqu'à Windows Vista (source : Wikipédia) :

 

Partie II - Les systèmes de type Unix :

 

I – historique et présentation d'Unix :

Contrairement aux autres systèmes que l'on trouvait lors de sa création, Unix a été conçus par deux développeurs comme projet ludique. Il a ensuite évolué de manière considérable grâce aux efforts de centaines de développeurs.

Tout commence vers la fin des années 60, dans un laboratoire d'AT&T (American Telephone and Telegraph) du New Jersey. En effet, on y développait, en partenariat avec le MIT, (Massachusetts Institute of Technologie) un système massif et monolithique appelé Multics (MULTiplexed Information and Computing Service) . Certaines personnalités du groupe de recherche en Informatique de ces laboratoires, dont Ken Thompson et Denis Ritchie joueront un rôle déterminant dans la création d'un nouveau système qu'ils appelleront finalement Unix.


Cependant, en 1969, AT&T Bell Labs (laboratoires Bell d'AT&T) se font de moins en moins d'illusion sur ce système qui est trop lent et onéreux. En effet, il ne fonctionnait que sur de gros ordinateurs de General Electric, lesquels étaient très cher et rapidement obsolètes. Mais Thompson et son groupe appréciaient les possibilités qu'apportait Multics dont les aspects multi-utilisateurs. Quand Bell Labs se retira du projet, il se mit à développer son propre système qui contiendra une partie des idées de Multics ainsi que certaines de siennes.

Le premier Unix de 1969 était écrit dans un assembleur très élémentaire et on ne pouvait y programmer qu'avec ce langage primitif. Thompson a donc essayer d'y intégrer un compilateur FORTRAN mais ce fut un échec, ce dernier créa donc le langage B afin de le ré-écrire. Or, deux ans plus tard, Dennis Ritchie créait la première version d'un nouveau langage fondé sur le langage B, nommé C. Par la suite, Brian Kernighan  aida, par la suite, à populariser le langage. Il fit également quelques modifications de dernière minute et aida D.Ritchie à la rédaction de la norme. Ce langage devait être convivial, souple et sans contraintes, il avait pour but de rendre Unix portable et plus rapide. En effet, en écrivant la totalité d'Unix en C, K.Thompson et D.Ritchie ont réussi à le faire fonctionner sur plusieurs machines de type différents dès 1974.

Le nom Unics fut d'ailleurs suggéré par B.Kernighan suite à un jeu de mot en latin avec Multics «Multi- car Multics faisait la même chose de plusieurs façons alors qu'Unics faisait chaque chose d'une seule façon». En effet, contrairement à Multics qui visait à offrir simultanément plusieurs services à un ensemble d'utilisateurs, l'Unix se voulait moins ambitieux et utilisable par une seule personne à la fois avec des outils réalisant une seule tâche. Ce nom fut par la suite contracté en Unix (pour au final être déposé sous le nom UNIX par AT&T), cependant personne ne se souvient de qui est à l'origine de la modification du «cs» en «x».

Dans les années 70, il était interdit à AT&T de vendre ce nouveau système, c'est alors que les laboratoires Bell l'ont distribué pour une certaine somme aux facultés et universités. Ce système fut ainsi très répandu dans les années 80, y compris dans les pôles de recherche. C'est alors que l'université de Berkeley (en Californie), qui utilisait Unix depuis plusieurs années, apporta différentes améliorations à ce système et le redistribua sous le nom de BSD (Berkeley Software Distribution), ce qui fit l'objet de procès avec AT&T jusqu'à l'arrivée de GNU/Linux.

Aujourd'hui, la plupart des systèmes de type Unix sur le marché sont dérivé du code original d'AT&T mais aussi des améliorations apportées par l'université de Berkeley.

II – historique et présentation de GNU/Linux :

Dans les années 80, Unix et en particulier son code source étaient très peu accessibles (en raison du prix de plus en plus cher et des droits d'auteur du code). C'est alors qu'en 1982, Richard Stallman, chercheur au MIT, lança un mouvement pour le développement de ce qu'on appelle les logiciels libres. Ainsi apparu le projet GNU (GNU's not Unix) qui a pour but de créer un système d'exploitation exclusivement composé de logiciels libre et dont la mascotte est un gnou.

Il fut donc à l'origine de la licence GNU GPL (Guaranted Public for Life), qui a pour but de garantir la liberté de reproduction d'un logiciel a condition que le dérivé reste sous cette licence. Cela permettra ainsi d'empêcher un groupe de s'octroyer des droits d'auteurs d'un logiciel à l'origine libre. Stallman ce lance ensuite dans le développement de logiciels libre ou l'ont reconnaîtra :

 

Aujourd'hui les logiciels libres sont diverses. On a par exemple Mozilla Firefox, navigateur libre dérivé de Netscape ou Gimp (GNU Image Manipulation Program), un logiciel de dessin et de retouche de photo. Ce dernier est souvent considéré comme une alternative libre à photoshop et est à l'origine de la création d'une bibliothèque graphique GTK utilisé notamment pour l'interface graphique GNOME utilisé sous de nombreux systèmes.

Parallèlement, vers la fin des années 80, Andrew Tanenbaum avait développé un clone d'Unix fondé sur un micro-noyau, qu'il appela pour cette raison Minix. Il l'avait développé et volontairement réduit à des fins pédagogiques, afin que ses étudiants puissent comprendre le fonctionnement des systèmes de type Unix. Il ne se doutait pas que ce petit système en serait à l'origine d'un autre qui fera tomber l'Unix d'AT&T.

En effet, en 1991, un étudiant norvégien de l'université d'Helsinki, Linus Torvalds, se mit à développer son propre noyau Unix, en s'inspirant des sources de Minix, pour y ajouter de nouvelles fonctionnalités. Il inscris ensuite son projet sous les termes de la licence GPL.

Ce nouveau noyau était cette fois monolithique (ce qui fit l'objet d'une dispute entre Tanenbaum et Torvalds) mais tant de plus en plus à devenir hybride selon les différentes distributions actuelles. Or, un noyau était exactement ce qui manquait dans le projet GNU, sans cela il ne pouvait s'agir d'un nouvel OS. Ainsi est apparu GNU/Linux, que l'on préfère parfois appeler Linux pour aller plus vite ou pour d'autres raisons (le terme "Linux" étant un jeu de mot, venant à la fois du prénom de l'auteur et d'Unix).

Tux la mascotte de Linux est un manchot de même que la mascotte de l'université d'Helsinki en Finlande. Elle fut crée en 1996 par Larry Edwing grâce à Gimp.


Tux, la mascotte de Linux

III – Les systèmes de type Unix et les distributions Linux actuelles :

1) Aujourd'hui nous avons encore de nombreux systèmes dérivés d'Unix sans appartenir à la famille des Linux, parmi eux se trouvent :

1 La version 1 de Solaris dérivait de BSD, mais les versions qui ont suivies dont les Open Solaris dérivent du système V releas 4 (SVR4) d'AT&T.

2) Il existe également de nombreuses distributions et familles de distributions de Linux, parmi les plus célèbres, on retrouve :

Il est important de noter trois choses :

IV – Caractéristiques de ces systèmes :

La plupart des systèmes de type Unix actuels, dont les distributions de Linux, ont les caractéristiques suivantes :


Article d'InfosLinux   Contrat Creative Commons