Provided by: manpages-de-dev_0.10-1_all bug

BEZEICHNUNG

       swapon, swapoff - Auslagerung von Hauptspeicherbereichen (Swapping) auf
       ein Gerat oder in eine Datei starten/beenden

"UBERSICHT

       #include <unistd.h>
       #include <asm/page.h> /* zum Bestimmen von PAGE_SIZE */
       #include <sys/swap.h>

       intswapon(constchar*pfad,intswap_schalter);
       intswapoff(constchar*pfad);

BESCHREIBUNG

       swapon weist  den  Auslagerungsbereich  fur  Hauptspeicherbereiche  der
       Datei  oder  dem  blockorientierten  Gerat  zu,  das in pfad festgelegt
       wurde. swapoff beendet das Auslagern von Hauptspeicherbereichen in  der
       Datei oder dem blockorientierten Gerat, das in pfad festgelegt wurde.

       Falls  der Schalter SWAP_FLAG_PREFER im swapon()-Argument swap_schalter
       angegeben    wurde,    hat    der    neue    Auslagerungsbereich    fur
       Hauptspeicherbereiche  eine  hohere  Prioritat als der vorgegebene. Die
       Prioritat ist in swap_schalter kodiert als:

       (prio << SWAP_FLAG_PRIO_SHIFT) & SWAP_FLAG_PRIO_MASK

       Falls der Schalter SWAP_FLAG_DISCARD im swapon()-Argument swap_schalter
       angegeben    wurde,    werden   freigegebene   Auslagerungsseiten   fur
       Hauptspeicherbereiche verworfen, bevor sie erneut benutzt werden, falls
       das  Gerat  mit  dem  Auslagerungsbereich fur Hauptspeicherbereiche die
       Aktionen  zum  Verwerfen  oder  Kurzen   (>>discard<<   und   >>trim<<)
       unterstutzt.  (Dies konnte die Leistung auf einigen Festspeichergeraten
       (SSD) verbessern, was aber oft nicht der  Fall  ist.)  Siehe  auch  die
       ANMERKUNGEN.

       Diese  Funktionen  konnen  nur von einem privilegierten Prozess (einem,
       der uber die CAP_SYS_ADMIN-Fahigkeit verfugt) benutzt werden.

   Priorit"at
       Jeder Auslagerungsbereich fur Hauptspeicherbereiche hat eine Prioritat,
       hoch  oder  niedrig.  Die  Standardprioritat ist niedrig. Innerhalb der
       Bereiche niedriger Prioritat erhalten neuere Bereiche  eine  niedrigere
       Prioritat als altere.

       Alle  mit swap_schalter gesetzten Prioritaten sind hohe Prioritaten und
       hoher  als  die  Vorgabe.  Sie  konnen  einen  beliebigen   durch   den
       Aufrufenden   gewahlten   nicht-negativen  Wert  haben.  Hohere  Zahlen
       entsprechen hoheren Prioritaten.

       Auslagerungsseiten von Hauptspeicherbereichen werden nach Prioritat aus
       den  Bereichen  reserviert,  die mit der hochsten Prioritat zuerst. Bei
       Bereichen  unterschiedlicher  Prioritat  werden  die  mit  der  hoheren
       Prioritat  zuerst  ausgeschopt,  bevor Bereiche mit niedriger Prioritat
       genutzt werden. Haben zwei oder mehr Bereiche die gleiche Prioritat und
       diese  ist  die  hochste  verfugbare,  dann  werden  die  Seiten reihum
       nacheinander reserviert.

       Ab Linux 1.3.6 befolgt der Kernel diese Regeln gewohnlich, aber es gibt
       auch Ausnahmen.

R"UCKGABEWERT

       Bei   Erfolg   wird  Null  zuruckgegeben.  Bei  einem  Fehler  wird  -1
       zuruckgegeben und errno entsprechend gesetzt.

