svn commit: r50172 - head/fr_FR.ISO8859-1/books/handbook/linuxemu

Marc Fonvieille <[email protected]>
Newsgroups gmane.os.freebsd.devel.cvs.doc
Message-ID <[email protected]>
Author: blackend
Date: Sun Apr 16 16:26:29 2017
New Revision: 50172
URL: https://svnweb.freebsd.org/changeset/doc/50172

Log:
  MFen 1.136 --> r49367

Modified:
  head/fr_FR.ISO8859-1/books/handbook/linuxemu/chapter.xml

Modified: head/fr_FR.ISO8859-1/books/handbook/linuxemu/chapter.xml
==============================================================================
--- head/fr_FR.ISO8859-1/books/handbook/linuxemu/chapter.xml	Sun Apr 16 04:57:28 2017	(r50171)
+++ head/fr_FR.ISO8859-1/books/handbook/linuxemu/chapter.xml	Sun Apr 16 16:26:29 2017	(r50172)
@@ -4,10 +4,10 @@
      The FreeBSD French Documentation Project
 
      $FreeBSD$
-     Original revision: 1.136
+     Original revision: 49367
 -->
 <chapter xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0" xml:id="linuxemu">
-  <info><title>Compatibilité binaire avec Linux</title>
+  <info><title>Compatibilité binaire avec &linux;</title>
     <authorgroup>
       <author><personname><firstname>Jim</firstname><surname>Mock</surname></personname><contrib>Restructuré et en partie mis &agrave; jour
 	  par </contrib></author>
@@ -30,67 +30,46 @@
       <secondary>Linux</secondary>
     </indexterm>
 
-    <para>&os; fournit une compatibilité binaire avec plusieurs autres
-      systèmes d'exploitation du type &unix;, y compris Linux.
-      A ce point, vous devez vous demander pourquoi exactement
-      &os; a besoin d'être capable d'exécuter des binaires Linux?
-      La réponse &agrave; cette question est très simple.  De
-      nombreuses entreprises et de nombreux développeurs ne
-      développent que pour Linux, puisque que c'est la dernière
-      chose &ldquo;&agrave; la mode&rdquo; dans le monde de l'informatique.
-      Cela ne laisse aux utilisateurs de &os; que la possibilité
-      de réclamer auprès des ces mêmes entreprises
-      et développeurs des versions native pour &os; de leurs
-      applications.  Le problème est, que la plupart de ces
-      entreprises ne réalisent pas vraiment combien de personnes
-      utiliseraient leur produit si il y aurait une version pour &os;
-      également, et la plupart continuent de développer uniquement
-      pour Linux.  Donc que doit faire un utilisateur de &os;?
-      C'est l&agrave; que la compatibilité binaire avec Linux entre en
-      scène.</para>
-
-    <para>En bref, la compatibilité permet aux utilisateurs de
-      &os; d'exécuter environ 90% des applications Linux
-      sans aucune modification.  Cela inclus des applications
-      comme <application>&staroffice;</application>,
-      la version Linux de <application>&netscape;</application>,
-      <application>&adobe;&nbsp;&acrobat;</application>,
-      <application>&realplayer;</application>,
-      <application>VMware</application>,
-      <application>&oracle;</application>,
-      <application>&wordperfect;</application>, <application>Doom</application>,
-      <application>Quake</application>, et plus.  On rapporte
+    <para>&os; fournit une compatibilité binaire avec &linux;,
+      permettant aux utilisateurs d'installer et d'exécuter la plupart
+      des applications &linux; sur un système &os; sans avoir à modifier
+      ces applications.  On rapporte
       également que dans certaines situations, les binaires Linux
-      sont plus performants sous &os; que sous Linux.</para>
+      sont plus performants sous &os; que sous &linux;,.</para>
 
     <para>Il existe cependant certaines caractéristiques
-      spécifiques &agrave; Linux qui ne sont pas
-      supportées sous &os;.  Les binaires Linux ne
+      spécifiques à &linux;, qui ne sont pas
+      supportées sous &os;.  Par exemple, des binaires &linux; ne
       fonctionneront pas sous &os; s'ils utilisent massivement
       des appels
       &i386; spécifiques, comme activation du mode virtuel
       8086.</para>
 
+    <note>
+      <para>Le support de la compatibilité &linux; pour les binaires
+	64bits a été ajouté avec &os;&nbsp;10.3.</para>
+    </note>
+
     <para>Après la lecture de ce chapitre, vous connaîtrez:</para>
     <itemizedlist>
       <listitem>
 	<para>Comment activer la compatibilité binaire avec
-	  Linux sur votre système.</para>
+	  &linux; sur un système &os;.</para>
       </listitem>
 
       <listitem>
-	<para>Comment installer des bibliothèques partagées Linux
+	<para>Comment installer des bibliothèques partagées &linux;
 	  supplémentaires.</para>
 	</listitem>
 
       <listitem>
