HISTORIQUE

publicité
Cours SEM104
21+22 janvier 2009
Cours linux, devenir un usager averti en deux jours
EH
HISTORIQUE
Linux est un dérivé du fameux système d'exploitation Unix. C'est pourquoi nous allons commencer par parler d'Unix avant de nous consacrer plus spécialement à Linux.
Unix, l'ancêtre de Linux
L'histoire débute en 1969. Ken Thompson travaillait dans la société Bell Laboratories, un centre de recherche commun à AT&T et Western Electric. Il participait au projet du système d'exploitation Multics avec le Massachusetts Institute for Technology (MIT).
En mars 1969, Bell se retira du projet. Ken décida de développer son propre système d'exploitation en s'éloignant résolument de tout ce qui existait déjà sur le marché: La technique du Closed Shop. Les performances d'Unix?
Ken Thompson et ses collaborateurs décidèrent des caractéristiques de leur futur système d'exploitation:
●
Gestionnaire de fichier avec une structure hiérarchique pour plus de flexibilité dans la répartition des données sur le disque dur.
●
Toutes les entrées et les sorties des périphériques, des fichiers et des processus devaient être similaires. Les processus devaient également pouvoir communiquer entre eux, comme si il s'agissait d'entrées ou de sorties de fichier.
●
Il devait être possible de lancer plusieurs processus qui devaient se dérouler indépendamment et de manière asynchrone.
●
Chaque utilisateur devait pouvoir choisir son interpréteur de commande.
●
Le système devait offrir une vaste palette d'utilitaires. Spécialement des compilateurs.
●
Le système devait être aussi portable que possible. (À l'époque la disparité entre les machines étaient énormes)
Dennis Ritchie, Rudd Canaday, puis Brian Kernighan travaillèrent une machine de type PDP­7 de Digital Equipement. En 1970 Unix vit le jour.
Structure et architecture d'Unix
Le langage C fut développé à partir du langage B dans le but de rendre Unix plus portable. Une grande partie du système est écrit en C.
Les principales fonctionnalités du système furent regroupées dans un noyau. Ce noyau est mis à disposition des utilisateurs par l'intermédiaire d'appels système. Le noyau contenait environ 10'000 lignes de codes et représentait 5 a 10% du système Unix complet
Diffusion d'unix aux universités et autres sociétés
Le système Unix fut diffusé auprès d'universités et de grandes écoles américaines. Ces utilisateurs ne supportaient que le coût de la copie du système, avec engagement pour eux de faire remonter chez Bell les messages d'erreurs et problèmes rencontrés.
En 1979 ce fut le succès commercial. De nombreux constructeurs d'ordinateurs aux USA ont adoptés Unix pour leur matériel: Data General, PCS, Digital, Amdahl, Hewlett Packard...
Comme le nom Unix était protégé, l'unversité de Berkeley élabore de nouvelles extensions sous le nom BSD (Berkeley Software Distribution). Data Général appela sa version DG­UX. Hewlett Packard HP­UX, Amdahl UTS. Cette pléthore de dénomination continue encore aujourd'huit.
Les différentes versions d'Unix et les standards
Malgré toutes les déclarations de bonnes intentions, les constructeurs continuèrent à modifier chacun une foule de détails. Au point que le développement d'applications portables devint problématique, même au sein du monde Unix. Un concepteur de logiciels devait mettre au point au minimum une demi douzaine de versions différentes pour les diverses versions d'Unix. Le succès commercial s'en ressentit tout naturellement.
Réduire ces disparités fut l'objectif majeur du nouveau repreneur de la distribution d'Unix: AT&T. Des normes sont éditées qui définissent les performances et les fonctionnalités qu'un système Unix correct doit offrir à l'utilisateur.
Depuis la fin des années 80, Unix est devenu un facteur déterminant pour toute une branche de l'industrie. Des entreprises se battent pour s'approprier le produit.
Unix sur PC
Lorsque le PC entama sa marche triomphale au début des années 80, Unix était déjà un produit mûr. De ce fait, on retrouve dans MS­DOS un certain nombre de similitudes avec Unix: Structure de fichier, interpréteur de commandes.
Beaucoup de constructeurs se sont penchés sur le problème de la portabilité d'unix sur PC. Le premier à avoir essayé fut Microsoft qui diffusa un produit appelé Xenix! MS­DOS avait beaucoup de contraintes architecturales et Unix semblait la voie rêvée pour en sortir.
Ces contraintes étaient:
●
Insuffisance de mémoire adressable.
●
Absence de fonction multitâche et multi­utilisateur.
●
Pas de mécanisme de protection de la mémoire en cas d'erreur de programmation.
Microsoft et Unix
En 1979, Microsoft prit une licence Unix et développa le système Xenix. Les faibles performances des processeurs Intel obligèrent Microsoft à procéder à de nombreuses simplifications pour rendre Unix acceptable sur ces machines.
Le succès commercial prit son essor avec le processeur 80286. Dans le monde PC comme ailleur, il devint évident que sans standardisation peu de programmes applicatifs seraient disponibles.
SCO Unix et le processeur 80386
En 1987 le processeur Intel 80386 naquit. Unix pouvait enfin montrer ses possibilités sur un PC.
Santa Cruz Operation diffusa un Unix reconnu standard par AT&T: Unix System V/386. Beaucoup d'applications furent développées pour cette version d'unix.
La société Sun essaya également d'approcher le marché Unix sur PC avec son système Solaris.
L'histoire de Linux
Unix est lié étroitement aux grandes entreprises. L'utilisateur moyen, tel que nous, n'a pas voix au chapitre. Mais nombreux sont les utilisateurs qui ont envie d'en savoir plus sur le coeur du système, notamment dans les universités. Les sociétés propriétaires d'unix n'apprécient pas cette curiosité.
Andrew S. Tanenbaum de la Vrije Universiteit d'Amsterdam, aux Pays­Bas, développa, avec ses élèves, le système Minix pour PC. Grace à ce modèle simplifié d'Unix, les étudiants apprenaient le fonctionnement d'un système. Minix sortit en 1987 et remporta un franc succès.
Minix fut proposé sans licence à des réseaux non commerciaux. C'est ainsi que naquit l'idée d'un système Unix accessible sans droit de licence. Des passionnée ont consacrés leurs loisirs pour transposer Minix à d'autres plates­formes matérielles: Atari, Commodore, Apple...
Linus Torvalds met le feu aux poudres
L'étudiant finlandais Linus Torvalds de l'université de Helsinki part de Minix et édifie Linux. De nombreux bénévoles l'ont aidé en mettant leurs travaux à disposition pour ce projet.
La collaboration avec le projet GNU de la Free Software Foundation de l'université de Cambridge, Massachussetts, permit d'étendre considérablement l'éventail des fonctions et programmes. La règle de base est qu'il n'y a jamais de droits de licence pour aucun code de programme. Toutes les parties du système d'exploitation Unix ont du être réécrites pour être exemptes de droit.
À la fin de 1991, Linus présente la première version opérationnelle du Linux. Chaque mois, une nouvelle version est sortie pour corriger les erreurs détectées par les nombreux utilisateurs.
Pour garantir les libertés du système GNU/Linux et exclure un quelconque droit de propriété sur le nouveau système d'exploitation, il est distribué sous les conditions de la GNU Public Licence. Chaque utilisateur a le droit d'en modifier le code source, de l'améliorer ou de corriger d'éventuelles erreurs mais doit toujours les mettre à disposition de la communauté linux.
Cette licence a prouvé tout recemment son efficacité lorsque la société SCO a été déboutée de sa tentative d'appropriation du système GNU/Linux.
Téléchargement