SlideShare une entreprise Scribd logo

Le Système Linux (1992)

Article paru en 1992 dans Tribunix, la revue de l'AFUU (Association Française des Utilisateurs d'Unix). Sans doute le premier article en français publié sur Linux ! Article published in 1992 in Tribunix, the magazine of the French Unix User Group. Possibly the first article in French ever published on Linux !

1  sur  5
Télécharger pour lire hors ligne
Le syst`eme d’exploitation Linux
R´emy Card, Ren´e Cougnenc, Julien Simon
Remy.Card@linux.org, Rene.Cougnenc@freenix.fr, Julien.Simon@freenix.fr
1 Historique de Linux
Au cours de l’ann´ee 1991, un ´etudiant finlandais, nomm´e Linus Torvalds, a achet´e un micro-
ordinateur de type PC, afin d’´etudier la programmation du microprocesseur i386. Ne voulant pas
ˆetre limit´e par MS/DOS, il a tout d’abord utilis´e un clone d’Unix, peu cher, appel´e Minix. Minix
poss`ede lui-mˆeme certaines limitations qui, bien que moins importantes que celles de MS/DOS,
sont assez g´enantes (limitation de la taille des ex´ecutables `a 64 kilo-octets, limitation des
syst`emes de fichiers `a 64 m´ega-octets, temps de r´eponse d´eplorable, . . . ). Aussi, Linus Torvalds
a commenc´e `a r´e-´ecrire certaines parties du syst`eme afin de lui ajouter des fonctionnalit´es et de
le rendre plus efficace et a diffus´e une distribution source de son travail via Internet. La premi`ere
version de Linux (version 0.1 en aoˆut 1991) ´etait n´ee.
Cette premi`ere version ´etait tr`es limit´ee (elle ne comportait mˆeme pas de gestionnaire des
disquettes) et n’´etait utilisable que sous Minix. Aussi, il est fort probable qu’elle ait ´et´e utilis´ee
par tr`es peu de personnes. N´eanmoins, un petit nombre de ✭✭ hackers ✮✮1 ont d´ecouvert, `a cette
´epoque, cet embryon de syst`eme et ont vu en lui la base d’un syst`eme exploitable. Aussi, un
certain nombre de personnes ont commenc´e `a travailler avec Linus Torvalds afin d’enrichir le
noyau.
Au cours des quatre derni`eres ann´ees, le d´eveloppement du noyau Linux, ainsi que des
utilitaires n´ecessaires pour en faire un syst`eme compatible avec Unix, a ´et´e men´e de mani`ere
intensive par un ensemble de programmeurs, situ´es aux quatre coins du monde, communiquant
via le r´eseau Internet. Ces d´eveloppeurs ont impl´ement´e de nombreuses fonctionnalit´es qui font
de Linux aujourd’hui un clone efficace d’Unix pour micro-ordinateurs PC-386, Amiga et Atari2.
2 M´ethode de d´eveloppement
La fa¸con dont Linux a ´et´e d´evelopp´e (et continue `a ˆetre d´evelopp´e) est assez originale.
En effet, le d´eveloppement de Linux n’est pas contrˆol´e par une organisation responsable du
syst`eme : un ensemble de d´eveloppeurs, r´epartis dans le monde entier, collabore pour ´etendre
les fonctionnalit´es du syst`eme, le plus souvent an dialoguant via Internet. Tout programmeur
disposant des comp´etences n´ecessaires, de temps libre, et d’une certaine dose de courage, peut
participer au d´eveloppement du syst`eme.
Bien que le nom ✭✭ Linux ✮✮ se r´ef`ere au noyau du syst`eme, le d´eveloppement ne se confine
pas `a ce seul noyau : certaines ´equipes travaillent sur d’autres projets, comme la conception et
le d´eveloppement de nouveaux utilitaires ou encore le d´eveloppement des librairies partag´ees
utilis´ees pour programmer.
1. ✭✭ hacker ✮✮ est ici employ´e dans son sens originel, c’est-`a-dire une personne comp´etente passionn´ee passant le
plus gros de son temps `a coder des programmes utiles, et non dans le sens o`u il est parfois employ´e pour d´esigner
des ✭✭ pirates ✮✮ informatiques.
2. Des portages de Linux sont en cours et le noyau devrait fonctionner assez prochainement sur stations de
travail Sparc et sur PC Alpha.
1
Chaque ´equipe travaille selon une structure hi´erarchique informelle : une personne est respon-
sable d’un projet et plusieurs autres programmeurs participent au d´eveloppement en contribuant
du code. L’exemple typique de cette m´ethode de d´eveloppement est le noyau lui-mˆeme : Linus
Torvalds maintient le noyau et c’est lui qui effectue les distributions source quand il estime
que le code est utilisable ; chaque partie importante du noyau (comme la gestion du r´eseau,
les gestionnaires de p´eriph´eriques, le syst`eme de fichiers, . . . ) est sous la responsabilit´e d’un
d´eveloppeur qui centralise le travail d’autres programmeurs et les transmet `a Linus Torvalds
pour inclusion dans le noyau officiel3.
Bien que cette m´ethode de d´eveloppement puisse surprendre au premier abord, elle est tr`es
efficace. La totalit´e du noyau de Linux a ´et´e ´ecrite par des volontaires, qui ont souvent pass´e
des nuits enti`eres `a programmer et `a corriger des bogues.
Le code d´evelopp´e dans le cadre de Linux est le plus souvent diffus´e sous forme de programme
source, sous la licence GNU (✭✭ General Public License ✮✮, ou GPL). La GPL stipule que les
programmes source sont la propri´et´e de leurs auteurs et qu’ils doivent ˆetre distribu´es sous forme
de source. Cette licence autorise quiconque `a revendre ces programmes mais elle impose que
tout utilisateur puisse avoir acc`es aux programmes source. De plus, la GPL impose que toute
modification de ces programmes est couverte par la mˆeme licence, et donc que les programmes
seront toujours librement disponibles.
3 Fonctionnalit´es de Linux
3.1 Le noyau
Linux offre toutes les fonctionnalit´es d’un clone Unix sur micro-ordinateurs PC-386. Il fournit
un environnement de travail multi-utilisateurs, plusieurs personnes peuvent utiliser la machine
au mˆeme moment, et multi-tˆaches, chaque utilisateur peut ex´ecuter plusieurs programmes en
parall`ele. Le syst`eme fonctionne en mode prot´eg´e, ex´ecute du code 32 bits4, et utilise les
m´ecanismes de protection du processeur pour garantir qu’aucun processus ne peut perturber
l’ex´ecution des autres ou du syst`eme lui-mˆeme.
Le noyau impl´emente les s´emantiques Unix : processus concurrents, chargement `a la demande
des programmes ex´ecutables avec partage de pages et copie en ´ecriture, pagination, syst`emes de
fichiers, support des protocoles r´eseau TCP/IP.
Il supporte, de plus, la majorit´e des p´eriph´eriques existant dans le monde PC (y compris les
cartes sonores) et permet de relire les partitions MS/DOS, OS/2 et tous les formats standards
de CD/ROM.
3.2 Applications
Les librairies de d´eveloppement dans Linux sont bas´ees sur les librairies GNU, de la ✭✭ Free
Software Fundation ✮✮. Ces libraries offrent un haut degr´e de comptabilit´e avec les diff´erents
✭✭ standards ✮✮ Unix (Posix, BSD, System V), ce qui permet de compiler facilement tout type
3. ´Evidemment, le responsable en question ne se contente pas de coordonner le d´eveloppement et programme
´egalement.
4. contrairement `a d’autres syst`emes qui s’ex´ecutent en mode 16 bits et sont donc moins performants. . .
2
d’application disponible au niveau source pour Unix. Ces librairies existent sous forme de
biblioth`eques partag´ees, ce qui signifie que le code des fonctions de librairie n’est charg´e qu’une
seule fois en m´emoire et que les programmes ex´ecutables sont plus petits en taille sur les disques.
La plupart des utilitaires standards Unix sont disponibles sous Linux, aussi bien les com-
mandes de base que des applications plus evolu´ees, comme les compilateurs et ´editeurs de texte.
La plupart des ces utilitaires sont des programmes GNU, qui supportent des extensions qu’on ne
retrouve pas dans les versions BSD ou System V de ces programmes, mais qui restent compatibles
avec ces derni`eres. Certains programmes, notamment les utilitaires r´eseau, sont des programmes
BSD. En r´esum´e, pratiquement tout programme Unix diffus´e sous forme de source peut ˆetre
compil´e sous Linux et s’ex´ecute parfaitement, grˆace `a la compatibilit´e impl´ement´ee dans le
noyau et dans les librairies.
En plus des programmes standards, Linux supporte de ✭✭ grosses ✮✮ applications. On retrouve
l’interface graphique X Window (XFree86 3 bas´e sur X11R6), un environnement de d´evelop-
pement tr`es complet comprenant toutes les biblioth`eques standard, compilateurs et d´ebogueurs
disponibles sous Unix (C, C++, Objective-C, Smalltalk, Fortran, Pascal, Lisp, Scheme, Ada,
gdb, . . . ). L’utilisateur dispose ´egalement d’outils tr`es puissants de formatage de texte, comme
nroff, TEX, et LaTEX5.
3.3 Compatibilit´e avec d’autres syst`emes
Linux n’est pas compatible directement avec les applications d´evelopp´ees pour d’autres sys-
t`emes d’exploitation. Afin de permettre aux utilisateurs de Linux de b´en´eficier des applications
qu’ils poss`edent d´ej`a, que ce soit sous MS/DOS, Windows ou des syst`emes Unix commerciaux,
des ´emulateurs sont en cours de d´eveloppement et permettent d´ej`a d’ex´ecuter des applications
✭✭ ´etrang`eres ✮✮.
L’´emulateur MS/DOS utilise le mode virtuel 8086 du processeur i386 pour ex´ecuter des
applications DOS. Il impl´emente les fonctionnalit´es de MS/DOS dans un processus et assure
ainsi l’interfa¸cage entre l’application et le syst`eme en ´emulant les appels syst`eme effectu´es par le
programme. `A ce jour, de nombreuses applications fonctionnent correctement sous l’´emulateur
MS/DOS et la liste s’allonge tous les jours.
L’´emulateur WINE est assez similaire `a WABI, d´evelopp´e par Sun Microsystems : il permet
d’ex´ecuter des applications Windows en convertissant leurs appeles graphiques en requˆetes
adress´ees `a l’environnement X Window. `A ce jour, seul un petit nombre d’applications Windows
fonctionne correctement mais le d´eveloppement de WINE n’en est qu’`a ses d´ebuts et les progr`es
semblent prometteurs.
Le module de compatibilit´e iBCS2 permet d’ex´ecuter des applications d´evelopp´ees pour des
syst`emes Unix commerciaux sur micro-ordinateurs PC-386. Cet ´emulateur convertit les appels
syst`eme se conformant au standard iBCS2 (qui d´efinit le format des primitives syst`eme ainsi
que celui de leurs arguments) en appels natifs traˆıt´es par le noyau Linux. Il est ainsi possible
d’ex´ecuter de mani`ere transparente des programmes d´evelopp´es pour d’autres syst`emes, comme
SCO par exemple.
Le but de ces diff´erents ´emulateurs est de permettre d’utiliser des applications commerciales
sous Linux. Il faut d´esormais signaler que certains ´editeurs de logiciels consid`erent maintenant
5. Cet article a d’ailleurs ´et´e r´edig´e sous Linux avec l’´editeur Emacs sous X-Window puis format´e avec LaTEX.
3
Linux comme un march´e potentiel pour leurs produits et envisagent de porter leurs applications
sous Linux. De la sorte, il est probable qu’un certain nombre d’applications commerciales
tourneront bientˆot en mode natif sous Linux, sans n´ecessiter d’´emulateur. L’exemple le plus
frappant de cette tendance consiste en le portage du jeu DOOM qui fonctionne sous Linux dans
l’environnement X Window6.
4 Disponibilit´e de Linux
Linux, et ses programmes associ´es, ´etant diffus´es librement sous la licence GNU, ils sont
disponibles au t´el´echargement sur de nombreux serveurs FTP de part le monde. Les trois sites
primaires de distribution sont les suivants :
– tsx-11.mit.edu, dans le r´epertoire /pub/linux;
– ftp.funet.fi, dans le r´epertoire /pub/OS/Linux;
– sunsite.unc.edu, dans le r´epertoire /pub/Linux.
De nombreux serveurs FTP effectuent des miroirs r´eguliers de ces sites, permettant ainsi
d’acc´eder rapidement aux mˆemes donn´ees en raison de la proximit´e g´eographique. En France,
on peut citer les serveurs suivants :
– ftp.ibp.fr, dans le r´epertoire /pub/linux;
– ftp.fdn.org, dans le r´epertoire /pub/Linux;
– ftp.loria.fr, dans le r´epertoire /pub/linux;
– ftp.univ-angers.fr, dans le r´epertoire /pub/Linux.
De nombreuses distributions binaires du syst`eme sont ´egalement disponibles pour un prix
raisonnable sous forme de CD/ROM. Ceci permet aux personnes int´eress´ees d’installer un
syst`eme Linux, mˆeme si elles n’ont pas acc`es au r´eseau Internet. Il est `a noter que ces CD/ROM
ne sont pas toujours `a jour, vu l’´evolution rapide de Linux, mais ils sont g´en´eralement ´edit´es
p´eriodiquement afin d’incorporer les derni`eres versions disponibles.
5 Sources d’informations sur Linux
Linux fait l’objet de plusieurs forums de discussion Usenet, aussi bien en langue anglaise
(comp.os.linux.advocacy, comp.os.linux.announce, comp.os.linux.answers, comp.os.linux.develop-
ment.apps, comp.os.linux.development.system, comp.os.linux.hardware, comp.os.linux.network-
ing, comp.os.linux.misc, comp.os.linux.setup, comp.os.linux.x) qu’en fran¸cais (fr.comp.os.linux).
De nombreuses documentations sont d´esormais ´egalement accessibles. Les ✭✭ HOWTO ✮✮
d´ecrivent, bri`evement mais clairement, l’installation et l’utilisation d’une partie du syst`eme.
6. L’existence de ce jeu sous Linux explique d’ailleurs les efforts des communaut´es FreeBSD et NetBSD `a
impl´ementer un ´emulateur Linux afin de pouvoir utiliser ce jeu. . .
4
De plus, un groupe de documentation, le ✭✭ Linux Documentation Project ✮✮, publie des guides
complets qui sont diffus´es librement. Le serveur FTP ftp.ibp.fr offre ces documentations
dans le r´epertoire /pub/linux/docs ainsi que leurs traductions fran¸caises dans le r´epertoire
/pub/linux/french.
Enfin, il faut signaler que certains ´editeurs commencent `a publier des livres complets sur
Linux. Les premiers livres publi´es sur Linux ´etaient r´edig´es en allemand mais il existe maintenant
des livres en anglais sur Linux, certains de ces livres ´etant traduits en fran¸cais.
6 ´Evolution future de Linux
La version actuelle du noyau de Linux est 1.2. Bien que Linux soit d´ej`a tr`es complet et
comp´etitif avec des syst`emes d’exploitation commerciaux, le d´eveloppement du syst`eme continue.
Des portages du noyau sont en cours afin de r´ealiser des versions s’ex´ecutant sur stations
de travail Sparc et PC Alpha, en plus des versions actuelles fonctionnant sur micro-ordinateurs
PC-386, Amiga et Atari. De nouvelles fonctionnalit´es sont ´egalement `a l’´etude et devraient ˆetre
disponibles prochainement.
Le noyau n’est pas la seule partie du syst`eme `a ´evoluer. Des ´equipes de d´eveloppement
travaillent pour ´etendre les fonctionnalit´es des utilitaires et des librairies. On peut citer, notamment,
l’utilisation imminente du format de fichier ex´ecutable ELF qui permettra la cr´eation de librairies
dynamiques et une compatibilit´e plus grande avec les versions d’Unix commerciaux s’ex´ecutant
sur PC-386.
5

Recommandé

Chapitre i généralités et notions de base
Chapitre i généralités et notions de base Chapitre i généralités et notions de base
Chapitre i généralités et notions de base Wajdi Ben Helal
 
Systémes d'exploitation
Systémes d'exploitationSystémes d'exploitation
Systémes d'exploitationSelman Dridi
 
974267 ubuntu-documentation-installation-configuration
974267 ubuntu-documentation-installation-configuration974267 ubuntu-documentation-installation-configuration
974267 ubuntu-documentation-installation-configurationYounes Hajji
 

Contenu connexe

Tendances

Install party
Install partyInstall party
Install partyhastu2
 
Cours linux intermediaire
Cours linux intermediaireCours linux intermediaire
Cours linux intermediaireGrenois Sempre
 
Embarquer Linux et des systèmes libres, méthodes et apports
Embarquer Linux et des systèmes libres, méthodes et apportsEmbarquer Linux et des systèmes libres, méthodes et apports
Embarquer Linux et des systèmes libres, méthodes et apportsguest3be047
 
Admin linux
Admin linuxAdmin linux
Admin linuxbekhti
 
Linux et le temps réel - Meetup du 15 octobre 2015
Linux et le temps réel - Meetup du 15 octobre 2015Linux et le temps réel - Meetup du 15 octobre 2015
Linux et le temps réel - Meetup du 15 octobre 2015Christian Charreyre
 
Mac os vs linux
Mac os vs linuxMac os vs linux
Mac os vs linuxomri hajer
 
Open Wide : Les outils pour le développement des systemes embarques
Open Wide : Les outils pour le développement des systemes embarquesOpen Wide : Les outils pour le développement des systemes embarques
Open Wide : Les outils pour le développement des systemes embarquesAlexandre LAHAYE
 
Cours linux complet
Cours linux completCours linux complet
Cours linux completaubin82
 
Concevoir un système Linux embarqué avec Yocto Project
Concevoir un système Linux embarqué avec Yocto ProjectConcevoir un système Linux embarqué avec Yocto Project
Concevoir un système Linux embarqué avec Yocto ProjectChristian Charreyre
 
Programmation de systèmes embarqués : BeagleBone Black et Linux embarqué
Programmation de systèmes embarqués : BeagleBone Black et Linux embarquéProgrammation de systèmes embarqués : BeagleBone Black et Linux embarqué
Programmation de systèmes embarqués : BeagleBone Black et Linux embarquéECAM Brussels Engineering School
 
A la découverte d'abus
A la découverte d'abusA la découverte d'abus
A la découverte d'abusThierry Gayet
 
Développement Noyau Et Driver Sous Gnu Linux
Développement Noyau Et Driver Sous Gnu LinuxDéveloppement Noyau Et Driver Sous Gnu Linux
Développement Noyau Et Driver Sous Gnu LinuxThierry Gayet
 
Distro Recipes 2013 : Yocto / OpenEmbedded
Distro Recipes 2013 : Yocto / OpenEmbeddedDistro Recipes 2013 : Yocto / OpenEmbedded
Distro Recipes 2013 : Yocto / OpenEmbeddedAnne Nicolas
 
Présentation de Linux et des logiciels libres
Présentation de Linux et des logiciels libresPrésentation de Linux et des logiciels libres
Présentation de Linux et des logiciels libresGreg Siebrand
 
1 les logicielslibres
1 les logicielslibres1 les logicielslibres
1 les logicielslibresSylvain DENIS
 
Administration reseau linux
Administration reseau linuxAdministration reseau linux
Administration reseau linuxRiadh Briki
 
Ubuntu est il un système sécuritairement sain ODP
Ubuntu est il un système sécuritairement sain ODPUbuntu est il un système sécuritairement sain ODP
Ubuntu est il un système sécuritairement sain ODPMohamed Ben Bouzid
 
Concevoir un système Linux embarqué avec Yocto Project - Version révisée
Concevoir un système Linux embarqué avec Yocto Project - Version réviséeConcevoir un système Linux embarqué avec Yocto Project - Version révisée
Concevoir un système Linux embarqué avec Yocto Project - Version réviséeChristian Charreyre
 
2009 2010 Fip3 A Unix
2009 2010 Fip3 A Unix2009 2010 Fip3 A Unix
2009 2010 Fip3 A UnixJohan Moreau
 

Tendances (20)

Install party
Install partyInstall party
Install party
 
Cours linux intermediaire
Cours linux intermediaireCours linux intermediaire
Cours linux intermediaire
 
Embarquer Linux et des systèmes libres, méthodes et apports
Embarquer Linux et des systèmes libres, méthodes et apportsEmbarquer Linux et des systèmes libres, méthodes et apports
Embarquer Linux et des systèmes libres, méthodes et apports
 
Admin linux
Admin linuxAdmin linux
Admin linux
 
Pourquoi linux
Pourquoi linuxPourquoi linux
Pourquoi linux
 
Linux et le temps réel - Meetup du 15 octobre 2015
Linux et le temps réel - Meetup du 15 octobre 2015Linux et le temps réel - Meetup du 15 octobre 2015
Linux et le temps réel - Meetup du 15 octobre 2015
 
Mac os vs linux
Mac os vs linuxMac os vs linux
Mac os vs linux
 
Open Wide : Les outils pour le développement des systemes embarques
Open Wide : Les outils pour le développement des systemes embarquesOpen Wide : Les outils pour le développement des systemes embarques
Open Wide : Les outils pour le développement des systemes embarques
 
Cours linux complet
Cours linux completCours linux complet
Cours linux complet
 
Concevoir un système Linux embarqué avec Yocto Project
Concevoir un système Linux embarqué avec Yocto ProjectConcevoir un système Linux embarqué avec Yocto Project
Concevoir un système Linux embarqué avec Yocto Project
 
Programmation de systèmes embarqués : BeagleBone Black et Linux embarqué
Programmation de systèmes embarqués : BeagleBone Black et Linux embarquéProgrammation de systèmes embarqués : BeagleBone Black et Linux embarqué
Programmation de systèmes embarqués : BeagleBone Black et Linux embarqué
 
A la découverte d'abus
A la découverte d'abusA la découverte d'abus
A la découverte d'abus
 
Développement Noyau Et Driver Sous Gnu Linux
Développement Noyau Et Driver Sous Gnu LinuxDéveloppement Noyau Et Driver Sous Gnu Linux
Développement Noyau Et Driver Sous Gnu Linux
 
Distro Recipes 2013 : Yocto / OpenEmbedded
Distro Recipes 2013 : Yocto / OpenEmbeddedDistro Recipes 2013 : Yocto / OpenEmbedded
Distro Recipes 2013 : Yocto / OpenEmbedded
 
Présentation de Linux et des logiciels libres
Présentation de Linux et des logiciels libresPrésentation de Linux et des logiciels libres
Présentation de Linux et des logiciels libres
 
1 les logicielslibres
1 les logicielslibres1 les logicielslibres
1 les logicielslibres
 
Administration reseau linux
Administration reseau linuxAdministration reseau linux
Administration reseau linux
 
Ubuntu est il un système sécuritairement sain ODP
Ubuntu est il un système sécuritairement sain ODPUbuntu est il un système sécuritairement sain ODP
Ubuntu est il un système sécuritairement sain ODP
 
Concevoir un système Linux embarqué avec Yocto Project - Version révisée
Concevoir un système Linux embarqué avec Yocto Project - Version réviséeConcevoir un système Linux embarqué avec Yocto Project - Version révisée
Concevoir un système Linux embarqué avec Yocto Project - Version révisée
 
2009 2010 Fip3 A Unix
2009 2010 Fip3 A Unix2009 2010 Fip3 A Unix
2009 2010 Fip3 A Unix
 

En vedette

Base De Datos
Base De DatosBase De Datos
Base De Datoscarlosm10
 
Fensel dieter empirische_studie
Fensel dieter empirische_studieFensel dieter empirische_studie
Fensel dieter empirische_studieTourismFastForward
 
Día de Convivencia CRA Fabara-Nonaspe "Dos Aguas"
Día de Convivencia CRA Fabara-Nonaspe "Dos Aguas"Día de Convivencia CRA Fabara-Nonaspe "Dos Aguas"
Día de Convivencia CRA Fabara-Nonaspe "Dos Aguas"lolabielsa
 
Nicaragua hoy en dia
Nicaragua hoy en diaNicaragua hoy en dia
Nicaragua hoy en diaV Sanchez
 
Inauguración Mural de la Memoria Universidad Nacional de Luján
Inauguración Mural de la Memoria Universidad Nacional de LujánInauguración Mural de la Memoria Universidad Nacional de Luján
Inauguración Mural de la Memoria Universidad Nacional de Lujánadmoro
 
Questionnaire pré don-pour_la_métropole
Questionnaire pré don-pour_la_métropoleQuestionnaire pré don-pour_la_métropole
Questionnaire pré don-pour_la_métropoleSalomé Savard
 
Cas pratiques-internet-marketing-2009
Cas pratiques-internet-marketing-2009Cas pratiques-internet-marketing-2009
Cas pratiques-internet-marketing-2009Shine Lutch
 
Dossier de production groupe 78
Dossier de production   groupe 78 Dossier de production   groupe 78
Dossier de production groupe 78 juliettebouret
 
Nathalie Emilie Helfer informatique
Nathalie Emilie Helfer informatiqueNathalie Emilie Helfer informatique
Nathalie Emilie Helfer informatiqueAgency Euus
 
Etat de l’art des serveurs Unix au dessus de Mach (1995)
Etat de l’art des serveurs Unix au dessus de Mach (1995)Etat de l’art des serveurs Unix au dessus de Mach (1995)
Etat de l’art des serveurs Unix au dessus de Mach (1995)Julien SIMON
 
2014 05 11 sonnenalpe präsentation
2014 05 11 sonnenalpe präsentation2014 05 11 sonnenalpe präsentation
2014 05 11 sonnenalpe präsentationpremium-vacation
 
Ga Los Principios De La Vida
Ga Los Principios De La VidaGa Los Principios De La Vida
Ga Los Principios De La Vidapaquitaguapa
 
Planetas Victor
Planetas VictorPlanetas Victor
Planetas Victoryull71
 

En vedette (20)

Base De Datos
Base De DatosBase De Datos
Base De Datos
 
Fensel dieter empirische_studie
Fensel dieter empirische_studieFensel dieter empirische_studie
Fensel dieter empirische_studie
 
Día de Convivencia CRA Fabara-Nonaspe "Dos Aguas"
Día de Convivencia CRA Fabara-Nonaspe "Dos Aguas"Día de Convivencia CRA Fabara-Nonaspe "Dos Aguas"
Día de Convivencia CRA Fabara-Nonaspe "Dos Aguas"
 
Sesiones 11 12 nuevos bilingües
Sesiones 11 12 nuevos bilingüesSesiones 11 12 nuevos bilingües
Sesiones 11 12 nuevos bilingües
 
Slideshare
SlideshareSlideshare
Slideshare
 
Nicaragua hoy en dia
Nicaragua hoy en diaNicaragua hoy en dia
Nicaragua hoy en dia
 
19a sessió web: 'Lideratge institucional a la xarxa', Antoni Gutiérrez-Rubí
19a sessió web: 'Lideratge institucional a la xarxa', Antoni Gutiérrez-Rubí19a sessió web: 'Lideratge institucional a la xarxa', Antoni Gutiérrez-Rubí
19a sessió web: 'Lideratge institucional a la xarxa', Antoni Gutiérrez-Rubí
 
Rlc fr3-u7
Rlc fr3-u7Rlc fr3-u7
Rlc fr3-u7
 
Inauguración Mural de la Memoria Universidad Nacional de Luján
Inauguración Mural de la Memoria Universidad Nacional de LujánInauguración Mural de la Memoria Universidad Nacional de Luján
Inauguración Mural de la Memoria Universidad Nacional de Luján
 
Questionnaire pré don-pour_la_métropole
Questionnaire pré don-pour_la_métropoleQuestionnaire pré don-pour_la_métropole
Questionnaire pré don-pour_la_métropole
 
Cas pratiques-internet-marketing-2009
Cas pratiques-internet-marketing-2009Cas pratiques-internet-marketing-2009
Cas pratiques-internet-marketing-2009
 
Dossier de production groupe 78
Dossier de production   groupe 78 Dossier de production   groupe 78
Dossier de production groupe 78
 
Prof hanneswerthneretourismus
Prof hanneswerthneretourismusProf hanneswerthneretourismus
Prof hanneswerthneretourismus
 
Nathalie Emilie Helfer informatique
Nathalie Emilie Helfer informatiqueNathalie Emilie Helfer informatique
Nathalie Emilie Helfer informatique
 
Etat de l’art des serveurs Unix au dessus de Mach (1995)
Etat de l’art des serveurs Unix au dessus de Mach (1995)Etat de l’art des serveurs Unix au dessus de Mach (1995)
Etat de l’art des serveurs Unix au dessus de Mach (1995)
 
2014 05 11 sonnenalpe präsentation
2014 05 11 sonnenalpe präsentation2014 05 11 sonnenalpe präsentation
2014 05 11 sonnenalpe präsentation
 
ChequeoméDico1
ChequeoméDico1ChequeoméDico1
ChequeoméDico1
 
Ga Los Principios De La Vida
Ga Los Principios De La VidaGa Los Principios De La Vida
Ga Los Principios De La Vida
 
publicidad
publicidadpublicidad
publicidad
 
Planetas Victor
Planetas VictorPlanetas Victor
Planetas Victor
 

Similaire à Le Système Linux (1992)

0484-systemes-d-exploitation-os.pdf
0484-systemes-d-exploitation-os.pdf0484-systemes-d-exploitation-os.pdf
0484-systemes-d-exploitation-os.pdfRihabBENLAMINE
 
Linux - Hedi Magroun - AUF - 2008
Linux -  Hedi Magroun - AUF - 2008Linux -  Hedi Magroun - AUF - 2008
Linux - Hedi Magroun - AUF - 2008Hedi Magroun
 
33435307 administration-sous-linux
33435307 administration-sous-linux33435307 administration-sous-linux
33435307 administration-sous-linuxdonzerci
 
Cours SE linux
Cours SE linuxCours SE linux
Cours SE linuxIdriss22
 
Rapport d'installation de Linux Engine X MariaDB PHP5
Rapport d'installation de Linux Engine X MariaDB PHP5Rapport d'installation de Linux Engine X MariaDB PHP5
Rapport d'installation de Linux Engine X MariaDB PHP5Mame Cheikh Ibra Niang
 
Tgosp006dveloppement Noyau Et Driver Sous Gnu Linux 1234984890078859 1
Tgosp006dveloppement Noyau Et Driver Sous Gnu Linux 1234984890078859 1Tgosp006dveloppement Noyau Et Driver Sous Gnu Linux 1234984890078859 1
Tgosp006dveloppement Noyau Et Driver Sous Gnu Linux 1234984890078859 1mazurus
 
système d'exploitation Linux commande et shell.pdf
système d'exploitation Linux commande et shell.pdfsystème d'exploitation Linux commande et shell.pdf
système d'exploitation Linux commande et shell.pdfFaouzia Benabbou
 
Introduction aux logiciels libres et à Linux
Introduction aux logiciels libres et à LinuxIntroduction aux logiciels libres et à Linux
Introduction aux logiciels libres et à LinuxBruno Cornec
 
Linux et les systèmes embarqués
Linux et les systèmes embarquésLinux et les systèmes embarqués
Linux et les systèmes embarquésStéphane Legrand
 
Les solutions libres pour les systèmes embarqués
Les solutions libres pour les systèmes embarquésLes solutions libres pour les systèmes embarqués
Les solutions libres pour les systèmes embarquésAlexandre LAHAYE
 
Install Party Linux (Université Constantine 2) - Clic Club
Install Party Linux (Université Constantine 2) - Clic ClubInstall Party Linux (Université Constantine 2) - Clic Club
Install Party Linux (Université Constantine 2) - Clic ClubAdel Belbekri
 

Similaire à Le Système Linux (1992) (20)

Linux_Cours.ppt
Linux_Cours.pptLinux_Cours.ppt
Linux_Cours.ppt
 
0484-systemes-d-exploitation-os.pdf
0484-systemes-d-exploitation-os.pdf0484-systemes-d-exploitation-os.pdf
0484-systemes-d-exploitation-os.pdf
 
Cour1
Cour1Cour1
Cour1
 
Linux - Hedi Magroun - AUF - 2008
Linux -  Hedi Magroun - AUF - 2008Linux -  Hedi Magroun - AUF - 2008
Linux - Hedi Magroun - AUF - 2008
 
chapitre0.pptx
chapitre0.pptxchapitre0.pptx
chapitre0.pptx
 
1514117367383.pptx
1514117367383.pptx1514117367383.pptx
1514117367383.pptx
 
1514117367383.pptx
1514117367383.pptx1514117367383.pptx
1514117367383.pptx
 
Sistema operativo frances
Sistema operativo francesSistema operativo frances
Sistema operativo frances
 
33435307 administration-sous-linux
33435307 administration-sous-linux33435307 administration-sous-linux
33435307 administration-sous-linux
 
Cours se chap1
Cours se chap1Cours se chap1
Cours se chap1
 
Cours SE linux
Cours SE linuxCours SE linux
Cours SE linux
 
Rapport d'installation de Linux Engine X MariaDB PHP5
Rapport d'installation de Linux Engine X MariaDB PHP5Rapport d'installation de Linux Engine X MariaDB PHP5
Rapport d'installation de Linux Engine X MariaDB PHP5
 
Tgosp006dveloppement Noyau Et Driver Sous Gnu Linux 1234984890078859 1
Tgosp006dveloppement Noyau Et Driver Sous Gnu Linux 1234984890078859 1Tgosp006dveloppement Noyau Et Driver Sous Gnu Linux 1234984890078859 1
Tgosp006dveloppement Noyau Et Driver Sous Gnu Linux 1234984890078859 1
 
système d'exploitation Linux commande et shell.pdf
système d'exploitation Linux commande et shell.pdfsystème d'exploitation Linux commande et shell.pdf
système d'exploitation Linux commande et shell.pdf
 
Introduction aux logiciels libres et à Linux
Introduction aux logiciels libres et à LinuxIntroduction aux logiciels libres et à Linux
Introduction aux logiciels libres et à Linux
 
2003 forum asso-faches
2003 forum asso-faches2003 forum asso-faches
2003 forum asso-faches
 
Linux.debut
Linux.debutLinux.debut
Linux.debut
 
Linux et les systèmes embarqués
Linux et les systèmes embarquésLinux et les systèmes embarqués
Linux et les systèmes embarqués
 
Les solutions libres pour les systèmes embarqués
Les solutions libres pour les systèmes embarquésLes solutions libres pour les systèmes embarqués
Les solutions libres pour les systèmes embarqués
 
Install Party Linux (Université Constantine 2) - Clic Club
Install Party Linux (Université Constantine 2) - Clic ClubInstall Party Linux (Université Constantine 2) - Clic Club
Install Party Linux (Université Constantine 2) - Clic Club
 

Plus de Julien SIMON

An introduction to computer vision with Hugging Face
An introduction to computer vision with Hugging FaceAn introduction to computer vision with Hugging Face
An introduction to computer vision with Hugging FaceJulien SIMON
 
Reinventing Deep Learning
 with Hugging Face Transformers
Reinventing Deep Learning
 with Hugging Face TransformersReinventing Deep Learning
 with Hugging Face Transformers
Reinventing Deep Learning
 with Hugging Face TransformersJulien SIMON
 
Building NLP applications with Transformers
Building NLP applications with TransformersBuilding NLP applications with Transformers
Building NLP applications with TransformersJulien SIMON
 
Building Machine Learning Models Automatically (June 2020)
Building Machine Learning Models Automatically (June 2020)Building Machine Learning Models Automatically (June 2020)
Building Machine Learning Models Automatically (June 2020)Julien SIMON
 
Starting your AI/ML project right (May 2020)
Starting your AI/ML project right (May 2020)Starting your AI/ML project right (May 2020)
Starting your AI/ML project right (May 2020)Julien SIMON
 
Scale Machine Learning from zero to millions of users (April 2020)
Scale Machine Learning from zero to millions of users (April 2020)Scale Machine Learning from zero to millions of users (April 2020)
Scale Machine Learning from zero to millions of users (April 2020)Julien SIMON
 
An Introduction to Generative Adversarial Networks (April 2020)
An Introduction to Generative Adversarial Networks (April 2020)An Introduction to Generative Adversarial Networks (April 2020)
An Introduction to Generative Adversarial Networks (April 2020)Julien SIMON
 
AIM410R1 Deep learning applications with TensorFlow, featuring Fannie Mae (De...
AIM410R1 Deep learning applications with TensorFlow, featuring Fannie Mae (De...AIM410R1 Deep learning applications with TensorFlow, featuring Fannie Mae (De...
AIM410R1 Deep learning applications with TensorFlow, featuring Fannie Mae (De...Julien SIMON
 
AIM361 Optimizing machine learning models with Amazon SageMaker (December 2019)
AIM361 Optimizing machine learning models with Amazon SageMaker (December 2019)AIM361 Optimizing machine learning models with Amazon SageMaker (December 2019)
AIM361 Optimizing machine learning models with Amazon SageMaker (December 2019)Julien SIMON
 
AIM410R Deep Learning Applications with TensorFlow, featuring Mobileye (Decem...
AIM410R Deep Learning Applications with TensorFlow, featuring Mobileye (Decem...AIM410R Deep Learning Applications with TensorFlow, featuring Mobileye (Decem...
AIM410R Deep Learning Applications with TensorFlow, featuring Mobileye (Decem...Julien SIMON
 
A pragmatic introduction to natural language processing models (October 2019)
A pragmatic introduction to natural language processing models (October 2019)A pragmatic introduction to natural language processing models (October 2019)
A pragmatic introduction to natural language processing models (October 2019)Julien SIMON
 
Building smart applications with AWS AI services (October 2019)
Building smart applications with AWS AI services (October 2019)Building smart applications with AWS AI services (October 2019)
Building smart applications with AWS AI services (October 2019)Julien SIMON
 
Build, train and deploy ML models with SageMaker (October 2019)
Build, train and deploy ML models with SageMaker (October 2019)Build, train and deploy ML models with SageMaker (October 2019)
Build, train and deploy ML models with SageMaker (October 2019)Julien SIMON
 
The Future of AI (September 2019)
The Future of AI (September 2019)The Future of AI (September 2019)
The Future of AI (September 2019)Julien SIMON
 
Building Machine Learning Inference Pipelines at Scale (July 2019)
Building Machine Learning Inference Pipelines at Scale (July 2019)Building Machine Learning Inference Pipelines at Scale (July 2019)
Building Machine Learning Inference Pipelines at Scale (July 2019)Julien SIMON
 
Train and Deploy Machine Learning Workloads with AWS Container Services (July...
Train and Deploy Machine Learning Workloads with AWS Container Services (July...Train and Deploy Machine Learning Workloads with AWS Container Services (July...
Train and Deploy Machine Learning Workloads with AWS Container Services (July...Julien SIMON
 
Optimize your Machine Learning Workloads on AWS (July 2019)
Optimize your Machine Learning Workloads on AWS (July 2019)Optimize your Machine Learning Workloads on AWS (July 2019)
Optimize your Machine Learning Workloads on AWS (July 2019)Julien SIMON
 
Deep Learning on Amazon Sagemaker (July 2019)
Deep Learning on Amazon Sagemaker (July 2019)Deep Learning on Amazon Sagemaker (July 2019)
Deep Learning on Amazon Sagemaker (July 2019)Julien SIMON
 
Automate your Amazon SageMaker Workflows (July 2019)
Automate your Amazon SageMaker Workflows (July 2019)Automate your Amazon SageMaker Workflows (July 2019)
Automate your Amazon SageMaker Workflows (July 2019)Julien SIMON
 
Build, train and deploy ML models with Amazon SageMaker (May 2019)
Build, train and deploy ML models with Amazon SageMaker (May 2019)Build, train and deploy ML models with Amazon SageMaker (May 2019)
Build, train and deploy ML models with Amazon SageMaker (May 2019)Julien SIMON
 

Plus de Julien SIMON (20)

An introduction to computer vision with Hugging Face
An introduction to computer vision with Hugging FaceAn introduction to computer vision with Hugging Face
An introduction to computer vision with Hugging Face
 
Reinventing Deep Learning
 with Hugging Face Transformers
Reinventing Deep Learning
 with Hugging Face TransformersReinventing Deep Learning
 with Hugging Face Transformers
Reinventing Deep Learning
 with Hugging Face Transformers
 
Building NLP applications with Transformers
Building NLP applications with TransformersBuilding NLP applications with Transformers
Building NLP applications with Transformers
 
Building Machine Learning Models Automatically (June 2020)
Building Machine Learning Models Automatically (June 2020)Building Machine Learning Models Automatically (June 2020)
Building Machine Learning Models Automatically (June 2020)
 
Starting your AI/ML project right (May 2020)
Starting your AI/ML project right (May 2020)Starting your AI/ML project right (May 2020)
Starting your AI/ML project right (May 2020)
 
Scale Machine Learning from zero to millions of users (April 2020)
Scale Machine Learning from zero to millions of users (April 2020)Scale Machine Learning from zero to millions of users (April 2020)
Scale Machine Learning from zero to millions of users (April 2020)
 
An Introduction to Generative Adversarial Networks (April 2020)
An Introduction to Generative Adversarial Networks (April 2020)An Introduction to Generative Adversarial Networks (April 2020)
An Introduction to Generative Adversarial Networks (April 2020)
 
AIM410R1 Deep learning applications with TensorFlow, featuring Fannie Mae (De...
AIM410R1 Deep learning applications with TensorFlow, featuring Fannie Mae (De...AIM410R1 Deep learning applications with TensorFlow, featuring Fannie Mae (De...
AIM410R1 Deep learning applications with TensorFlow, featuring Fannie Mae (De...
 
AIM361 Optimizing machine learning models with Amazon SageMaker (December 2019)
AIM361 Optimizing machine learning models with Amazon SageMaker (December 2019)AIM361 Optimizing machine learning models with Amazon SageMaker (December 2019)
AIM361 Optimizing machine learning models with Amazon SageMaker (December 2019)
 
AIM410R Deep Learning Applications with TensorFlow, featuring Mobileye (Decem...
AIM410R Deep Learning Applications with TensorFlow, featuring Mobileye (Decem...AIM410R Deep Learning Applications with TensorFlow, featuring Mobileye (Decem...
AIM410R Deep Learning Applications with TensorFlow, featuring Mobileye (Decem...
 
A pragmatic introduction to natural language processing models (October 2019)
A pragmatic introduction to natural language processing models (October 2019)A pragmatic introduction to natural language processing models (October 2019)
A pragmatic introduction to natural language processing models (October 2019)
 
Building smart applications with AWS AI services (October 2019)
Building smart applications with AWS AI services (October 2019)Building smart applications with AWS AI services (October 2019)
Building smart applications with AWS AI services (October 2019)
 
Build, train and deploy ML models with SageMaker (October 2019)
Build, train and deploy ML models with SageMaker (October 2019)Build, train and deploy ML models with SageMaker (October 2019)
Build, train and deploy ML models with SageMaker (October 2019)
 
The Future of AI (September 2019)
The Future of AI (September 2019)The Future of AI (September 2019)
The Future of AI (September 2019)
 
Building Machine Learning Inference Pipelines at Scale (July 2019)
Building Machine Learning Inference Pipelines at Scale (July 2019)Building Machine Learning Inference Pipelines at Scale (July 2019)
Building Machine Learning Inference Pipelines at Scale (July 2019)
 
Train and Deploy Machine Learning Workloads with AWS Container Services (July...
Train and Deploy Machine Learning Workloads with AWS Container Services (July...Train and Deploy Machine Learning Workloads with AWS Container Services (July...
Train and Deploy Machine Learning Workloads with AWS Container Services (July...
 
Optimize your Machine Learning Workloads on AWS (July 2019)
Optimize your Machine Learning Workloads on AWS (July 2019)Optimize your Machine Learning Workloads on AWS (July 2019)
Optimize your Machine Learning Workloads on AWS (July 2019)
 
Deep Learning on Amazon Sagemaker (July 2019)
Deep Learning on Amazon Sagemaker (July 2019)Deep Learning on Amazon Sagemaker (July 2019)
Deep Learning on Amazon Sagemaker (July 2019)
 
Automate your Amazon SageMaker Workflows (July 2019)
Automate your Amazon SageMaker Workflows (July 2019)Automate your Amazon SageMaker Workflows (July 2019)
Automate your Amazon SageMaker Workflows (July 2019)
 
Build, train and deploy ML models with Amazon SageMaker (May 2019)
Build, train and deploy ML models with Amazon SageMaker (May 2019)Build, train and deploy ML models with Amazon SageMaker (May 2019)
Build, train and deploy ML models with Amazon SageMaker (May 2019)
 

Le Système Linux (1992)

  • 1. Le syst`eme d’exploitation Linux R´emy Card, Ren´e Cougnenc, Julien Simon Remy.Card@linux.org, Rene.Cougnenc@freenix.fr, Julien.Simon@freenix.fr 1 Historique de Linux Au cours de l’ann´ee 1991, un ´etudiant finlandais, nomm´e Linus Torvalds, a achet´e un micro- ordinateur de type PC, afin d’´etudier la programmation du microprocesseur i386. Ne voulant pas ˆetre limit´e par MS/DOS, il a tout d’abord utilis´e un clone d’Unix, peu cher, appel´e Minix. Minix poss`ede lui-mˆeme certaines limitations qui, bien que moins importantes que celles de MS/DOS, sont assez g´enantes (limitation de la taille des ex´ecutables `a 64 kilo-octets, limitation des syst`emes de fichiers `a 64 m´ega-octets, temps de r´eponse d´eplorable, . . . ). Aussi, Linus Torvalds a commenc´e `a r´e-´ecrire certaines parties du syst`eme afin de lui ajouter des fonctionnalit´es et de le rendre plus efficace et a diffus´e une distribution source de son travail via Internet. La premi`ere version de Linux (version 0.1 en aoˆut 1991) ´etait n´ee. Cette premi`ere version ´etait tr`es limit´ee (elle ne comportait mˆeme pas de gestionnaire des disquettes) et n’´etait utilisable que sous Minix. Aussi, il est fort probable qu’elle ait ´et´e utilis´ee par tr`es peu de personnes. N´eanmoins, un petit nombre de ✭✭ hackers ✮✮1 ont d´ecouvert, `a cette ´epoque, cet embryon de syst`eme et ont vu en lui la base d’un syst`eme exploitable. Aussi, un certain nombre de personnes ont commenc´e `a travailler avec Linus Torvalds afin d’enrichir le noyau. Au cours des quatre derni`eres ann´ees, le d´eveloppement du noyau Linux, ainsi que des utilitaires n´ecessaires pour en faire un syst`eme compatible avec Unix, a ´et´e men´e de mani`ere intensive par un ensemble de programmeurs, situ´es aux quatre coins du monde, communiquant via le r´eseau Internet. Ces d´eveloppeurs ont impl´ement´e de nombreuses fonctionnalit´es qui font de Linux aujourd’hui un clone efficace d’Unix pour micro-ordinateurs PC-386, Amiga et Atari2. 2 M´ethode de d´eveloppement La fa¸con dont Linux a ´et´e d´evelopp´e (et continue `a ˆetre d´evelopp´e) est assez originale. En effet, le d´eveloppement de Linux n’est pas contrˆol´e par une organisation responsable du syst`eme : un ensemble de d´eveloppeurs, r´epartis dans le monde entier, collabore pour ´etendre les fonctionnalit´es du syst`eme, le plus souvent an dialoguant via Internet. Tout programmeur disposant des comp´etences n´ecessaires, de temps libre, et d’une certaine dose de courage, peut participer au d´eveloppement du syst`eme. Bien que le nom ✭✭ Linux ✮✮ se r´ef`ere au noyau du syst`eme, le d´eveloppement ne se confine pas `a ce seul noyau : certaines ´equipes travaillent sur d’autres projets, comme la conception et le d´eveloppement de nouveaux utilitaires ou encore le d´eveloppement des librairies partag´ees utilis´ees pour programmer. 1. ✭✭ hacker ✮✮ est ici employ´e dans son sens originel, c’est-`a-dire une personne comp´etente passionn´ee passant le plus gros de son temps `a coder des programmes utiles, et non dans le sens o`u il est parfois employ´e pour d´esigner des ✭✭ pirates ✮✮ informatiques. 2. Des portages de Linux sont en cours et le noyau devrait fonctionner assez prochainement sur stations de travail Sparc et sur PC Alpha. 1
  • 2. Chaque ´equipe travaille selon une structure hi´erarchique informelle : une personne est respon- sable d’un projet et plusieurs autres programmeurs participent au d´eveloppement en contribuant du code. L’exemple typique de cette m´ethode de d´eveloppement est le noyau lui-mˆeme : Linus Torvalds maintient le noyau et c’est lui qui effectue les distributions source quand il estime que le code est utilisable ; chaque partie importante du noyau (comme la gestion du r´eseau, les gestionnaires de p´eriph´eriques, le syst`eme de fichiers, . . . ) est sous la responsabilit´e d’un d´eveloppeur qui centralise le travail d’autres programmeurs et les transmet `a Linus Torvalds pour inclusion dans le noyau officiel3. Bien que cette m´ethode de d´eveloppement puisse surprendre au premier abord, elle est tr`es efficace. La totalit´e du noyau de Linux a ´et´e ´ecrite par des volontaires, qui ont souvent pass´e des nuits enti`eres `a programmer et `a corriger des bogues. Le code d´evelopp´e dans le cadre de Linux est le plus souvent diffus´e sous forme de programme source, sous la licence GNU (✭✭ General Public License ✮✮, ou GPL). La GPL stipule que les programmes source sont la propri´et´e de leurs auteurs et qu’ils doivent ˆetre distribu´es sous forme de source. Cette licence autorise quiconque `a revendre ces programmes mais elle impose que tout utilisateur puisse avoir acc`es aux programmes source. De plus, la GPL impose que toute modification de ces programmes est couverte par la mˆeme licence, et donc que les programmes seront toujours librement disponibles. 3 Fonctionnalit´es de Linux 3.1 Le noyau Linux offre toutes les fonctionnalit´es d’un clone Unix sur micro-ordinateurs PC-386. Il fournit un environnement de travail multi-utilisateurs, plusieurs personnes peuvent utiliser la machine au mˆeme moment, et multi-tˆaches, chaque utilisateur peut ex´ecuter plusieurs programmes en parall`ele. Le syst`eme fonctionne en mode prot´eg´e, ex´ecute du code 32 bits4, et utilise les m´ecanismes de protection du processeur pour garantir qu’aucun processus ne peut perturber l’ex´ecution des autres ou du syst`eme lui-mˆeme. Le noyau impl´emente les s´emantiques Unix : processus concurrents, chargement `a la demande des programmes ex´ecutables avec partage de pages et copie en ´ecriture, pagination, syst`emes de fichiers, support des protocoles r´eseau TCP/IP. Il supporte, de plus, la majorit´e des p´eriph´eriques existant dans le monde PC (y compris les cartes sonores) et permet de relire les partitions MS/DOS, OS/2 et tous les formats standards de CD/ROM. 3.2 Applications Les librairies de d´eveloppement dans Linux sont bas´ees sur les librairies GNU, de la ✭✭ Free Software Fundation ✮✮. Ces libraries offrent un haut degr´e de comptabilit´e avec les diff´erents ✭✭ standards ✮✮ Unix (Posix, BSD, System V), ce qui permet de compiler facilement tout type 3. ´Evidemment, le responsable en question ne se contente pas de coordonner le d´eveloppement et programme ´egalement. 4. contrairement `a d’autres syst`emes qui s’ex´ecutent en mode 16 bits et sont donc moins performants. . . 2
  • 3. d’application disponible au niveau source pour Unix. Ces librairies existent sous forme de biblioth`eques partag´ees, ce qui signifie que le code des fonctions de librairie n’est charg´e qu’une seule fois en m´emoire et que les programmes ex´ecutables sont plus petits en taille sur les disques. La plupart des utilitaires standards Unix sont disponibles sous Linux, aussi bien les com- mandes de base que des applications plus evolu´ees, comme les compilateurs et ´editeurs de texte. La plupart des ces utilitaires sont des programmes GNU, qui supportent des extensions qu’on ne retrouve pas dans les versions BSD ou System V de ces programmes, mais qui restent compatibles avec ces derni`eres. Certains programmes, notamment les utilitaires r´eseau, sont des programmes BSD. En r´esum´e, pratiquement tout programme Unix diffus´e sous forme de source peut ˆetre compil´e sous Linux et s’ex´ecute parfaitement, grˆace `a la compatibilit´e impl´ement´ee dans le noyau et dans les librairies. En plus des programmes standards, Linux supporte de ✭✭ grosses ✮✮ applications. On retrouve l’interface graphique X Window (XFree86 3 bas´e sur X11R6), un environnement de d´evelop- pement tr`es complet comprenant toutes les biblioth`eques standard, compilateurs et d´ebogueurs disponibles sous Unix (C, C++, Objective-C, Smalltalk, Fortran, Pascal, Lisp, Scheme, Ada, gdb, . . . ). L’utilisateur dispose ´egalement d’outils tr`es puissants de formatage de texte, comme nroff, TEX, et LaTEX5. 3.3 Compatibilit´e avec d’autres syst`emes Linux n’est pas compatible directement avec les applications d´evelopp´ees pour d’autres sys- t`emes d’exploitation. Afin de permettre aux utilisateurs de Linux de b´en´eficier des applications qu’ils poss`edent d´ej`a, que ce soit sous MS/DOS, Windows ou des syst`emes Unix commerciaux, des ´emulateurs sont en cours de d´eveloppement et permettent d´ej`a d’ex´ecuter des applications ✭✭ ´etrang`eres ✮✮. L’´emulateur MS/DOS utilise le mode virtuel 8086 du processeur i386 pour ex´ecuter des applications DOS. Il impl´emente les fonctionnalit´es de MS/DOS dans un processus et assure ainsi l’interfa¸cage entre l’application et le syst`eme en ´emulant les appels syst`eme effectu´es par le programme. `A ce jour, de nombreuses applications fonctionnent correctement sous l’´emulateur MS/DOS et la liste s’allonge tous les jours. L’´emulateur WINE est assez similaire `a WABI, d´evelopp´e par Sun Microsystems : il permet d’ex´ecuter des applications Windows en convertissant leurs appeles graphiques en requˆetes adress´ees `a l’environnement X Window. `A ce jour, seul un petit nombre d’applications Windows fonctionne correctement mais le d´eveloppement de WINE n’en est qu’`a ses d´ebuts et les progr`es semblent prometteurs. Le module de compatibilit´e iBCS2 permet d’ex´ecuter des applications d´evelopp´ees pour des syst`emes Unix commerciaux sur micro-ordinateurs PC-386. Cet ´emulateur convertit les appels syst`eme se conformant au standard iBCS2 (qui d´efinit le format des primitives syst`eme ainsi que celui de leurs arguments) en appels natifs traˆıt´es par le noyau Linux. Il est ainsi possible d’ex´ecuter de mani`ere transparente des programmes d´evelopp´es pour d’autres syst`emes, comme SCO par exemple. Le but de ces diff´erents ´emulateurs est de permettre d’utiliser des applications commerciales sous Linux. Il faut d´esormais signaler que certains ´editeurs de logiciels consid`erent maintenant 5. Cet article a d’ailleurs ´et´e r´edig´e sous Linux avec l’´editeur Emacs sous X-Window puis format´e avec LaTEX. 3
  • 4. Linux comme un march´e potentiel pour leurs produits et envisagent de porter leurs applications sous Linux. De la sorte, il est probable qu’un certain nombre d’applications commerciales tourneront bientˆot en mode natif sous Linux, sans n´ecessiter d’´emulateur. L’exemple le plus frappant de cette tendance consiste en le portage du jeu DOOM qui fonctionne sous Linux dans l’environnement X Window6. 4 Disponibilit´e de Linux Linux, et ses programmes associ´es, ´etant diffus´es librement sous la licence GNU, ils sont disponibles au t´el´echargement sur de nombreux serveurs FTP de part le monde. Les trois sites primaires de distribution sont les suivants : – tsx-11.mit.edu, dans le r´epertoire /pub/linux; – ftp.funet.fi, dans le r´epertoire /pub/OS/Linux; – sunsite.unc.edu, dans le r´epertoire /pub/Linux. De nombreux serveurs FTP effectuent des miroirs r´eguliers de ces sites, permettant ainsi d’acc´eder rapidement aux mˆemes donn´ees en raison de la proximit´e g´eographique. En France, on peut citer les serveurs suivants : – ftp.ibp.fr, dans le r´epertoire /pub/linux; – ftp.fdn.org, dans le r´epertoire /pub/Linux; – ftp.loria.fr, dans le r´epertoire /pub/linux; – ftp.univ-angers.fr, dans le r´epertoire /pub/Linux. De nombreuses distributions binaires du syst`eme sont ´egalement disponibles pour un prix raisonnable sous forme de CD/ROM. Ceci permet aux personnes int´eress´ees d’installer un syst`eme Linux, mˆeme si elles n’ont pas acc`es au r´eseau Internet. Il est `a noter que ces CD/ROM ne sont pas toujours `a jour, vu l’´evolution rapide de Linux, mais ils sont g´en´eralement ´edit´es p´eriodiquement afin d’incorporer les derni`eres versions disponibles. 5 Sources d’informations sur Linux Linux fait l’objet de plusieurs forums de discussion Usenet, aussi bien en langue anglaise (comp.os.linux.advocacy, comp.os.linux.announce, comp.os.linux.answers, comp.os.linux.develop- ment.apps, comp.os.linux.development.system, comp.os.linux.hardware, comp.os.linux.network- ing, comp.os.linux.misc, comp.os.linux.setup, comp.os.linux.x) qu’en fran¸cais (fr.comp.os.linux). De nombreuses documentations sont d´esormais ´egalement accessibles. Les ✭✭ HOWTO ✮✮ d´ecrivent, bri`evement mais clairement, l’installation et l’utilisation d’une partie du syst`eme. 6. L’existence de ce jeu sous Linux explique d’ailleurs les efforts des communaut´es FreeBSD et NetBSD `a impl´ementer un ´emulateur Linux afin de pouvoir utiliser ce jeu. . . 4
  • 5. De plus, un groupe de documentation, le ✭✭ Linux Documentation Project ✮✮, publie des guides complets qui sont diffus´es librement. Le serveur FTP ftp.ibp.fr offre ces documentations dans le r´epertoire /pub/linux/docs ainsi que leurs traductions fran¸caises dans le r´epertoire /pub/linux/french. Enfin, il faut signaler que certains ´editeurs commencent `a publier des livres complets sur Linux. Les premiers livres publi´es sur Linux ´etaient r´edig´es en allemand mais il existe maintenant des livres en anglais sur Linux, certains de ces livres ´etant traduits en fran¸cais. 6 ´Evolution future de Linux La version actuelle du noyau de Linux est 1.2. Bien que Linux soit d´ej`a tr`es complet et comp´etitif avec des syst`emes d’exploitation commerciaux, le d´eveloppement du syst`eme continue. Des portages du noyau sont en cours afin de r´ealiser des versions s’ex´ecutant sur stations de travail Sparc et PC Alpha, en plus des versions actuelles fonctionnant sur micro-ordinateurs PC-386, Amiga et Atari. De nouvelles fonctionnalit´es sont ´egalement `a l’´etude et devraient ˆetre disponibles prochainement. Le noyau n’est pas la seule partie du syst`eme `a ´evoluer. Des ´equipes de d´eveloppement travaillent pour ´etendre les fonctionnalit´es des utilitaires et des librairies. On peut citer, notamment, l’utilisation imminente du format de fichier ex´ecutable ELF qui permettra la cr´eation de librairies dynamiques et une compatibilit´e plus grande avec les versions d’Unix commerciaux s’ex´ecutant sur PC-386. 5