-	<para>Comment installer des application Linux sur votre
+	<para>Comment installer des application &linux; sur un
 	  système &os;.</para>
       </listitem>
 
       <listitem>
 	<para>Les détails de l'implémentation de la
-	  compatibilité Linux sous &os;.</para>
+	  compatibilité &linux; sous &os;.</para>
       </listitem>
     </itemizedlist>
 
@@ -98,280 +77,208 @@
 
     <itemizedlist>
       <listitem>
-	<para>Savoir comment installer des logiciels tiers
-	  (<xref linkend="ports"/>).</para>
+	<para>Savoir comment installer des <link
+	  linkend="ports">logiciels tiers</link>.</para>
       </listitem>
     </itemizedlist>
 
   </sect1>
 
   <sect1 xml:id="linuxemu-lbc-install">
-    <title>Installation</title>
+    <title>Configurer la compatibilité binaire avec &linux;</title>
+
+    <indexterm><primary>Catalogue des logiciels portés</primary></indexterm>
 
-    <indexterm><primary>KLD (kernel loadable object)</primary></indexterm>
+    <para>Par défaut, les bibliothèques &linux; ne sont pas installées
+      et la compatibilité binaire avec Linux n'est pas activée.  Les
+      bibliothèques &linux; peuvent être installées soit manuellement
+      soit à partir du catalogue des logiciels portés.</para>
 
-    <para>La compatibilité binaire avec Linux n'est pas
-      activée par défaut.  La manière la plus simple
-      pour activer cette fonctionnalité est de charger le KLD
-      <literal>linux</literal> (<quote>Kernel LoaDable
-      object</quote>&mdash;objet chargeable par le noyau, ce que l'on
-      nomme couramment un module).  Vous pouvez charger ce module
-      en tapant ce qui suit sous l'utilisateur
-      <systemitem class="username">root</systemitem>:</para>
+    <para>Avant de tenter de compiler un logiciel, charger le module
+      du noyau &linux;, sinon la compilation risque d'échouer:</para>
 
     <screen>&prompt.root; <userinput>kldload linux</userinput></screen>
 
-    <para>Si vous désirez que la compatibilité Linux soit
-      toujours activée, alors vous devrez ajouter la ligne
-      suivante au fichier <filename>/etc/rc.conf</filename>:</para>
+    <para>Pour une compatibilité en 64bits:</para>
 
-    <programlisting>linux_enable="YES"</programlisting>
+    <screen>&prompt.root; <userinput>kldload linux64</userinput></screen>
 
-    <para>La commande &man.kldstat.8; peut être utilisée
-      pour vérifier que le KLD est chargé:</para>
+    <para>Pour vérifier que le module est bien chargé:</para>
 
     <screen>&prompt.user; <userinput>kldstat</userinput>
-Id Refs Address    Size     Name
- 1    2 0xc0100000 16bdb8   kernel
- 7    1 0xc24db000 d000     linux.ko</screen>
+      Id Refs Address    Size     Name
+      1    2 0xc0100000 16bdb8   kernel
+      7    1 0xc24db000 d000     linux.ko</screen>
+
+    <para>Le logiciel précompilé
+      <package>emulators/linux_base-c6</package> ou la version
+      compilée à partir du catalogue des logiciels portés est la
+      méthode la plus simple pour installer l'ensemble des
+      bibliothèques et binaires de base &linux; sur un système
+      &os;.</para>
+
+    <screen>&prompt.root; <userinput>printf "compat.linux.osrelease=2.6.18\n" >> /etc/sysctl.conf</userinput>
+&prompt.root; <userinput>sysctl compat.linux.osrelease=2.6.18</userinput>
+&prompt.root; <userinput>pkg install emulators/linux_base-c6</userinput></screen>
+
+    <para>Pour activer au démarrage la compatibilité &linux;, ajouter
+      ligne suivante au fichier
+      <filename>/etc/rc.conf</filename>:</para>
+
+    <programlisting>linux_enable="YES"</programlisting>
+
+    <para>Sur les machines 64bits, <filename>/etc/rc.d/abi</filename>
+      chargera automatiquement le module pour l'émulation
+      64bits.</para>
 
     <indexterm>
       <primary>options du noyau</primary>
-      <secondary>LINUX</secondary>
+      <secondary>COMPAT_LINUX</secondary>
     </indexterm>
 
-    <para>Si pour quelques raisons vous ne voulez ou pouvez charger le
-      KLD, alors vous pouvez lier statiquement la compatibilité
-      binaire Linux dans votre noyau en ajoutant <literal>options
-      COMPAT_LINUX</literal> &agrave; votre fichier de configuration du noyau.
-      Puis installez votre noyau comme décrit dans la
+    <para>Les utilisateurs préférant lier statiquement la
+      compatibilité binaire &linux; dans leur noyau devront ajouter
+      <literal>options COMPAT_LINUX</literal> &agrave; leur fichier de
+      configuration du noyau.  Puis compiler et installer le nouveau
+      noyau comme décrit dans la
       <xref linkend="kernelconfig"/>.</para>
 