FEHLER

       EBUSY  (Fur  swapon())   Der   angegebene   pfad   wird   bereits   als
              Auslagerungsbereich fur Hauptspeicherbereiche benutzt.

       EINVAL Die  Datei  pfad  existiert,  zeigt aber weder auf eine regulare
              Datei  noch  auf  ein  blockorientiertes  Gerat.  Oder  der  fur
              swapon()  angegebene Pfad enthalt keine gultige Signatur fur die
              Auslagerung von Hauptspeicherbereichen oder  befindet  sich  auf
              einen  Dateisystem  im  Speicher,  wie  Tmpfs. Oder der pfad fur
              swapoff() ist derzeit nicht  in  einem  Auslagerungsbereich  von
              Hauptspeicherbereichen.

       ENFILE Die   Systembegrenzung  der  Gesamtzahl  offener  Dateien  wurde
              erreicht.

       ENOENT Die Datei pfad existiert nicht.

       ENOMEM Das System verfugt nicht uber  ausreichenden  Speicher,  um  das
              Auslagern von Hauptspeicherbereichen zu starten.

       EPERM  Der  Aufrufende  verfugt nicht uber die Fahigkeit CAP_SYS_ADMIN.
              Alternativ wird die maximale Anzahl der Auslagerungsdateien  fur
              Hauptspeicherbereiche   benutzt;   Lesen   Sie   die   folgenden
              ANMERKUNGEN.

KONFORM ZU

       Diese Funktionen sind Linux-spezifisch und sollte nicht  in  Programmen
       benutzt  werden,  die  portabel  gehalten  werden  sollen.  Das  zweite
       swap_schalter-Argument wurde mit Linux 1.3.2 eingefuhrt.

ANMERKUNGEN

       Die Partition oder der Pfad mussen mit mkswap(8) vorbereitet werden.

       Es   gibt   eine   Obergrenze   fur   die   Anzahl   der    benutzbaren
       Auslagerungsdateien    von    Hauptspeicherbereichen,    die   in   der
       Kernel-Konstante MAX_SWAPFILES definiert wird. Vor Kernel 2.4.10  hatte
       MAX_SWAPFILES  den Wert 8; seit Kernel 2.4.10 hat sie den Wert 32. Seit
       Kernel 2.6.18 ist die Grenze um zwei herabgesetzt (daher: 30) falls der
       Kernel  mit  der  Option  CONFIG_MIGRATION  erstellt  wurde  (die  zwei
       Eintrage in der Auslagerungstabelle von Hauptspeicherbereichen fur  die
       Seiten-Migrationsfunktionen    von    mbind(2)   und   migrate_pages(2)
       reserviert).  Seit  Kernel  2.6.32  wird  die  Grenze  ferner  um  eins
       herabgesetzt,  falls  der  Kernel  mit der Option CONFIG_MEMORY_FAILURE
       erstellt wurde.

       Verwerfen von Auslagerungsseiten von  Hauptspeicherbereichen  wurde  in
       Kernel  2.6.29  eingefuhrt, dann wurde es in Kernel 2.6.36 vom Schalter
       SWAP_FLAG_DISCARD  abhangig  gemacht,  wodurch  immer  noch  die  ganze
       Auslagerung   von   Hauptspeicherbereichen  beim  Aufruf  von  swapon()
       verworfen  (>>discard<<)  wird,  sogar,  wenn  das  Schalter-Bit  nicht
       gesetzt ist.

SIEHE AUCH

       mkswap(8), swapoff(8), swapon(8)

KOLOPHON

       Diese   Seite   ist   Teil   der  Veroffentlichung  3.32  des  Projekts
       Linux-man-pages. Eine Beschreibung des Projekts und Informationen,  wie
       Fehler     gemeldet     werden     konnen,     finden     sich    unter
       http://www.kernel.org/doc/man-pages/.

"UBERSETZUNG

       Die deutsche Ubersetzung dieser Handbuchseite  wurde  von  Ralf  Demmer
       <rdemmer@rdemmer.de> und Chris Leick <c.leick@vollbio.de> erstellt.

       Diese  Ubersetzung  ist  Freie Dokumentation; lesen Sie die GNU General
       Public  License  Version  3  oder  neuer   bezuglich   der   Copyright-
       Bedingungen. Es wird KEINE HAFTUNG ubernommen.

       Wenn  Sie  Fehler  in  der  Ubersetzung  dieser  Handbuchseite  finden,
       schicken     Sie     bitte     eine     E-Mail     an     <debian-l10n-
       german@lists.debian.org>.