mmap2(2) | System Calls Manual | mmap2(2) |
BEZEICHNUNG
mmap2 - Dateien oder Geräte in den Speicher mappen
BIBLIOTHEK
Standard-C-Bibliothek (libc, -lc)
ÜBERSICHT
#include <sys/mman.h> /* Definition der Konstanten MAP_* und PROT_* */ #include <sys/syscall.h> /* Definition der Konstanten SYS_* */ #include <unistd.h>
void *syscall(SYS_mmap2, unsigned long Adr, unsigned long Länge, unsigned long Prot, unsigned long Schalter, unsigned long dd, unsigned long pgVersatz);
BESCHREIBUNG
Wahrscheinlich sind Sie an diesem Systemaufruf nicht interessiert. Lesen Sie stattdessen mmap(2), der die Glibc-Wrapperfunktion beschreibt, die diesen Systemaufruf aufruft.
Der Systemaufruf mmap2() stellt die gleiche Schnittstelle wie mmap(2) bereit, außer dass das letzte Argument den Versatz in die Datei in 4096-byte-Einheiten festlegt (statt in Bytes, wie dies mmap(2) macht). Dies ermöglicht es Anwendungen, die ein 32-bit off_t verwenden, große Dateien (bis zu 2^44 byte) zu mappen.
RÜCKGABEWERT
Im Erfolgsfall liefert mmap2() einen Zeiger auf den gemappten Bereich zurück. Im Fehlerfall wird -1 zurückgeliefert und errno gesetzt, um den Fehler anzuzeigen.
FEHLER
- EFAULT
- Problem beim Erhalten der Daten aus dem Anwendungsbereich.
- EINVAL
- (Verschiedene Plattformen, auf denen die Seitengröße nicht 4096 byte beträgt.) Versatz * 4096 ist kein Vielfaches der Systemseitengröße.
mmap2() kann auch alle in mmap(2) beschriebenen Fehler zurückliefern.
VERSIONEN
Auf Architekturen, auf denen dieser Systemaufruf vorhanden ist, wird die Glibc-Wrapperfunktion mmap() statt des Systemaufrufs mmap(2) aufrufen.
Dieser Systemaufruf existiert auf X86-64 nicht.
Auf Ia64 ist die Einheit Versatz tatsächlich die Systemseitengröße statt 4096 byte.
STANDARDS
Linux.
GESCHICHTE
Linux 2.3.31.
SIEHE AUCH
ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Helge Kreutzmann <debian@helgefjell.de> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Übersetzer.
2. Mai 2024 | Linux man-pages 6.8 |