-    <sect2>
-      <title>Installer les bibliothèques Linux</title>
+    <sect2 xml:id="linuxemu-libs-manually">
+      <title>Installer des bibliothèques supplémentaires à la main</title>
+
       <indexterm>
-	<primary>Linux</primary>
-	<secondary>installer les bibliothèques Linux</secondary>
+	<primary>bibliothèques partagées</primary>
       </indexterm>
 
-      <para>Cela peut être fait de deux manières, soit
-	en utilisant le logiciel porté
-	<link linkend="linuxemu-libs-port">linux_base</link>, soit
-	en les installant <link linkend="linuxemu-libs-manually">&agrave; la main</link>.</para>
-
-      <sect3 xml:id="linuxemu-libs-port">
-	<title>Installation &agrave; l'aide du logiciel porté
-	  linux_base</title>
-	<indexterm><primary>catalogue des logiciels
-	  portés</primary></indexterm>
-
-	<para>C'est de loin la méthode la plus simple pour
-	  installer les bibliothèques.  La procédure est
-	  juste identique &agrave; l'installation d'un autre logiciel
-	  porté &agrave; partir du
-	  <link xlink:href="file://localhost/usr/ports/">catalogue
-	  des logiciels portés</link>.
-	  Faites ce qui suit:</para>
-
-	<screen>&prompt.root; <userinput>cd /usr/ports/emulators/linux_base-fc4</userinput>
-&prompt.root; <userinput>make install distclean</userinput></screen>
-
-	<para>La compatibilité binaire Linux devrait maintenant
-	  fonctionner.  Certains programmes pourront se plaindre de
-	  versions mineures incorrectes de certaines bibliothèques
-	  systèmes.  Cela semble, en général, ne pas
-	  vraiment être un problème.</para>
-
-	<note><para>Il peut y avoir de multiples versions disponibles
-	  du logiciel porté <package>emulators/linux_base</package>, correspondant
-	  &agrave; différentes distributions et versions de Linux.
-	  Vous devez installez la version la plus proche de ce que
-	  nécessite les applications Linux que vous désirez
-	  installer.</para></note>
-      </sect3>
-
-      <sect3 xml:id="linuxemu-libs-manually">
-	<title>Installer les bibliothèques &agrave; la main</title>
-
-	<para>Si vous n'avez pas le catalogue des logiciels
-	  portés installé, vous pouvez &agrave; la
-	  place installer les bibliothèques &agrave; la main.
-	  Il vous faudra les bibliothèques partagées
-	  Linux dont &agrave; besoin le programme et l'éditeur
-	  de lien dynamiques.  Vous devrez également
-	  créer un répertoire racine
-	  &ldquo;masquant&rdquo; (&ldquo;shadow root&rdquo;),
-	  <filename>/compat/linux</filename>, pour les
-	  bibliothèques Linux sur votre système &os;.
-	  Toute bibliothèque partagée ouverte par les
-	  programmes Linux exécutés sous &os; iront d'abord voir
-	  dans cette arborescence.  Ainsi, si un programme Linux
-	  charge, par exemple, <filename>/lib/libc.so</filename>,
-	  &os; essayera d'abord d'ouvrir
-	  <filename>/compat/linux/lib/libc.so</filename>, puis si
-	  cette bibliothèque n'existe pas,
-	  <filename>/lib/libc.so</filename>.  Les bibliothèques
-	  partagées doivent donc être installées
-	  sous l'arborescence <filename>/compat/linux/lib</filename>
-	  plutôt que sous les chemins d'accès
-	  mentionnés par la commande Linux
-	  <command>ld.so</command>.</para>
-
-	<para>Généralement, vous ne devrez cherchez &agrave;
-	  savoir de quelles bibliothèques partagées
-	  dépendent les binaires Linux que les premières
-	  fois que vous installerez des programmes Linux sur votre
-	  système &os;.  Au bout d'un moment, vous disposerez
-	  d'un jeu suffisant de bibliothèques partagées
-	  Linux sur votre système pour être en mesure
-	  d'exécuter les binaires Linux nouvellement
-	  importés sans effort supplémentaire.</para>
-      </sect3>
-
-      <sect3>
-	<title>Comment installer des bibliothèques
-	  partagées supplémentaires</title>
-	<indexterm><primary>bibliothèques
-	  partagées</primary></indexterm>
-
-	<para>Que faire si vous avez installé le logiciel
-	  porté <filename>linux_base</filename> et que votre
-	  application se plaint toujours qu'il lui manque des
-	  bibliothèques partagées?
-	  Comment savoir quelles bibliothèques partagées
-	  ont besoin les binaires Linux, et où se les
-	  procurer?  Il a habituellement deux possibilités
-	  (pour suivre les instructions ci-dessous, vous devrez
-	  être en session sous le compte super-utilisateur
-	  <systemitem class="username">root</systemitem>).</para>
-
-	<para>Si vous avez accès &agrave; un système
-	  Linux, déterminez de quelles bibliothèques
-	  partagées l'application a besoin, et copiez-les sur
-	  votre système &os;.  Soit l'exemple suivant:</para>
-
-	<informalexample>
-	  <para>Supposons que vous veniez de télécharger
-	    le binaire Linux de <application>Doom</application>,
-	    et que vous l'avez installé sur un système
-	    Linux.  Vous pouvez alors vérifier de quelles
-	    bibliothèques partagées il a besoin pour
-	    fonctionner avec la commande
-	    <command>ldd linuxdoom</command>:</para>
+      <para>Si une application &linux; se plaint de l'absence d'une
+	bibliothèque partagée après avoir configuré la compatibilité
+	binaire &linux;, déterminez quelle est la bibliothèque
+	partagée nécessaire au binaire &linux; et installez-la à la
+	main.</para>
+
+      <para>A partir d'un système &linux;, la commande
+	<command>ldd</command> peut être utilisée pour déterminer
+	quelles sont les bibliothèques partagées dont l'application a
+	besoin.  Par exemple, pour contrôler quelles bibliothèques
+	partagées sont nécessaires à <command>linuxdoom</command>,
+	exécuter cette commande à partir d'un système &linux; où est
+	installé <application>Doom</application>:</para>
 
