<!--
	The FreeBSD Documentation Project
	The FreeBSD French Documentation Project
         
        $FreeBSD$
	Original revision: 1.2
-->      

  <chapter id="kernelconfig">
    <title>
        Configuration du noyau
        <!--<label id="kernelconfig">-->
    </title>

    <sect1>
      <title>
        J'aimerais personnaliser mon noyau. Est-ce difficile&nbsp;?
        <!--<label id="make-kernel">-->
      </title>

      <para>
          Pas du tout&nbsp;! Jetez un coup d'oeil &agrave; 
        <ulink url="../handbook/kernelconfig.html">
            la section de la configuration du noyau du manuel de r&eacute;f&eacute;rence.
        </ulink>
      </para>

      <para>
      NOTE : 
          Je vous recommande de faire une sauvegarde dat&eacute;e de votre noyau dans
        <filename>kernel.YYMMDD</filename> d&egrave;s que vous arrivez &agrave; tout faire marcher.
        Ainsi, si jamais en jouant avec votre configuration du noyau, vous 
        m&eacute;langez tout, vous pourrez d&eacute;marrer sur ce noyau plut&ocirc;t que de repartir
        depuis <filename>kernel.GENERIC</filename>. Ceci est particuli&egrave;rement important si vous
        d&eacute;marrez actuellement depuis un contr&ocirc;leur qui n'est pas support&eacute; par le
        noyau GENERIC (oui, c'est une exp&eacute;rience personelle).
      </para>
    </sect1>

    <sect1>
      <title>
          Ma compilation du noyau &eacute;choue car <filename>&amp;hw&amp;float</filename> 
        manque.
      </title>

      <para>
          Laissez-moi deviner. Vous avez supprim&eacute;
        <ulink url="http://www.freebsd.org/cgi/man.cgi?npx(4)"> 
            npx0
        </ulink> 
        de votre fichier de configuration du noyau car vous n'avez pas de
        coprocesseur arithm&eacute;tique, c'est &ccedil;a ? Faux ! :-).
        Le p&eacute;riph&eacute;rique <filename>npx0</filename> est *OBLIGATOIRE*. 
        M&ecirc;me si vous n'avez pas de coprocesseur arithm&eacute;tique, vous 
        *devez* inclure le p&eacute;riph&eacute;rique <filename>npx0</filename>.
      </para>
    </sect1>

    <sect1>
          <title>
            Conflits d'interruption avec le code multi-port s&eacute;rie.
        </title>

          <para>
          Q.
            Quand je compile le noyau avec du code multi-port s&eacute;rie, cela me dit
            que seul le premier port est examin&eacute; et le reste est ignor&eacute; &agrave; cause des
            conflits d'interruption. Comment puis-je r&eacute;soudre cela&nbsp;?
      </para>

      <para>R.
          Le probl&egrave;me ici, est que FreeBSD a du code int&eacute;gr&eacute; pour &eacute;viter au noyau
        de se planter &agrave; cause d'un conflit mat&eacute;riel ou logiciel. La fa&ccedil;on de
        fixer ce probl&egrave;me est d'ignorer le r&eacute;glage des IRQ sur tous les
        ports sauf un. Voici un exemple :

		<programlisting>
        #
        # Multiport high-speed serial line - 16550 UARTS
        #
        device sio2 at isa? port 0x2a0 tty irq 5 flags 0x501 vector siointr
        device sio3 at isa? port 0x2a8 tty flags 0x501 vector siointr
        device sio4 at isa? port 0x2b0 tty flags 0x501 vector siointr
        device sio5 at isa? port 0x2b8 tty flags 0x501 vector siointr
		</programlisting>
      </para>
    </sect1>

    <sect1>
      <title>
          Comment puis-je activer le support des disques QIC-40/80&nbsp;?
      </title>

      <para>
          Vous supprimez le commentaire de la ligne suivante du fichier g&eacute;n&eacute;rique de
        configuration (ou ajoutez la &agrave; votre fichier de configuration), ajoutez
        un ``<filename>flags 0x1</filename>'' &agrave; la ligne
        <ulink url="http://www.freebsd.org/cgi/man.cgi?fdc(4)">
            fdc
        </ulink> et recompilez.

		<programlisting>
controller  fdc0  at isa? port "IO_FD1" bio irq 6 drq 2 flags 0x1 vector fdintr
disk        fd0   at fdc0 drive 0                       ^^^^^^^^^
disk        fd1   at fdc0 drive 1
#tape       ft0   at fdc0 drive 2
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
		</programlisting>
      </para>

      <para>
          Puis, vous cr&eacute;ez un p&eacute;riph&eacute;rique appel&eacute; 
		  <filename>/dev/ft0</filename> 
        en allant dans le r&eacute;pertoire <filename>/dev</filename> et en lan&ccedil;ant la commande
        suivante :
      </para>


		<programlisting>
 sh ./MAKEDEV ft0
		</programlisting>

      <para>
          pour le premier p&eacute;riph&eacute;rique. <filename>ft1</filename> pour le second, et ainsi de
        suite.
      </para>

      <para>
          Vous aurez un p&eacute;riph&eacute;rique appel&eacute; <filename>/dev/ft0</filename>, o&ugrave; vous pourrez
        &eacute;crire par l'interm&eacute;diaire d'un programme sp&eacute;cial appel&eacute;
      ``<filename>ft</filename>'' - Voir la page de manuel 
      <ulink url="http://www.freebsd.org/cgi/man.cgi?ft">
          ft
      </ulink>
      pour plus de d&eacute;tails.
      </para>

      <para>
          Les versions pr&eacute;c&eacute;dentes de <filename>-current</filename> ont aussi quelques
        probl&egrave;mes avec certaines cartouche ddfectueuses. Si vous avez
        des probl&egrave;mes o&ugrave; <filename>ft</filename> semble aller et venir ind&eacute;finiment,
        essayez de r&eacute;cup&eacute;rer la derni&egrave;re version de <filename>ft</filename> depuis 
        <filename>/usr/src/sbin/ft</filename> dans <filename>-current</filename> et essayez le.
      </para>
    </sect1>
  </chapter>

