tuteurs.ens.fr/docs/hublot/hublot05.tml

954 lines
43 KiB
Text
Raw Normal View History

2002-11-07 15:20:56 +01:00
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE html
PUBLIC "-//ENS/Tuteurs//DTD TML 1//EN"
"tuteurs://DTD/tml.dtd">
<html>
<head>
<title>Num<75>ro 5</title>
<style type="text/css">
p.auteur : {font-weight: bold; text-align: right}
p.centre : {text-align: center; }
</style>
</head>
<body>
<p style="text-align: center">
<img src="hublot.png" alt="[Logo du Hublot]" /></p>
<h1> Num<75>ro 5 -- Mars 2000</h1>
<p><em>Pour toutes questions, id<69>es d'articles, etc, n'h<>sitez pas <20> nous
<EFBFBD>crire<EFBFBD>: <a
href="mailto:tuteurs@clipper.ens.fr">tuteurs@clipper.ens.fr</a>. Vous pouvez
aussi mettre un mot dans le casier d'<27>milia Robin. Certaines pages de <a
2002-11-07 15:34:18 +01:00
href="&url.tuteurs;" >notre site</a> sont indiqu<71>es dans les
2002-11-07 15:20:56 +01:00
articles; suivez les liens pour vous y reporter. Certains mots sont suivis
d'un ast<73>risque*; ils renvoient au lexique en fin de num<75>ro. Vous pouvez
retrouver les anciens num<75>ros du <em>Hublot</em> sur notre site<74>: <a
2002-11-07 15:34:18 +01:00
href="&url.tuteurs;docs/hublot/" >Le <em>Hublot Online</em></a>.
2002-11-07 15:20:56 +01:00
Dans ce num<75>ro<72>:</em></p>
<!-- ###################################################### -->
<h2>Pratique</h2>
<!-- ###################################################### -->
<h3><a name="typo">Typographie<69>: les citations</a></h3>
<p>
Le mois dernier, on a <20>tudi<64> l'espacement <20> laisser autour des ponctuations.
Ce mois-ci, on va aborder la fa<66>on de faire les citations. Comme d'habitude,
ces informations proviennent du <em>Lexique des r<>gles typographiques en usage
<EFBFBD> l'Imprimerie nationale</em>, Imprimerie nationale, 1990. </p>
<p>
Il existe des usages en mati<74>re de citations, mais aucune r<>gle pr<70>cise,
associant une fa<66>on de proc<6F>der <20> un type de citations. On peut en effet citer
du texte en le mettant entre guillemets, en le d<>tachant du reste du texte, ou
en le mettant en italique. </p>
<p>
Tout d<>pend de l'<27>quilibre g<>n<EFBFBD>ral de la page, de la pr<70>sence ou non de
citations dans la citation elle-m<>me (citation de second niveau), de la
pr<EFBFBD>sence d'italique dans la citation, etc. Comme toujours, le plus important
est d'adopter une pr<70>sentation uniformis<69>e dans le document. </p>
<h4>Citations ordinaires</h4><p> Une citation
courte appara<72>t le plus souvent entre guillemets. La r<>f<EFBFBD>rence est donn<6E>e
apr<EFBFBD>s la citation, entre parenth<74>ses, en dehors des guillemets.</p>
<div class="encadre">
Les lecteurs fid<69>les du Hublot le savent d<>sormais par coeur;
toutefois, rappelons encore que les guillemets fran<61>ais sont des guillemets
<EFBFBD>carr<EFBFBD>s<EFBFBD>. Les guillemets ``anglais'' ou "am<61>ricains" n'ont pas <20> figurer dans
un document francophone.
</div>
<p>
Ainsi, dans le dernier BOcal, il est <20>crit qu'<27>une dizaine de tickets
de cocktail<69> r<>compenseront les meilleurs d<>guisements (BOcal,
n<EFBFBD><EFBFBD>327). </p>
<h4>Longues citations</h4><p> Les passages longs
sont compos<6F>s en romain d'un corps inf<6E>rieur <20> celui du texte, sans
guillemets, et sont isol<6F>s du texte par des blancs<63>: </p>
<blockquote>
<p style="font-size: 90%">
Dans la plaine rase, sous la nuit sans <20>toiles, d'une
obscurit<EFBFBD> et d'une <20>paisseur d'encre, un homme suivait seul la grande route de
Marchiennes <20> Montsou, dix kilom<6F>tres de pav<61> coupant tout droit, <20> travers
les champs de betteraves. Devant lui, il ne voyait m<>me pas le sol noir, et il
n'avait la sensation de l'immense horizon plat que par les souffles du vent de
mars, des rafales larges comme sur une mer, glac<61>es d'avoir balay<61> des lieues
de marais et de terres nues. Aucune ombre d'arbre ne tachait le ciel, le pav<61>
se d<>roulait avec la rectitude d'une jet<65>e, au milieu de l'embrun aveuglant
des t<>n<EFBFBD>bres. (<28>mile Zola, <em>Germinal</em>.)</p>
</blockquote>
<p>
Les vers sont cit<69>s de la m<>me fa<66>on<6F>: pas de guillemets, caract<63>res plus
petits, blancs avant et apr<70>s la citation. </p>
<h4>Lettres</h4><p> Reproduits <em>in extenso</em>,
les textes <20>pistolaires sont compos<6F>s le plus souvent en italique; on
rencontre parfois aussi des lettres cit<69>es en romain d'un corps (taille)
inf<EFBFBD>rieur. Ils sont s<>par<61>s du texte par des blancs. </p>
<h4>Langues <20>trang<6E>res</h4><p> Les citations en
latin ou en langue <20>trang<6E>re sont cit<69>es en italique. <em>A fortiori</em>,
l'italique s'emploie <em>ad libitum</em> pour toutes les locutions latines,
<em>id est</em> non francis<69>es. </p>
<h4>Citations de second niveau</h4><p> Le
<em>Lexique</em> ne dit rien de bien clair sur ce sujet... Le cas ne se pose
<EFBFBD>videmment que pour les citations guillemet<65>es; dans le cas de l'italique ou
d'un texte d<>tach<63>, on met des guillemets normaux. </p>
<p>Dans le cas des citations entre guillemets, il est interdit de mettre des
guillemets <20> l'envers, <20>comme <20>a<EFBFBD>, pour figurer une citation dans la citation.
On tol<6F>re des guillemets anglais, ``comme ceci'', dans ce cas pr<70>cis. Il
semble que l'usage est de mettre des guillemets normaux<75>: <20>Il dit
<EFBFBD>J'arrive<76> et ouvrit la porte<74>. Si les deux niveaux de guillemets se referment
<EFBFBD> la fin de la citation, on n'en referme qu'un seul<75>: <20>En arrivant, il
d<EFBFBD>clara: <20>Je suis l<><6C>. </p>
<h3><a name="forward">Questions-R<>ponses</a></h3>
<!-- ###################### -->
<p>Comment fait-on pour rediriger son courrier <20>lectronique vers une autre
adresse? Cette op<6F>ration s'appelle <20>forwarder<65> son courrier. Pour cela, il
suffit de cr<63>er chez soi un fichier appel<65> <code>.forward</code> qui contient
la nouvelle adresse. Par exemple<6C>: </p>
<pre>
<span class="prompt">corvette ~ $</span><3E>cat<61>.forward
toto_g@mit.edu
</pre>
<p>
C'est tout! Avec <20>a, le courrier sera automatiquement renvoy<6F> <20> l'adresse
<code>toto_g@mit.edu</code>. </p>
<div class="encadre">
<p>
Ce n'est pas la premi<6D>re fois qu'on vous parle de fichiers dont le nom
commence par un point. Ce sont des fichiers <20>cach<63>s<EFBFBD>, qui n'apparaissent pas
naturellement quand on tape <code>ls</code>. Pour les voir, il faut taper
<code>ls<6C>-a</code> (<em>all</em>). Ce sont des fichiers de configuration,
qui personnalisent un certain nombre de programmes. Ils se trouvent dans
<code>~</code> (votre r<>pertoire d'accueil). Surtout ne les effacez
pas!</p>
</div>
<h3><a name="finger">Commande du mois</a></h3>
<!-- #################### -->
<p>
La commande <code>finger</code> vous donne des informations sur les
utilisateurs du r<>seau. Elle peut aussi s'utiliser avec un nom d'ordinateur,
mais on n'en parlera pas ici. Suivi d'un nom de login,
<code>finger</code> vous donne des informations sur la personne
correspondante<EFBFBD>: </p>
<pre>
<span class="prompt">corvette ~ $</span><3E>finger<65>tuteurs
Login name: tuteurs In real life: Comptes tuteurs
Directory: /users/staffs/tuteurs
Last login Thu Feb 24 15:46 on pts/12 from jonque
New mail received Mon Mar 6 17:14:25 2000;
unread since Sat Mar 4 11:31:38 2000
No Plan.
</pre>
<p>
Vous avez donc le nom de login, le nom complet, le r<>pertoire de cette
personne (ce qui vous donne sa promotion et sa branche), et des renseignements
techniques (dernier login sur la machine o<> vous vous trouvez, derni<6E>re fois
que le courrier a <20>t<EFBFBD> lu). </p>
<p>
Attention avec la question du courrier<65>: s'il est redirig<69> ailleurs, la
personne peut avoir lu son courrier tr<74>s r<>cemment sans que cela apparaisse...
Ainsi, un biologiste dont le courrier est redirig<69> sur <code>horus</code> peut
donner l'impression de n'avoir pas lu son courrier depuis six mois; c'est vrai
<em>sur clipper</em>, la machine que vous interrogez, mais pas sur
<code>horus</code>. </p>
<p>
D'autre part, certains comptes sont un peu sp<73>ciaux, parce qu'une copie du
courrier re<72>u est envoy<6F> <20> un certain nombre de personnes. C'est le cas pour
les tuteurs; aucun tuteur ne se logue <code>tuteurs</code> pour lire le
courrier, car il le re<72>oit directement. Le courrier est donc lu, mais <20>a
n'appara<72>t pas sur le <code>finger</code>. </p>
<p>
Vous voyez enfin l'indication <code>No Plan</code>. Cela signifie que cet
utilisateur n'a pas de fichier <code>.plan</code> sur son compte; ce fichier
sert <20> personnaliser les renseignements donn<6E>s par <code>finger</code>
(coordonn<6E>es, etc). Attention, ne mettez pas d'accent dans ce fichier. On peut
aussi cr<63>er un fichier <code>.project</code>. Celui-ci ne contient qu'une
seule ligne, par exemple pour une devise. L<> encore, il ne faut pas mettre
d'accents. </p>
<p>
<code>finger</code> s'utilise aussi avec des noms ou des pr<70>noms. Pour savoir
le nom de famille de toutes les Nathalie qui ont un compte, tapez
<code>finger<65>Nathalie</code>. </p>
<!-- ########################################################### !-->
<h2>Unix pas <20> pas</h2>
<!-- ########################################################### !-->
<p>
<em>Le cours Unix se divise en trois parties<65>: <20>Concept<70>, <20>Commande<64>,
<EFBFBD>Usage<EFBFBD>. Ce mois-ci, on va expliquer ce que signifie <20>multit<69>ches<65>. La partie
<EFBFBD>Commande<EFBFBD> explique comment on obtient des renseignements sur les processus;
la partie <20>Usage<67> indique comment g<>rer, en pratique, les processus que l'on
lance.</em> </p>
<h3><a name="concept">Concept<70>: <20>multit<69>che<68></a></h3>
<p>
Deux personnes qui se prom<6F>nent en bavardant sont en train de faire plusieurs
choses <20> la fois<69>: leur attention est tourn<72>e principalement vers la
conversation, mais aussi sur les expressions de l'interlocuteur, sur l'heure
qui tourne, etc. De fa<66>on presque automatique, elles <20>vitent les obstacles
courants (marche, racine d'arbre...). Quant <20> la marche elle-m<>me (lever le
pied, lancer la jambe, d<>porter le poids d'une jambe <20> l'autre...), c'est un
geste purement m<>canique. </p>
<p>
Un ordinateur est con<6F>u globalement sur le m<>me principe<70>: plusieurs
programmes s'effectuent simultan<61>ment, <20> des niveaux diff<66>rents<74>: sur
votre ordinateur, vous pouvez lancer <20> la fois Netscape, un logiciel de
courrier, un <20>diteur de textes, une compilation... Tout cela est analogue au
niveau <20>conscient<6E> de nos deux personnages. </p>
<p>
Mais il se passe autre chose, sur le mod<6F>le automatique ou v<>g<EFBFBD>tatif d'un <20>tre
humain<EFBFBD>: afficher des fen<65>tres, r<>agir quand on d<>place la souris,
maintenir l'horloge <20> l'heure, v<>rifier si un nouveau courrier est arriv<69>,
r<EFBFBD>pondre si quelqu'un veut se connecter... </p>
<p>
Chacune de ces op<6F>rations s'appelle un processus<75>: un processus est une
t<EFBFBD>che donn<6E>e, individualis<69>e, identifi<66>e, qui appartient <20> un utilisateur bien
pr<EFBFBD>cis et qui doit acc<63>der <20> des donn<6E>es bien pr<70>cises. Le <code>pine</code>
que vous avez lanc<6E> n'interf<72>re pas avec le rapport que, d'autre part, vous
<EFBFBD>tes en train d'<27>crire. Ou encore, s'il arrive que l'horloge ne se lance pas,
cela n'ab<61>me pas votre bo<62>te aux lettres. </p>
<p>
Unix est un syst<73>me multit<69>che et multi-utilisateurs (voir <a
2002-11-07 15:34:18 +01:00
href="&url.tuteurs;docs/hublot/hublot01.html#concept"><em>Hublot</em>,
2002-11-07 15:20:56 +01:00
n<EFBFBD><EFBFBD>1</a>), ce qui signifie que plusieurs t<>ches diff<66>rentes et
appartenant <20> des personnes diff<66>rentes, peuvent cohabiter. C'est possible
parce que le <a href="#noyau">noyau*</a> veille<6C>: si une t<>che tente de
manipuler les donn<6E>es d'une autre t<>che (ce que Windows appelle <20>effectuer une
op<EFBFBD>ration non conforme<6D>), la contrevenante se fait promptement <20>liminer. Sous
Unix, cela ne plante pas la machine. </p>
<h3><a name="commande">Commandes<65>: <code>ps</code>, <code>top</code> et
priorit<EFBFBD>s</a></h3>
<!-- ######################################################## -->
<h4><code>ps</code></h4><p> La commande
<code>ps</code> affiche la liste des processus lanc<6E>s <20> votre nom sur votre
machine, sous la forme d'un tableau. </p>
<pre>
<span class="prompt">corvette ~ $</span><3E>ps
PID TT S TIME COMMAND
29503 pts/6 S 0:01 /usr/local/util/bin/zsh
29523 pts/6 S 0:14 xdvi hublot5.dvi
29601 pts/6 S 0:04 vim5.new hublot5.tex
29752 pts/7 S 0:01 /usr/local/util/bin/zsh
</pre>
<p>
D<EFBFBD>crivons les principaux champs de ce tableau<61>: le <code>PID</code> est
le num<75>ro du processus (<em>process identifier</em>). La colonne
<code>TT</code> (<em>teletype</em>) indique <20> quel terminal est rattach<63> le
procesus. La colonne <code>S</code> indique l'<27>tat du processus<75>: ici
c'est <code>S</code> (<em>sleeping</em>), car les processus attendent que
quelque chose se passe. La derni<6E>re colonne indique la commande qui a lanc<6E>
le processus. Ici, il y a un <20>diteur de textes (<code>vim</code>), un DVI, et
deux <a href="#shell">shells*</a>. </p>
<h4><code>top</code></h4><p> <code>top</code>
affiche un petit tableau remis <20> jour r<>guli<6C>rement, qui montre les processus
qui consomme le plus de ressources; le plus gourmand figure en haut du
tableau. Sont indiqu<71>s entre autres le num<75>ro du processus (<code>PID</code>),
le login de son propri<72>taire (<code>username</code>), les ressources
consomm<EFBFBD>es (<code>CPU</code>), et enfin le nom de la commande qui a lanc<6E> le
processus. Par exemple<6C>:
</p>
<pre>
<span class="prompt">corvette ~ $</span><3E>top
(...)
PID USERNAME PRI NICE SIZE RES STATE TIME WCPU CPU COMMAND
13102 robin 27 0 1376K 1304K cpu 0:00 1.15% 0.92% top.5.5.sun4u
11894 robin 33 0 8120K 6160K sleep 0:35 0.63% 0.66% Xsun
12491 tuteurs 33 0 1592K 1360K sleep 0:04 0.64% 0.50% vim-5.4
11895 robin 33 0 2288K 1720K sleep 0:01 0.06% 0.12% fvwm2
(...)
</pre>
<p>
Dans cet exemple, c'est la commande <code>top</code> elle-m<>me, de num<75>ro
13102, qui consomme le plus de ressources (0,92%). L'<27>tat (<code>STATE</code>)
indique qu'elle est en cours d'ex<65>cution.
</p>
<p>
Viennent ensuite le serveur<75>X (pour l'interface graphique), l'<27>diteur
<code>vim</code> avec lequel je tape le <em>Hublot</em> au nom de
<code>tuteurs</code>, et le gestionnaire de fen<65>tres <code>fvwm2</code>. Leur
<EFBFBD>tat dit qu'ils <20>dorment<6E>, c'est-<2D>-dire qu'ils sont en attente.
</p>
<h4><code>nice</code></h4><p> Deux colonnes sont
int<EFBFBD>ressantes dans ce tableau<61>: <code>PRI</code> (priorit<69>) et
<code>NICE</code>. La priorit<69> est l'importance donn<6E>e au processus dans la
r<EFBFBD>partition du temps du processeur. Pour pinailler<65>: le
<code>nice</code> est statique, fix<69> par le propri<72>taire. La priorit<69> est
dynamique et calcul<75>e par le noyau en fonction des processus lanc<6E>s et de
leurs nices respectifs.
</p>
<p>
C'est un aspect essentiel du partage des ressources des ordinateurs lorsque
l'on est dans un environnement multi-utilisateurs<72>: un calcul lanc<6E> en
t<EFBFBD>che de fond sur un ordinateur ne doit pas monopoliser le processeur au point
d'emp<6D>cher l'utilisation de la machine par quelqu'un d'autre. Quand on lance
une t<>che de longue haleine, comme un calcul, on dispose de la commande
<code>nice</code>, pour fixer la priorit<69> du processus. Plus le <em>nice</em>
est <20>lev<65>, moins le processus sera prioritaire. </p>
<h4><code>kill</code></h4><p> La commande
<code>kill</code> sert <20> envoyer un signal <20> un processus. Un de ses usages
consiste <20> ordonner au processus de prendre fin. Mais ce serait une tr<74>s
mauvaise id<69>e d'utiliser syst<73>matiquement <code>kill</code> pour quitter un
programme! Cette commande sert quand plus rien d'autre n'est possible. </p>
<h3><a name="usage">Usage<67>: g<>rer les t<>ches</a></h3>
<!-- ################################ -->
<p>
Un programme lanc<6E> dans un terminal peut <20>tre en mode texte, comme
<code>pine</code>, auquel cas il s'affiche dans la fen<65>tre o<> il a <20>t<EFBFBD> lanc<6E>.
Il peut aussi <20>tre en mode graphique, comme un jeu, Netscape, un DVI, et se
lancer dans une nouvelle fen<65>tre. Dans ce cas, il se passe quelque chose comme
ceci quand vous essayez de taper des commandes<65>: </p>
<pre>
<span class="prompt">corvette ~ $</span><3E>netscape<70>www.bnf.fr
ls
toto
</pre>
<p>
Votre Netscape s'est lanc<6E>, et il immobilise la fen<65>tre dans laquelle vous
l'avez lanc<6E>; vous ne pouvez rien taper. </p>
<p>
Dans ce cas, tapez <code>^Z</code>. Cette commande suspend le processus qui
est en cours d'ex<65>cution (ici, Netscape). Vous r<>cup<75>rez la main, c'est-<2D>-dire
que vous pouvez de nouveau taper des commandes. En l'occurence, tapez
imm<EFBFBD>diatement <code>bg</code> (<em>background</em>), pour mettre votre
Netscape en arri<72>re-plan (car pour le moment, il est toujours suspendu, et ne
fonctionne pas). <20>a donne, au total<61>: </p>
<pre>
<span class="prompt">corvette ~ $</span><3E>netscape<70>www.bnf.fr
^Z
zsh: suspended netscape www.bnf.fr
<span class="prompt">corvette ~ $</span><3E>bg
[1] + continued netscape www.bnf.fr
</pre>
<p>
Le plus simple est encore d'utiliser l'esperluette (<code>&amp;</code>), qui
met le programme lanc<6E> en arri<72>re-plan<61>: </p>
<pre>
<span class="prompt">corvette ~ $</span><3E>netscape<70>www.bnf.fr<66>&amp;
[1] 11321
</pre>
<p>
Le premier num<75>ro indiqu<71> est le <em>job ID</em> (num<75>ro de t<>che), le second
est le PID, c'est-<2D>-dire le num<75>ro du processus. Vous pouvez ainsi lancer
plusieurs processus qui tourneront en t<>che de fond. La commande
<code>jobs</code> vous permet de savoir ce qui tourne en t<>che de fond dans un
terminal. Pour mettre au premier plan un processus donn<6E>, vous avez la
commande <code>fg</code> (<em>foreground</em>), en indiquant, le cas <20>ch<63>ant,
le num<75>ro de t<>che, pr<70>c<EFBFBD>d<EFBFBD> d'un pour-cent<6E>: </p>
<pre>
<span class="prompt">corvette ~ $</span><3E>jobs
[1] - running xdvi hublot5.dvi
[2] + running netscape www.bnf.fr
<span class="prompt">corvette ~ $</span><3E>fg<66>%2
[2] - running netscape www.bnf.fr
</pre>
<!-- ###################################################### -->
<h2>Internet</h2>
<!-- ###################################################### -->
<p>
<em>Dans cette section, vous trouverez la suite du cours de Thomas sur les
r<EFBFBD>seaux; ce mois-ci, il explique comme est organis<69> Internet. Dans la section
Netscape, on va parler de la navigation sur le Web.</em> </p>
<h3><a name="rezo">Cours<72>: qu'est-ce qu'un r<>seau?</a></h3>
<!-- ######################################################### -->
<p>
Dans les num<75>ros pr<70>c<EFBFBD>dents, nous avons vu comment deux ordinateurs peuvent
s'<27>changer des donn<6E>es, puis les principes de l'organisation des couches
basses d'un r<>seau plus <20>tendu<64>: couche physique, transport de paquets ou
par circuit (<28>couches basses<65><73>: voir <a href="#niveau">niveau*</a>). Dans
ce num<75>ro, nous abordons le routage<67>: suivre de bout en bout un paquet de
donn<EFBFBD>es de la machine origine <20> la machine destination. </p>
2002-11-08 00:18:18 +01:00
<p style="font-size: 150%"><strong>5- Internet dans tout <20>a</strong>
2002-11-07 15:20:56 +01:00
</p>
<p>
On a vu, dans la section pr<70>c<EFBFBD>dente, comment relier ensemble deux stations
pour qu'elles puissent s'<27>changer des donn<6E>es, pas forc<72>ment de fa<66>on fiable,
et sans garantie de d<>bit. Ces m<>thodes sont locales, et il convenait de
passer <20> un r<>seau global. Ceci a <20>t<EFBFBD> effectu<74> gr<67>ce au r<>seau Internet,
d<EFBFBD>riv<EFBFBD> de l'Arpanet au cours des ann<6E>es 1970 (Arpanet <20>tait le r<>seau des
militaires am<61>ricains). </p>
<p>
Le principe est le suivant<6E>: quand une station veut envoyer un message <20>
une consoeur, elle commence par examiner ses branchements, pour voir si la
destinatrice ne serait pas, par hasard, accessible directement. Dans ce cas,
elle lui envoie le message par le moyen physique pr<70>sent. Dans le cas
contraire, elle envoie le message <20> une station dont elle sait qu'elle est
plus qualifi<66>e qu'elle pour r<>soudre ce probl<62>me. La station qualifi<66>e est
nomm<EFBFBD>e <em>routeur</em>, ou aussi <em>passerelle</em>. </p>
<p>
Pour savoir qui est contactable et comment, chaque station est munie d'une
adresse de 4<>octets (chaque octet contenant un nombre entre 0 et 255).
Ainsi, la station <code>galion</code>, en salle S, est dot<6F>e de l'adresse
129.199.129.10. Ces adresses sont mondiales, et toutes les adresses
commen<EFBFBD>ant par 129.199 sont r<>serv<72>es <20> l'ENS. </p>
<h4>Un exemple <20> l'<27>cole</h4><p> Prenons l'exemple
de <code>galion</code>, tentant d'envoyer un message (sous la forme d'un
paquet IP, comme Internet Protocol) <20> <code>aviso</code>, en salle
Infirmatique. </p>
<p>
<code>galion</code>, d'adresse 129.199.129.10, sait qu'elle est reli<6C>e
directement <20> toutes les stations dont l'adresse commence par 129.199.129. Or,
<code>aviso</code> a l'adresse 129.199.128.1; <code>galion</code>, constatant
cela, d<>cide de transmettre le paquet <20> sa passerelle, <20> savoir
<code>clipper</code> (129.199.129.1, contactable par un lien ethernet direct
depuis <code>galion</code>). Puis <code>galion</code> se lave les mains de ce
qui se passe ensuite, ce n'est plus son affaire. </p>
<p>
<code>clipper</code> ne peut pas non plus contacter <code>aviso</code>
directement, mais il peut parler sur un deuxi<78>me lien depuis son deuxi<78>me
visage, <code>clipper-gw</code> (129.199.1.22). Sur ce lien, il peut contacter
<code>finn</code> (129.199.1.128), qui est responsable des adresses en
129.199.128. <code>clipper</code> transmet donc le paquet <20> <code>finn</code>,
et se d<>sint<6E>resse lui aussi de la question. </p>
<p>
<code>finn</code> poss<73>de aussi deux visages, le second <20>tant
<code>finn128</code> (129.199.128.254), reli<6C> directement aux stations de
l'Infirmatique. <code>finn</code> peut donc communiquer directement avec
<code>aviso</code>, et lui envoie le paquet. </p>
<h4>Routeurs et r<>seau</h4><p> Donc, pour que tout
se passe bien, il suffit que chaque station sache reconna<6E>tre les adresses
contactables directement, et une passerelle pour les autres cas. Les routeurs,
eux, doivent avoir une notion locale de la hi<68>rarchie (<code>clipper</code>
doit conna<6E>tre <code>finn</code>, mais ce que <code>finn</code> doit faire
pour contacter <code>aviso</code> ne le regarde pas). </p>
<p>
Il est m<>me possible de reconstruire ces informations <20> la vol<6F>e<EFBFBD>:
<code>clipper</code> peut tout envoyer sur la machine par d<>faut
(<code>renater</code>), qui lui signalera <20> chaque fois qu'il existe une route
plus directe ne passant pas par lui; <code>clipper</code> s'en rappellera
pendant quelques minutes. Ce m<>canisme, dit de routage dynamique, est un peu
d<EFBFBD>licat <20> mettre en place, aussi on s'en sert avec parcimonie (il est ais<69>
d'obtenir, <20> la suite d'un malentendu, une partie de ping-pong, o<> deux
stations consid<69>rent, pour un paquet donn<6E>, que l'autre station est la
passerelle <20> utiliser). </p>
<p>
Et voil<69>, ceci est Internet<65>: des stations qui s'<27>changent des paquets
(d'une taille maximale de 65<36>536<33>octets, mais souvent plus petits,
de l'ordre de 1<>500<30>octets). Normalement, un paquet n'a pas <20>
effectuer plus de 30<33>sauts pour faire le trajet d'une station <20> une
autre. Les paquets peuvent <20>tre fractionn<6E>s et recombin<69>s au gr<67> des routeurs,
afin de s'adapter aux sp<73>cificit<69>s locales de la liaison. </p>
<p>
Le chemin entre deux stations n'est pas forc<72>ment unique; ceci permet une
tol<EFBFBD>rance aux pannes ou une adaptation aux embouteillages. Notamment, les
communications <20> grande <20>chelle sont alors r<>sistantes aux attaques nucl<63>aires
(c'est ce qui plaisait aux militaires am<61>ricains). Une cons<6E>quence de ce fait
est que deux paquets successifs ne suivent pas forc<72>ment le m<>me chemin; ils
peuvent notamment arriver dans le d<>sordre, et certains peuvent <20>tre dupliqu<71>s
(quand une passerelle cherche <20> savoir, <em>via</em> un protocole appropri<72>,
si un paquet est arriv<69>, et, ne voyant rien venir, en <20>met un autre, alors que
le premier <20>tait simplement parti par un chemin d<>tourn<72>). </p>
<p class="auteur">Thomas Pornin</p>
<p class="centre"> <img src="hublot05/reseau-ens.png" alt="[Une partie du routage <20>
l'ENS]" /> <br />
Figure 1<>: Une partie du routage <20> l'ENS</p>
<h3><a name="netscape">Utiliser Netscape</a></h3>
<!-- ########################################## -->
<p>Le mois dernier, on a vu comment lancer et quitter proprement Netscape. Ce
mois-ci, on va envisager la navigation sur le Web. Comme d'habitude, j'utilise
la version<6F>3 de Netscape. </p>
<h4>Le Web et l'hypertexte</h4><p> Vous savez que
le principe du Web est de mettre en relation des informations dispers<72>es <20>
travers le monde<64>: par exemple, on cr<63>e un lien entre une page Web situ<74>e
en France vers une page situ<74>e au Br<42>sil, et suivre le lien vous emm<6D>ne
automatiquement sur la page br<62>silienne. C'est ce que l'on appelle
l'hypertexte, et c'est ce que veut dire le <code>http</code> plac<61> au d<>but
des adresses Web<65>: <em>HyperText Transfer Protocol</em>. </p>
<h4>Principe du Web</h4><p> Sur le Web, une adresse
s'appelle une URL (<em>Uniform Resource Locator</em>). Prenons pour exemple
l'adresse du <a href="/" >serveur
des <20>l<EFBFBD>ves de l'ENS</a><3E>: <code>http://www.eleves.ens.fr:8080/</code>. Le
<code>http</code> au d<>but indique le protocole <20> utiliser, et signale qu'il
s'agit d'une page Web (cependant, toutes les pages Web ne sont pas servies par
HTTP). Le <code>.fr</code> est un nom de domaine, qui indique ici que la page
se trouve en droit en France (mais il se pourrait que le serveur, en tant que
machine physique, mat<61>rielle, soit aux <20>tats-Unis).
<code>www.eleves.ens</code> d<>signe en r<>alit<69> une machine qui h<>berge le site
des <20>l<EFBFBD>ves de l'institution ENS. Le <code>8080</code> d<>signe un num<75>ro de <a
href="#port">port*</a>. </p>
<p>
Enfin, le <code>/</code> (<em>slash</em>) qui termine l'adresse indique qu'on
se rend au point de d<>part de l'arborescence du site, en pratique la page
d'accueil. </p>
<p>
Tout ceci indique la machine <20> contacter pour rejoindre la page Web. Ensuite,
il peut y avoir d'autres informations quelle page pr<70>cis<69>ment on demande <20>
2002-11-07 15:34:18 +01:00
voir. Par exemple, <code>http://www.cof.ens.fr/clubs/cineclubs.html</code>
2002-11-07 15:20:56 +01:00
correspond la page d'accueil du <a
2002-11-07 15:34:18 +01:00
href="http://www.cof.ens.fr/clubs/cineclubs.html" >Cin<69>-Club de
2002-11-07 15:20:56 +01:00
l'ENS</a>, elle-m<>me un sous-ensemble logique de <code>COF/</code>. </p>
<p>
Quand vous s<>lectionnez un lien, votre ordinateur envoie une requ<71>te sur le
serveur d<>sign<67> par l'URL. Ce serveur renvoie la page demand<6E>e par votre
navigateur (<28>client<6E> du serveur). </p>
<p>
L'ensemble de ces donn<6E>es circulent sur des liens physiques, les c<>bles, qui
ont un d<>bit maximal. La r<>ponse d'un serveur physiquement tr<74>s <20>loign<67> mettra
un peu plus de temps <20> arriver; une grosse quantit<69> de donn<6E>es mettra plus de
temps <20> arriver qu'une petite quantit<69>; enfin, <20> certaines heures, le r<>seau
est encombr<62> par l'ensemble des donn<6E>es transf<73>r<EFBFBD>es par tous les utilisateurs
connect<EFBFBD>s <20> ce moment-l<>. C'est ce qui explique que parfois, une page soit
longue <20> charger. Vous pouvez toujours interrompre le transfert en cliquant
sur le bouton <20><code>Stop</code><3E>. </p>
<h4>Noms de domaines</h4><p> Il y a un certain
nombre de noms de domaine. Une partie indique un pays, dont d<>pend en droit le
serveur<EFBFBD>: <code>.fr</code> pour les serveurs fran<61>ais, <code>.es</code>
pour l'Espagne, <code>.ru</code> pour la Russie, <code>.jp</code> pour le
Japon, etc. </p>
<p>
Il en existe d'autres, comme <code>.edu</code> pour les universit<69>s
am<EFBFBD>ricaines, <code>.org</code> pour les institutions <20> but non lucratif,
<code>.gov</code> pour le gouvernement am<61>ricain. <code>.int</code> est
utilis<EFBFBD> en particulier par les organisations <20>tablies par trait<69>s
internationaux, par exemple l'Union europ<6F>enne. </p>
<p>
De nouveaux noms de domaines sont apparus avec l'engouement pour le Web. Par
exemple, <code>.com</code> d<>signait <20> l'origine des sites d'entreprises, et
<code>.net</code> des fournisseurs d'acc<63>s au r<>seau. Mais AOL, fournisseur
d'acc<63>s, a comme adresse <code>aol.<em>com</em></code> (pour des raisons
historiques, certes). D'autre part, des entreprises peuvent avoir un site avec
un suffixe <code>.net</code>, <20> cause de leur fournisseur d'acc<63>s. </p>
<p>
Un autre exemple<6C>: le suffixe <code>.tv</code> est th<74>oriquement r<>serv<72>
aux <20>les Tuvalu; mais le Web est quelque chose de rentable, et elles ont vendu
quelques noms de domaines <20> des cha<68>nes de t<>l<EFBFBD>vision qui voulaient une
adresse en <code>.tv</code>... </p>
<h4>Aller quelque part</h4><p> Que faire quand vous
voulez aller <20> une adresse pr<70>cise, par exemple le <a
href="http://www.unesco.org/" >site de l'UNESCO</a> (
<code>http://www.unesco.org/</code>)? Cliquez dans le cadre rose
<EFBFBD><code>Location:</code><3E>, effacez l'adresse de la page sur laquelle vous vous
trouvez, et <20>crivez <20> la place l'adresse souhait<69>e. </p>
<p>
Vous pouvez aussi s<>lectionner <code>Open Location</code> dans le menu
<code>File</code> (ou taper <code>Alt-L</code>), et taper votre adresse dans
le petit cadre qui s'affiche. </p>
<h4>Pages d<>j<EFBFBD> visit<69>es</h4><p> Netscape offre deux
possibilit<EFBFBD>s pour revenir sur des pages d<>j<EFBFBD> visit<69>es. Il s'agit d'abord des
trois boutons <code>Back</code>, <code>Forward</code> et <code>Home</code>.
</p>
<p class="centre"><img src="hublot05/navigation1.png" alt="[Les boutons Back, Forward
et Home]" /> </p>
<p>
<code>Back</code> vous ram<61>ne en arri<72>re, vers la derni<6E>re page que vous avez
visit<EFBFBD>e; <code>Forward</code> vous ram<61>ne vers les pages visit<69>es en dernier.
Enfin, <code>Home</code> vous replace sur votre page d'acceuil par d<>faut, qui
est la page du serveur des <20>l<EFBFBD>ves de l'ENS. </p>
<p>
Vous disposez aussi du menu <code>Go</code>. Celui-ci reprend les fonctions
<code>Back</code>, <code>Forward</code> et <code>Home</code>, en indiquant les
raccourcis claviers correspondants. </p>
<p class="centre"> <img src="hublot05/navigation2.png" alt="[Copie du
menu <20>Go<47>]" />
</p>
<p>
Il propose ensuite la liste des pages visit<69>es; les pages vues r<>cemment sont
en haut de la liste, tandis que la toute premi<6D>re page visit<69>e se trouve tout
en bas. Un petit carr<72> indique sur laquelle de ces pages on se trouve. Il
suffit de cliquer sur le nom d'une page pour y revenir imm<6D>diatemment. </p>
<!-- ######################################################### -->
<h2><a name="CD-CEA">Les CD-ROM du Centre
d'<27>tudes Anciennes</a></h2>
<!-- ######################################################### -->
<h4>Disques disponibles</h4><p> Le Centre d'<27>tudes
Anciennes dispose de trois CD-ROM. </p>
<p>
Le <strong>TLG</strong> (<em>Thesaurus Linguae Graecae</em>) comporte les
textes de la litt<74>rature grecque depuis Hom<6F>re jusqu'en 600 ap.<2E>J.-C.,
plus des textes litt<74>raires et techniques, ainsi que des recueils de scholies
de l'an 600 <20> 1453, soit 3<>366 auteurs et 10<31>823 oeuvres. </p>
<p>
Le <strong>PHI n<><6E>5.3</strong>, du Packard Humanities Institute, embrasse
la litt<74>rature latine depuis l'<27>poque archa<68>que jusqu'aux environs de 200
ap.<2E>J.-C. Il comporte 362 r<>f<EFBFBD>rences d'auteurs, dont les grands textes
classiques, mais pr<70>sente des lacunes pour la p<>riode postclassique. Quiconque
travaille sur la po<70>sie latine aura int<6E>r<EFBFBD>t <20> consulter plut<75>t le CD-ROM
<strong>Poesis</strong> (de l'<27>diteur italien Zanichelli) <20> la section latine
de l'Institut de Recherche et d'Histoire des Textes. Outre les textes
litt<EFBFBD>raires latins, Le PHI comprend la <em>Bible juive</em> (en h<>breu), la
<em>Septante</em> et le <em>Nouveau Testament</em> grec (en caract<63>res grecs),
la <em>Vulgate</em> (en latin), la Bible anglaise dans deux traductions, celle
du roi Jacques et la version standard r<>vis<69>e, et le <em>Nouveau
Testament</em> copte (en caract<63>res coptes). </p>
<p>
Le <strong>PHI n<><6E>7</strong> renferme divers <em>corpus</em>
documentaires en caract<63>res grecs et latins. Il s'agit des inscriptions de
l'universit<69> Cornell, ainsi que des <em>papyri</em>, <em>ostraca</em> et
tablettes du fonds documentaire Duke (186 r<>f<EFBFBD>rences). Les inscriptions
couvrent la p<>riode grecque, la p<>riode romaine, l'Antiquit<69> tardive jusqu'au
VIIIe si<73>cle et la p<>riode byzantine jusqu'en 1453. On y trouve de plus, en
caract<EFBFBD>res coptes, la <em>Bible sahidique</em> et le fonds Nag Hammadi (64
r<EFBFBD>f<EFBFBD>rences d'apocryphes bibliques). </p>
<h4>Utilisation</h4><p> Ces disques sont
consultables avec deux logiciels d'interrogation<6F>:
<strong>Pandora</strong> (une pile HyperCard con<6F>ue aux <20>tats-Unis) et
<strong>SNS Greek &amp; Latin</strong> (une application programm<6D>e <20> la Scuola
Normale Superiore de Pise), qui tournent sur le PowerMac<61>8500 de la
cellule informatique du CEA. Les n<>ophytes pr<70>f<EFBFBD>rent Pandora pour la
simplicit<EFBFBD> de son interface. Mais SNS est incontournable quand il faut d<>finir
des requ<71>tes tr<74>s pr<70>cises, car la syntaxe de son langage d'interrogation est
h<EFBFBD>rit<EFBFBD>e du <code>grep</code> en usage dans le monde Unix, et quand il faut
extraire des oeuvres compl<70>tes (au format RTF) pour les r<>cup<75>rer dans un
traitement de texte, par exemple si l'on travaille <20> une <20>dition critique.
</p>
<p>
Chaque ann<6E>e, en novembre, des stages d'initiation aux CD-ROM sont propos<6F>s
aux <20>l<EFBFBD>ves antiquisants par D.<2E>B<EFBFBD>guin, l'un des deux ca<63>mans
d'informatique litt<74>raire. On y montre que toute probl<62>matique peut se
reformuler sous forme d'une recherche de mots ou de parties de mot dans un
corpus d'oeuvres librement d<>fini par l'utilisateur. Les r<>ponses sont
fournies sous forme de listes d'occurrences o<> les mots recherch<63>s sont
replac<EFBFBD>s dans un contexte dont la longueur est, elle aussi, d<>finie par
l'utilisateur. Les CD-ROM font office d'index et de concordances, avec une
rapidit<EFBFBD> et une exhaustivit<69> que ne sauraient <20>galer leurs pr<70>d<EFBFBD>cesseurs sur
support papier. </p>
<p>
<a href="http://www.tlg.uci.edu/ ">La page officielle du TLG <20>
l'Universit<69> de Californie</a> </p>
<p class="auteur">Daniel B<>guin</p>
<!-- #################################################### -->
<h2><a name="lexique">Lexique</a></h2>
<!-- #################################################### -->
<dl>
<dt>
<a name="niveau"><strong>Niveau</strong></a></dt><dd><p> Est bas
niveau ce qui est proche du mat<61>riel. Est haut niveau ce qui est proche de
l'utilisateur. </p></dd>
<dt>
<a name="noyau"><strong>Noyau</strong></a></dt><dd><p> Le noyau
(<em>kernel</em>) est le coeur du syst<73>me. C'est lui qui g<>re le mat<61>riel pour
les besoins des applications. Il est la partie principale du syst<73>me
d'exploitation. </p></dd>
<dt>
<a name="port"><strong>Port</strong></a></dt><dd><p> Premi<6D>re
d<EFBFBD>finition, pour expliquer <20> quoi <20>a sert<72>: un port est une sous-adresse,
comme une bo<62>te aux lettres dans un immeuble. </p>
<p>
Seconde d<>finition, technique<75>: un port est un num<75>ro qui d<>finit, <20>
l'int<6E>rieur d'une machine donn<6E>e, un point sur lequel un programme peut
attendre des connexions de l'ext<78>rieur ou depuis lequel il peut en <20>tablir.
La donn<6E>e du num<75>ro IP de la machine et du port TCP constitue l'analogue d'un
num<EFBFBD>ro de t<>l<EFBFBD>phone vers lequel ou depuis lequel on peut <20>tablir des
connexions. </p></dd>
<dt>
<a name="shell"><strong>Shell</strong></a></dt><dd><p> Le shell est
le programme qui interpr<70>te les commandes tap<61>es au clavier. Selon le cas, il
peut ex<65>cuter le programme demand<6E> (<code>pine</code>, <code>ls</code>,
<code>date</code>...), demander confirmation (avant d'effacer un fichier par
exemple), corriger la syntaxe (<code>netscape</code> et pas
<code>nestcape</code>), afficher un message d'erreur comme <20><code>command not
found</code><3E>, etc. On peut aussi <20>crire des programmes (appel<65>s scripts),
dans le langage du shell, pour cr<63>er de nouvelles commandes, automatiser des
t<EFBFBD>ches, ou autres. </p>
<p>
Un shell est lanc<6E> dans chacun des terminaux que vous ouvrez. Pour quitter le
shell, il suffit de taper <code>^D</code>, ce qui aboutit en pratique <20> fermer
la fen<65>tre, car plus aucun programme ne tourne dedans. </p></dd>
</dl>
<!-- ################################################################## -->
<h2><a name="pingouins">Des pingouins partout</a></h2>
<!-- ################################################################## -->
<h3>Alors, <20>a vole ou <20>a vole pas?</h3>
<p>
Parmi les choses qui m'<27>nervent, et il y en a beaucoup bien que <20>a ne se voit
pas sur ma figure, car je suis d'un calme proverbial, c'est la confusion entre
le pingouin et le manchot. Le manchot, c'est cette esp<73>ce d'oiseau aux ailes
atrophi<EFBFBD>es et aux pattes encore plus petites, et qui vit l<> o<> il fait
vraiment froid, c'est-<2D>-dire en Antarctique (le p<>le Sud, pour les ignares).
Le pingouin ressemble un peu au manchot, mais il est plus petit, poss<73>de des
ailes bien d<>velopp<70>es qui lui permettent de voler aussi bien qu'une mouette,
il vit sur les c<>tes bor<6F>ales, <20> des latitudes <20>lev<65>es (en Islande, par
exemple), et, pour tout dire, il n'a avec le manchot qu'un lointain cousinage,
autant qu'avec les canards, pour situer. Autrement dit, pingouin et manchot
n'ont rien de commun, et sont s<>par<61>s de pas loin de 20<32>000 kilom<6F>tres.
</p>
<p>
Mais quand on montre un manchot <20> un quidam quelconque, il l'identifie
quasiment <20> coup s<>r comme <20>tant un pingouin, et il en est tr<74>s content.
C'est terrible comme l'inculture est satisfaisante. La confusion est
certainement d'origine anglo-saxonne, d'abord parce que les Anglais ont
toujours tout fait pour nous pomper l'air, <20> nous autres Fran<61>ais, et ensuite
parce que chez eux, manchot et pingouin se traduisent tous deux par
<em>penguin</em>. </p>
<p>
J'en vois d<>j<EFBFBD> qui se demandent ce que ces pr<70>cisions ornithologiques et
linguistiques viennent faire l<>, il y en a m<>me qui se sentent l<>s<EFBFBD>s, apr<70>s
tout si on lit le <em>Hublot</em> c'est pour s'entendre dire qu'Unix c'est
Bien et que le piratage c'est Mal, pas pour disserter sur les qualit<69>s
a<EFBFBD>rodynamiques de volatiles m<>me pas comestibles. Certes, je vous comprends,
mais rassurez-vous, il y a un rapport avec l'informatique en g<>n<EFBFBD>ral et Unix
en particulier, j'y arrive de suite. Ce pr<70>ambule <20>tait n<>cessaire pour bien
vous faire ressentir l'effort surhumain que je vais produire en parlant de
pingouins dans tout le reste de cet article, alors qu'il s'agit de manchots.
Et puis, vous aurez appris quelque chose, c'est toujours <20>a de gagn<67>. </p>
<p>
Donc, la translation manchot/pingouin ayant <20>t<EFBFBD> <20>tablie, j'aborde le vif du
sujet<EFBFBD>: il y a des pingouins partout. Vous ne l'aviez peut-<2D>tre pas
remarqu<EFBFBD>, ce serait m<>me tout <20> votre honneur, <20>a voudrait dire que dans les
kiosques <20> journaux, vous consultez des opuscules normaux tels que
<em>Paris-Match</em> ou <em>Le Monde</em>. Mais pour les d<>prav<61>s qui se
repaissent de ce qu'on nomme vulgairement la <20>presse informatique<75>, c'est
indubitable. Presque chaque mois appara<72>t un nouveau p<>riodique dont le nom
est une variation quelconque autour du terme <20>Linux<75>, et d<>cor<6F> avec un go<67>t
tr<EFBFBD>s s<>r de diverses effigies d'un pingouin rigolard, qui me filerait des
cauchemars si j'avais encore cinq ans (ah, vieillesse ennemie, etc). </p>
<p>
L'esprit inquisiteur, et je ne doute pas que vous soyez tous avides de
connaissances, aura certainement compuls<6C> quelques unes de ces parutions, en
tout bien tout honneur et dans un but de recherche uniquement, j'en suis
persuad<EFBFBD>. <20> l'int<6E>rieur, on trouve des concepts <20>tranges, parlant de logiciel
qu'on donne mais qui rapporte des sous, de businessmen qui filent des ronds
alors qu'il n'y sont en rien oblig<69>s, d'un gourou chevelu qui joue du pipeau,
d'un esprit d<>moniaque am<61>ricain qui serait autant mauvais programmeur qu'il
est bon vendeur, et autres articles constell<6C>s d'acronymes au go<67>t <20>trange
venu d'ailleurs<72>: Linux, BSD, Hurd, FUD, KDE, Tux, X11, etc... </p>
<p>
Qu'est-ce donc que tout cela? Et bien, synth<74>tiquement, c'est la nouvelle
mode<EFBFBD>: le logiciel libre. Je vais ici tenter de d<>tailler un peu ce qu'il
en est, car si l'honn<6E>te homme peut parfaitement se passer de ce genre de
d<EFBFBD>tails, <20>a peut toujours servir pour briller en soci<63>t<EFBFBD>, ou r<>hausser un peu
le niveau d'une fin de banquet. </p>
<h3>Le commerce du vent</h3>
<p>
Le logiciel, en bon anglois <em>software</em>, c'est ce qui transforme un
ordinateur compl<70>tement cr<63>tin en station de travail parfaitement cr<63>tine.
L'ordinateur, <20> la base, c'est un amas savamment agenc<6E> de morceaux de
silicium, aluminium, cuivre, plastique, et autres composants. <20>a sait ex<65>cuter
des ordres; des ordres simples, vraiment tr<74>s simples, exprim<69>s dans un
langage barbare qui n'a rien <20> voir avec nos complexes moyens d'expression
humains. Ces ordres, ont les appelle le logiciel. </p>
<p>
Le logiciel, c'est immat<61>riel. <20>a co<63>te tr<74>s cher <20> produire, mais, <em>in
fine</em>, ce n'est jamais qu'une suite de 0 et de 1, comme tout ce qui rentre
dans un ordinateur, et on peut le reproduire autant de fois qu'on veut. Le
logiciel se vend bien, et il y en a partout o<> il y a l'ombre d'un semblant
d'ordinateur, donc dans les voitures, les fours <20> micro-ondes, les cartes
bleues, les lecteurs de CD, et bien d'autres objets, dont on n'aurait pas
imagin<EFBFBD> tant de malice. </p>
<p>
La forme de logiciel compr<70>hensible par les ordinateurs est, disons-le tout
net, immondissime. Alors les d<>veloppeurs utilisent des outils informatiques
qui traduisent automatiquement en un logiciel utilisable sur un ordinateur,
des descriptions de ce logiciel en un autre langage, plus facilement
appr<EFBFBD>hensible (par un informaticien, hein, ce n'est quand m<>me pas du
fran<EFBFBD>ais). La forme compr<70>hensible, c'est ce qu'on appelle le code source, ou
tout simplement le source (oui, au masculin -- m<>me si certains d<>viants
l'utilisent au f<>minin). La traduction, on appelle <20>a la compilation, et le
logiciel tel qu'il est aval<61> par la machine, c'est le binaire. </p>
<p>
Au passage, <20>voquons le syst<73>me d'exploitation<6F>: c'est ce logiciel
particulier qui sait parler au mat<61>riel; les autres logiciels (on dit
<EFBFBD>applications<EFBFBD>, voire <20>progiciels<6C> quand on veut faire pro), quand ils veulent
lire un fichier ou afficher un texte sur l'<27>cran, se contentent de faire une
requ<EFBFBD>te au syst<73>me d'exploitation. L'<27>quivalent sur une voiture, c'est le
tableau de bord<72>: on tourne le volant quand on veut, en fait, tourner les
roues. Et si on change les pneus, qu'importe, c'est toujours le m<>me volant et
<EFBFBD>a se manipule pareil. Le conducteur n'a pas <20> conna<6E>tre tous les types de
pneus, il peut se contenter d'identifier le truc rond, au milieu du tableau de
bord. Microsoft Windows est un syst<73>me d'exploitation, Microsoft Word est une
application. </p>
<p>
Il y a 20 ans, quand une bo<62>te quelconque fournissait un logiciel <20> une autre
bo<EFBFBD>te ou un particulier, elle vendait le binaire, et le binaire seulement,
pour plein de brouzoufs. Elle amortissait le co<63>t de d<>veloppement sur les
diff<EFBFBD>rentes ventes, et si le logiciel se vendait bien, jackpot, puisque la
reproduction ne co<63>te rien. D'ailleurs, ce co<63>t nul (en fait presque, un
CD-ROM <20>a co<63>te 7<>FF) de la copie a entra<72>n<EFBFBD> beaucoup de copies faites
par des tiers (tout b<>nef, pour eux, puisqu'il ont des co<63>ts de d<>veloppement
nuls), d'o<> une l<>gislation adapt<70>e <20> base de licences d'utilisation. </p>
<p>
Depuis, un illumin<69> ricain, issu d'une universit<69> sp<73>cialis<69>e dans ce genre de
cas, a eu une id<69>e qui peut sembler idiote, mais qui doit contenir de vrais
morceaux d'intelligence dedans puisqu'elle se vend bien<65>: le logiciel, on
va le fournir avec les sources. Oui, on file nos petits secrets de fabrication
avec. Et puis, tant qu'<27> faire, on autorise celui qui a r<>cup<75>r<EFBFBD> le logiciel
d'en faire autant de copies qu'il veut. Il peut les donner, ces copies, ou les
vendre au prix qu'il veut <20> qui il veut. Le susdit amerloque a fait des
<EFBFBD>mules, fond<6E> une religion (lui, il dit <20>fondation<6F> mais c'est clairement une
secte), promulgu<67> un dogme, et bien <20>videmment il y a eu des schismes et des
guerres. J'y reviendrai plus tard. </p>
<p>
Qu'est-ce que c'est que cette utopie, vous demandez-vous. On dirait un d<>lire
communautaire issu tout droit des ann<6E>es 1970. Un poison crypto-communiste,
une pourriture bolch<63>vique qui tente d'emp<6D>cher de braves gens de devenir
honn<EFBFBD>tement richissimes. En effet, qu'est-ce qui emp<6D>che une soci<63>t<EFBFBD> d'acheter
un exemplaire du logiciel libre d'une autre soci<63>t<EFBFBD>, et de le revendre tel
quel mais moins cher? Plus de co<63>t de d<>veloppement, juste de la distribution,
et le march<63> est acquis. On dirait un encouragement au piratage, une
th<EFBFBD>orisation du masochisme. <20>a ne peut pas tourner, une fantasmagorie
pareille. </p>
<p>
Et pourtant, elle tourne. Comment? Pourquoi? Que va faire le pingouin? Vous
le saurez au prochain <20>pisode... </p>
<p class="auteur">Thomas Pornin</p>
<div class="metainformation">
<p>
Auteur<EFBFBD>: <20>milia Robin. Articles de Daniel B<>guin et Thomas Pornin.</p>
<p>
Ce document a <20>t<EFBFBD> traduit de LaTeX par hevea, puis pass<73> en XHTML 1.0
Strict par Jo<4A>l Riou le 2002-11-07.
</p>
</div>
</body>
</html>