-	  <screen>&prompt.user; <userinput>ldd linuxdoom</userinput>
+      <screen>&prompt.user; <userinput>ldd linuxdoom</userinput>
 libXt.so.3 (DLL Jump 3.1) =&gt; /usr/X11/lib/libXt.so.3.1.0
 libX11.so.3 (DLL Jump 3.1) =&gt; /usr/X11/lib/libX11.so.3.1.0
 libc.so.4 (DLL Jump 4.5pl26) =&gt; /lib/libc.so.4.6.29</screen>
 
-	  <indexterm><primary>liens symboliques</primary></indexterm>
-	  <para>Vous devrez récupérer tous les
-	    fichiers mentionnés dans la dernière colonne,
-	    et les installer sous <filename>/compat/linux</filename>,
-	    en utilisant les noms de la première colonne comme
-	    liens symboliques qui pointent dessus.  Cela signifie
-	    que vous aurez éventuellement les fichiers suivants
-	    sur votre système &os;:</para>
+      <indexterm>
+	<primary>liens symboliques</primary>
+      </indexterm>
+
+      <para>Ensuite, copier tous les fichiers mentionnés dans la
+	dernière colonne, du système sous &linux; vers
+	<filename>/compat/linux</filename> sur le système &os;.  Une
+	fois copiés, créer les liens symboliques vers les noms de
+	fichiers donnés dans la première colonne.  Cet exemple donnera
+	lieu aux fichiers suivants sur le système &os;:</para>
 
-	  <screen>/compat/linux/usr/X11/lib/libXt.so.3.1.0
+      <screen>/compat/linux/usr/X11/lib/libXt.so.3.1.0
 /compat/linux/usr/X11/lib/libXt.so.3 -&gt; libXt.so.3.1.0
 /compat/linux/usr/X11/lib/libX11.so.3.1.0
 /compat/linux/usr/X11/lib/libX11.so.3 -&gt; libX11.so.3.1.0
 /compat/linux/lib/libc.so.4.6.29
 /compat/linux/lib/libc.so.4 -&gt; libc.so.4.6.29</screen>
 
-	  <blockquote>
-	    <note>
-	      <para>Remarquez que si vous avez déj&agrave;
-		une bibliothèque partagée de même
-		numéro de version majeure que celle indiquée
-		par la première colonne du résultat
-		de la commande <command>ldd</command>, il est inutile
-		de copier le fichier donné par la dernière
-		colonne sur votre système, celui que vous
-		avez déj&agrave; devrait suffire.
-		Il est cependant recommandé de recopier
-		malgré tout la bibliothèque partagée
-		si c'est une version récente.
-		Vous pouvez supprimer l'ancienne version, du moment
-		que le lien symbolique pointe sur la nouvelle.  Par
-		exemple, si vous avez les bibliothèques suivantes
-		sur votre système:</para>
+      <para>Si une bibliothèque &linux; partagée existe avec le même
+	numéro de version majeure que celle indiquée par la première
+	colonne du résultat de la commande <command>ldd</command>, il
+	est inutile de la copier vers le nom de fichier donné par la
+	dernière colonne, la bibliothèque déjà existante devrait
+	fonctionner.  Il est cependant recommandé de copier malgré
+	tout la bibliothèque partagée si c'est une version récente.
+	L'ancienne version peut être supprimée, du moment que le lien
+	symbolique pointe sur la nouvelle.</para>
 
