cvs commit: de-docproj/books/faq book.sgml

From: Benedict Reuschling <bcr(at)doc.bsdgroup.de>
Date: Thu, 14 May 2009 20:34:23 GMT

bcr 2009-05-14 20:34:23 UTC

  FreeBSD German Documentation Repository

  Modified files:
    books/faq book.sgml
  Log:
  MFen 1.1062
  
  Revision Changes Path
  1.694 +17 -81 de-docproj/books/faq/book.sgml
  
  Index: book.sgml
  ===================================================================
  RCS file: /home/cvs/de-docproj/books/faq/book.sgml,v
  retrieving revision 1.693
  retrieving revision 1.694
  diff -u -I$FreeBSDde.*$ -r1.693 -r1.694
  --- book.sgml 14 May 2009 20:19:56 -0000 1.693
  +++ book.sgml 14 May 2009 20:34:23 -0000 1.694
  @@ -3,9 +3,9 @@
       The FreeBSD German Documentation Project
   
   $FreeBSD$
  -$FreeBSDde: de-docproj/books/faq/book.sgml,v 1.693 2009/05/14 20:19:56 bcr Exp $
  +$FreeBSDde: de-docproj/books/faq/book.sgml,v 1.694 2009/05/14 20:34:23 bcr Exp $
   
  - basiert auf: 1.1061
  + basiert auf: 1.1062
   
   -->
   
  @@ -12509,92 +12509,28 @@
   
         <qandaentry>
           <question id="change-kernel-address-space">
  - <para>Wie kann ich den Adressraum des Kernels
  + <para>Wie kann ich den Adressraum des Kernels auf i386
               vergr&ouml;ssern oder verkleinern?</para>
           </question>
   
           <answer>
             <para>Standardm&auml;&szlig;ig betr&auml;gt der
  - Adressraum des Kernels 256MB (FreeBSD 3.X) bzw. 1 GB
  - (FreeBSD 4.X). Wenn Sie einen netzwerkintensiven Server
  - (z.B. einen gro&szlig;en FTP- oder HTTP-Server) betreiben,
  - kann es sein, dass Sie der Meinung sind, dass
  - 256MB nicht ausreichen.</para>
  -
  - <para>Wie also erh&ouml;hen Sie den Adressraum? Hier
  - gibt es zwei Aspekte. Erstens m&uuml;ssen Sie dem Kernel
  - sagen, dass er einen gr&ouml;&szlig;eren Anteil des
  - Adressraums f&uuml;r sich selbst reservieren soll.
  - Da der Kernel am oberen Ende des Adressraums geladen
  - wird, m&uuml;ssen Sie zweitens die Ladeadresse verringern,
  - damit er mit dem Kopf nicht gegen die Obergrenze
  - st&ouml;&szlig;t.</para>
  -
  - <para>Das erste Ziel erreicht man, indem man den Wert von
  - <literal>NKPDE</literal> in
  - <filename>src/sys/i386/include/pmap.h</filename>
  - erh&ouml;ht. F&uuml;r einen Adressraum von 1 GB
  - sieht das so aus:</para>
  -
  - <programlisting>
  -#ifndef NKPDE
  -#ifdef SMP
  -#define NKPDE 254 /* addressable number of page tables/pde's */
  -#else
  -#define NKPDE 255 /* addressable number of page tables/pde's */
  -#endif /* SMP */
  -#endif
  - </programlisting>
  -
  - <para>Dividieren Sie die gew&uuml;nschte
  - Adressraumgr&ouml;&szlig;e (in Megabyte) durch vier
  - und subtrahieren Sie dann eins f&uuml;r UP und zwei
  - f&uuml;r SMP, um den korrekten Wert f&uuml;r
  - <literal>NKPDE</literal> zu finden.</para>
  -
  - <para>Um das zweite Ziel zu erreichen m&uuml;ssen Sie die
  - korrekte Ladeadresse berechnen: subtrahieren Sie einfach
  - die Gr&ouml;&szlig;e des Adressraums (in Byte) von
  - 0x100100000; f&uuml;r einen Adressraum von 1 GB
  - lautet das Ergebnis 0xc0100000. Setzen Sie
  - <symbol>LOAD_ADDRESS</symbol> in
  - <filename>src/sys/i386/conf/Makefile.i386</filename> auf
  - diesen Wert; setzen Sie dann den Location-Counter am
  - Anfang der Abschnittsliste in
  - <filename>src/sys/i386/conf/kernel.script</filename> auf
  - denselben Wert:</para>
  -
  - <programlisting>
  -OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386")
  -OUTPUT_ARCH(i386)
  -ENTRY(btext)
  -SEARCH_DIR(/usr/lib); SEARCH_DIR(/usr/obj/elf/home/src/tmp/usr/i386-unknown-freebsdelf/lib);
  -SECTIONS
  -{
  - /* Read-only sections, merged into text segment: */
  - . = 0xc0100000 + SIZEOF_HEADERS;
  - .interp : { *(.interp) }
  - </programlisting>
  + Adressraum des Kernels 1&nbsp;GB (2&nbsp;GB f&uuml;r PAE)
  + auf i386. Wenn Sie einen netzwerkintensiven Server
  + (z.B. einen gro&szlig;en FTP- oder HTTP-Server) betreiben, oder
  + ZFS verwenden m&ouml;chten, kann es sein, dass Sie der Meinung
  + sind, dass das nicht ausreichen.</para>
  +
  + <para>F&uuml;gen Sie die folgende Zeile zu ihrer
  + Kernelkonfigurationsdatei hinzu, um den verf&uuml;gbaren Speicher
  + zu erh&ouml;hen und erstellen Sie dann einen neuen Kernel:</para>
  +
  + <programlisting>options KVA_PAGES=<replaceable>N</replaceable></programlisting>
   
  - <para>Konfigurieren und erstellen Sie Ihren Kernel dann neu.
  - Sie werden vermutlich Probleme mit &man.ps.1;, &man.top.1;
  - und &auml;hnlichen Programmen haben. Ein <command>make
  - world</command> sollte diese beheben; alternativ
  - k&ouml;nnen Sie die gepatchte <filename>pmap.h</filename>
  - in das Verzeichnis <filename>/usr/include/vm</filename>
  - kopieren und danach <filename>libkvm</filename>,
  - &man.ps.1; und &man.top.1; neu erzeugen.</para>
  -
  - <para>Hinweis: die Gr&ouml;&szlig;e des
  - Kernel-Adressraums muss ein Vielfaches von vier
  - Megabyte betragen.</para>
  -
  - <para>[&a.dg; f&uuml;gt hinzu: <emphasis>Ich glaube, der
  - Kerneladressraum muss eine Zweierpotenz sein,
  - aber ich bin mir dessen nicht sicher. Der alte
  - (&auml;ltere) Bootcode pflegte die oberen Adressbits
  - zu mi&szlig;brauchen und ich glaube, er erwartete
  - mindestens 256MB Granularit&auml;t.]</emphasis></para>
  + <para>Um den richtigen Wert von <replaceable>N</replaceable> zu
  + bestimmen, teilen Sie den gew&uuml;nschte Gr&ouml;&szlig;e
  + des Addressraumes (in Megabyte) durch vier (z.B. betr&auml;gt er
  + <literal>512</literal> f&uuml;r 2&nbsp;GB).</para>
           </answer>
         </qandaentry>
       </qandaset>
  

To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-cvs-doc" in the body of the message
Received on Thu 14 May 2009 - 22:34:39 CEST

search this site