-	      <screen>/compat/linux/lib/libc.so.4.6.27
+      <para>Par exemple, les bibliothèques suivantes existent déjà sur
+	le système &os;:</para>
+
+      <screen>/compat/linux/lib/libc.so.4.6.27
 /compat/linux/lib/libc.so.4 -&gt; libc.so.4.6.27</screen>
 
-	      <para>et que vous avez un nouveau binaire qui
-		d'après le résultat de la commande
-		<command>ldd</command> semble avoir besoin d'une
-		version plus récente:</para>
-
-	      <screen>libc.so.4 (DLL Jump 4.5pl26) -&gt; libc.so.4.6.29</screen>
-	      <para>Si vous n'avez qu'une ou deux versions de retard
-		sur le dernier indice, alors ne vous souciez pas
-		d'installer la version
-		<filename>/lib/libc.so.4.6.29</filename> plus
-		récente, parce que le programme devrait fonctionner
-		sans problème avec une version
-		légèrement antérieure.
-		Vous pouvez néanmoins décider de remplacer
-		<filename>libc.so</filename>, ce qui devrait vous
-		donner quelque chose comme:</para>
+      <para>et <command>ldd</command> indique qu'un binaire a besoin
+	d'une version plus récente:</para>
+
+      <screen>libc.so.4 (DLL Jump 4.5pl26) -&gt; libc.so.4.6.29</screen>
 
-	      <screen>/compat/linux/lib/libc.so.4.6.29
+      <para>Etant donné que la bibliothèque existante n'a qu'une ou
+	deux versions de retard sur le dernier digit, le programme
+	devrait fonctionner avec la version légèrement plus ancienne.
+	Il est, néanmoins, plus sûr de remplacer la
+	<filename>libc.so</filename> existante avec la version plus
+	récente:</para>
+
+      <screen>/compat/linux/lib/libc.so.4.6.29
 /compat/linux/lib/libc.so.4 -&gt; libc.so.4.6.29</screen>
-	    </note>
-	  </blockquote>
 
-	  <blockquote>
-	    <note>
-	      <para>Le mécanisme de lien symbolique n'est
-		nécessaire que pour les binaires Linux.
-		L'éditeur de liens dynamiques de &os;
-		se charge lui-même de trouver les numéros
-		de versions majeures adéquats et vous
-		n'avez pas &agrave; vous en préoccuper.</para>
-	    </note>
-	  </blockquote>
-	</informalexample>
-      </sect3>
+      <para>Généralement, vous ne devrez cherchez à savoir de quelles
+	bibliothèques partagées dépendent les binaires &linux; que les
+	premières fois que vous installerez des programmes &linux; sur
+	le système &os;.  Au bout d'un moment, il y aura un ensemble
+	suffisant de bibliothèques partagées &linux; sur le système
+	pour être en mesure d'exécuter les binaires &linux;
+	nouvellement importés sans effort supplémentaire.</para>
     </sect2>
 
     <sect2>
-      <title>Installer des binaires Linux ELF</title>
+      <title>Installer des binaires &linux; <acronym>ELF</acronym></title>
       <indexterm>
 	<primary>Linux</primary>
 	<secondary>binaires ELF</secondary>
       </indexterm>
 
       <para>Une étape supplémentaire est parfois
-	nécessaire pour les binaires ELF: le
-	&ldquo;marquage&rdquo;.  Si vous tentez d'exécuter un
-	binaire ELF non marqué, vous obtiendrez un message
-	d'erreur ressemblant &agrave; ce qui suit:</para>
+	nécessaire pour les binaires <acronym>ELF</acronym>.  Quand
+	un binaire <acronym>ELF</acronym> non marqué est exécuté, une
+	erreur sera générée:</para>
 
       <screen>&prompt.user; <userinput>./mon-binaire-elf-linux</userinput>
 ELF binary type not known
 Abort</screen>
 
-      <para>Pour que le noyau &os; puisse distinguer un binaire ELF
-	&os; d'un binaire Linux, vous devez employer l'utilitaire
-	&man.brandelf.1;:</para>
+      <para>Pour que le noyau &os; puisse distinguer un binaire
+	<acronym>ELF</acronym> &os; d'un binaire &linux;, vous devez
+	employer l'utilitaire &man.brandelf.1;:</para>
 
       <screen>&prompt.user; <userinput>brandelf -t Linux mon-binaire-elf-linux</userinput></screen>
 
       <indexterm><primary>outils GNU</primary></indexterm>
       <para>Les outils GNU incorporent désormais automatiquement
-	les marques nécessaires dans les binaires ELF, vous
-	aurez donc de moins en moins besoin de passer par cette
-	étape &agrave; l'avenir.</para>
+	les marques nécessaires dans les binaires ELF,
+	cette étape n'est généralement pas nécessaire.</para>
+    </sect2>
+
+    <sect2>
+      <title>Installer une application &linux; basée sur
+	<acronym>RPM</acronym></title>
+
+      <para>Pour installer une application &linux; basée sur
+	<acronym>RPM</acronym>, installer en premier le logiciel
+	précompilé ou porté <package>archivers/rpm4</package>.  Une
+	fois installé, <systemitem class="username">root</systemitem>
+	peut utiliser la commande suivante pour installer un
+	<filename>.rpm</filename>:</para>
+
+      <screen>&prompt.root; <userinput>cd /compat/linux</userinput>
+&prompt.root; <userinput>rpm2cpio &lt; /path/to/linux.archive.rpm | cpio -id</userinput></screen>
+
+      <para>Si nécessaire, utiliser <command>brandelf</command> sur
+	les binaires <acronym>ELF</acronym> installés.  Il faut noter
+	que cela empêchera une desinstallation propre.</para>
     </sect2>
 
     <sect2>
       <title>Configurer le résolveur de noms de domaines</title>
 
-      <para>Si le DNS ne fonctionne pas, ou si vous avez les
-	messages:</para>
+      <para>Si le <acronym>DNS</acronym> ne fonctionne pas, ou si cette
+	erreur apparaît::</para>
 
       <screen>resolv+: "bind" is an invalid keyword resolv+:
 "hosts" is an invalid keyword</screen>
@@ -383,19 +290,21 @@ Abort</screen>
       <programlisting>order hosts, bind
 multi on</programlisting>
 
-      <para>Où l'ordre ci-dessus spécifie qu'il faut tout
+      <para>Cela indique qu'il faut tout
 	d'abord regarder dans le fichier <filename>/etc/hosts</filename>
-	puis interroger le DNS.  Quand le fichier
+	puis interroger le <acronym>DNS</acronym>.  Quand le fichier
 	<filename>/compat/linux/etc/host.conf</filename> n'existe pas,
-	les applications Linux trouvent le fichier
-	<filename>/etc/host.conf</filename> de &os; et se plaignent de
+	les applications &linux; trouvent le fichier
+	<filename>/etc/host.conf</filename> et se plaignent de
 	sa syntaxe &os; incompatible.  Supprimez
-	<literal>bind</literal> si vous n'avez pas configuré de
-	serveur de noms avec le fichier
+	<literal>bind</literal> si un serveur de noms n'est pas configuré
+	avec le fichier
 	<filename>/etc/resolv.conf</filename>.</para>
     </sect2>
   </sect1>
 
+  <?ignore
+
   <sect1 xml:id="linuxemu-mathematica">
     <info><title>Installer &mathematica;</title>
       <authorgroup>
@@ -3693,34 +3602,26 @@ options SHMMAXPGS=393216
       </sect3>
     </sect2>
   </sect1>
+  ?>
 
   <sect1 xml:id="linuxemu-advanced">
     <title>Sujets avancés</title>
 
-    <para>Si vous êtes curieux de savoir comment la
-      compatibilité binaire avec Linux fonctionne, cette
-      section est faite pour vous.  La plupart de ce qui suit est
-      principalement basé sur un courrier électronique
+    <para>Cette section décrit comment la
+      compatibilité binaire avec &linux; fonctionne, et est basée
+      sur un courrier électronique
       de Terry Lambert <email>[email protected]</email>
       envoyé &agrave; la &a.chat; (Message ID:
       <literal>&lt;[email protected]&gt;</literal>).</para>
 
-    <sect2>
-      <title>Comme ça marche?</title>
-
-      <indexterm><primary>chargeur de classe d'exécution</primary></indexterm>
+      <indexterm><primary>chargeur de classe
+	d'exécution</primary></indexterm>
 
       <para>&os; possède une abstraction appelée
 	&ldquo;chargeur de classe d'exécution&rdquo;.  C'est
 	une portion de l'appel système &man.execve.2;.</para>
 
-      <para>Ce qui se passe est que &os; dispose d'une liste de
-	chargeurs, &agrave; la place d'un simple chargeur avec retour
-	(&ldquo;fallback&rdquo;) vers le chargeur
-	<literal>#!</literal> pour exécuter n'importe quel
-	interpréteur de commandes ou procédure.</para>
-
-      <para>Historiquement, l'unique chargeur sur les plate-formes
+      <para>Historiquement, le chargeur
 	&unix; examinait le nombre magique (généralement
 	les 4 ou 8 premiers octets du fichier) pour voir si
 	c'était un binaire connu par le système, et si
@@ -3730,46 +3631,41 @@ options SHMMAXPGS=393216
 	système, l'appel &man.execve.2; retournait un
 	échec, et l'interpréteur de commandes tentait de
 	l'exécuter comme une commande
-	d'interpréteur.</para>
-
-      <para>Cette hypothèse est celle par défaut quelque
-	soit l'interpréteur de commandes actuel.</para>
+	d'interpréteur. Cette hypothèse était celle par défaut
+	<quote>quelque soit l'interpréteur de commandes
+	actuel</quote>.</para>
 
       <para>Plus tard, une modification a été faite sur
 	&man.sh.1; pour examiner les deux premiers caractères,
 	et s'ils étaient <literal>:\n</literal>, alors elle
 	invoquait l'interpréteur de commandes &man.csh.1;
-	&agrave; la place (nous pensons que l'entreprise SCO fut la
-	première &agrave; faire cette modification).</para>
+	à la place.</para>
+
+      <para>&os; possède désormais une liste de chargeurs, avec un
+	chargeur par défaut, <literal>#!</literal>, pour exécuter les
+	interpréteurs ou les procédures de commandes.</para>
 
-      <para>Ce que fait maintenant &os; est de parcourir une liste de
-	chargeurs, avec un chargeur <literal>#!</literal>
-	générique qui reconnaît les noms des
-	interpréteurs qui se trouvent après le
-	caractère espace suivant, puis avec un retour possible
-	vers <filename>/bin/sh</filename>.</para>
-      <indexterm><primary>ELF</primary></indexterm>
-
-      <para>Pour le support de l'ABI Linux, &os; voit le nombre
-	magique comme un binaire ELF (il ne fait pas la
-	différence &agrave; ce niveau entre &os;, &solaris;,
-	Linux, ou tout autre système d'exploitation qui dispose
-	d'un type d'image ELF).</para>
-      <indexterm><primary>Solaris</primary></indexterm>
+      <indexterm>
+	<primary>ELF</primary>
+      </indexterm>
 
-      <para>Le chargeur ELF recherche une <emphasis>marque</emphasis>
-	spécifique, qui se trouve dans une section de commentaire
+      <indexterm>
+	<primary>Solaris</primary>
+      </indexterm>
+
+      <para>Pour le support de l'<acronym>ABI</acronym> &linux;, &os;
+	voit le nombre magique comme un binaire ELF.  Le chargeur ELF
+	recherche une <emphasis>marque</emphasis>
+	spécifique, qui se trouve dans une section de commentaires
 	dans l'image ELF, et qui n'est pas présente dans les
 	binaires SVR4/&solaris; ELF.</para>
 
-      <para>Pour que les binaires Linux puissent fonctionner, ils
+      <para>Pour que les binaires &linux; puissent fonctionner, ils
 	doivent être <emphasis>marqués</emphasis> sous le
 	type <literal>Linux</literal> avec &man.brandelf.1;:</para>
 
       <screen>&prompt.root; <userinput>brandelf -t Linux file</userinput></screen>
 
-      <para>Quand cela est fait, le chargeur ELF verra le marquage
-	<literal>Linux</literal> sur le fichier.</para>
       <indexterm>
 	<primary>ELF</primary>
 	<secondary>marquage</secondary>
@@ -3778,7 +3674,7 @@ options SHMMAXPGS=393216
       <para>Lorsque le chargeur ELF voit le marquage
 	<literal>Linux</literal>, le chargeur remplace un pointeur
 	dans la structure <literal>proc</literal>.  Tous les appels
-	système sont indéxés par
+	système sont indexés par
 	l'intermédiaire de ce pointeur (dans un système
 	&unix; traditionnel, cela serait la structure
 	<literal>sysent[]</literal>, contenant les appels
@@ -3787,9 +3683,9 @@ options SHMMAXPGS=393216
 	(&ldquo;trap&rdquo;) pour le signal de code
 	&ldquo;trampoline&rdquo;, et plusieurs autres corrections
 	(mineures) qui sont gérées par le noyau
-	Linux.</para>
+	&linux;.</para>
 
-      <para>Le vecteur d'appel système Linux contient, entre
+      <para>Le vecteur d'appel système &linux; contient, entre
 	autres, une liste des entrées
 	<literal>sysent[]</literal> dont les adresses résident
 	dans le noyau.</para>
@@ -3798,76 +3694,52 @@ options SHMMAXPGS=393216
 	binaire Linux, le code &ldquo;trap&rdquo;
 	déréférence de la structure
 	<literal>proc</literal> le pointeur de la fonction de l'appel
-	système, et utilise les points d'entrée Linux,
+	système, et utilise les points d'entrée &linux;,
 	et non pas &os;, de d'appel système.</para>
 
-      <para>De plus, le mode Linux redéfinit dynamiquement
-	l'origine des requêtes; c'est, en effet, ce qu'effectue
-	l'option <option>union</option> (<emphasis>pas</emphasis> le
-	type de système de fichiers
-	<literal>unionfs</literal>!) de montage des systèmes de
+      <para>Le mode &linux; <emphasis>redéfinit dynamiquement</emphasis>
+	l'origine des requêtes.  C'est, en effet, équivalent à
+	l'option <option>union</option> de montage des systèmes de
 	fichiers.  Tout d'abord, une tentative est faite pour
-	rechercher le fichier dans le répertoire <filename>/compat/linux/chemin-origine</filename>,
-	<emphasis>puis</emphasis> uniquement si cela échoue, la
+	rechercher le fichier dans le répertoire <filename>/compat/linux/<replaceable>chemin-origine</replaceable></filename>.
+	Si cela échoue, la
 	recherche est effectuée dans le répertoire
-	<filename>/chemin-origine</filename>.
+	<filename>/<replaceable>chemin-origine</replaceable></filename>.
 	Cela permet de s'assurer que les binaires nécessitant
-	d'autres binaires puissent s'exécuter (par exemple,
-	l'ensemble des outils Linux peuvent tourner sous l'ABI Linux).
-	Cela signifie également que les binaires Linux peuvent
+	d'autres binaires puissent s'exécuter.  Par exemple,
+	l'ensemble des outils &linux; peuvent tourner sous l'ABI &linux;.
+	Cela signifie également que les binaires &linux; peuvent
 	charger et exécuter les binaires &os;, s'il n'y a pas
-	de binaires Linux correspondant présents, et vous
+	de binaires &linux; correspondant présents, et vous
 	pourriez placer une commande &man.uname.1; dans l'arborescence
 	<filename>/compat/linux</filename> pour vous
-	assurer que les binaires Linux ne puissent pas dire qu'ils ne
-	tournent pas sous Linux.</para>
+	assurer que les binaires &linux; ne puissent pas dire qu'ils ne
+	tournent pas sous &linux;.</para>
 
-      <para>En effet, il y a un noyau Linux dans le noyau &os;; les
+      <para>En effet, il y a un noyau &linux; dans le noyau &os;.  Les
 	diverses fonctions sous-jacentes qui implémentent tous
 	les services fournis par le noyau sont identiques entre les
 	deux tables d'entrées des appels systèmes &os;
-	et Linux: les opérations sur les systèmes de
+	et &linux;: les opérations sur les systèmes de
 	fichiers, les opérations sur la mémoire
-	virtuelle, la gestion des signaux, l'IPC System V, etc.  La
+	virtuelle, la gestion des signaux, iet l'IPC System V.  La
 	seule différence est que les binaires &os; utilisent
 	les fonctions <emphasis>glue</emphasis> de &os;, et les
-	binaires Linux celles de Linux (les plus anciens
-	systèmes d'exploitation avaient uniquement leurs
-	propres fonctions de <emphasis>glue</emphasis>: les adresses
-	des fonctions dans une structure <literal>sysent[]</literal>
-	statique globale, au lieu des adresses des fonctions
-	déréférencées d'un pointeur
-	initialisé dynamiquement pointant vers la structure
-	<literal>proc</literal> du processus faisant l'appel).</para>
-
-      <para>Laquelle est l'ABI native &os;?  Cela n'a pas
-	d'importance.  Basiquement, la seule différence est que
-	(actuellement, cela pourrait facilement changer dans les
-	versions futures, et probablement après cela) les
+	binaires &linux; celles de &linux;.  Les
 	fonctions <emphasis>glue</emphasis> de &os; sont liées
 	en statique dans le noyau, les fonctions
-	<emphasis>glue</emphasis> Linux peuvent être
+	<emphasis>glue</emphasis> &linux; peuvent être
 	liées statiquement, ou l'on peut y accéder via
 	un module du noyau.</para>
 
-      <para>Oui, mais est-ce vraiment de l'émulation?  Non.
-	C'est l'implémentation d'une interface binaire pour les
-	applications (ABI).  Il n'y a pas d'émulateur (ou de
-	simulateur, pour couper court aux prochaines questions)
-	impliqué.</para>
-
-      <para>Mais pourquoi appelle-t-on parfois cela
-	&ldquo;émulation Linux&rdquo;?  Pour rendre difficile
-	la vente des versions de &os;!  Sérieusement, c'est
-	dû au fait que l'implémentation historique a
-	été faite &agrave; une époque où
-	il n'y avait pas vraiment d'autres mots pour décrire ce
-	qui était en développement; dire que &os;
-	exécutait les binaires Linux n'était pas vrai si
-	vous n'aviez pas compilé le code ou chargé un
-	module, aussi un terme était nécessaire pour
-	qualifier ce qui était chargé &mdash; donc
-	l'&ldquo;émulateur Linux&rdquo;.</para>
-    </sect2>
+      <para>Techniquement, ce n'est pas vraiment de l'émulation,
+	c'est l'implémentation d'une interface binaire pour les
+	applications (<acronym>ABI</acronym>).  Cela est parfois
+	appelé <quote>émulation &linux;</quote> parce que
+	l'implémentation a été faite à une époque où il n'y avait pas
+	vraiment d'autres mots pour décrire ce qui était en
+	développement. Dire que &os; exécutait les binaires &linux;
+	n'était pas vrai, jusqu'à ce le code de support &linux; soit
+	compilé ou le module soit chargé.</para>
   </sect1>
 </chapter>

_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/svn-doc-all
To unsubscribe, send any mail to "[email protected]"
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.