.\" -*- coding: UTF-8 -*- .\" Copyright (C) 1996 Andries Brouwer (aeb@cwi.nl) .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH msync 2 "2. Mai 2024" "Linux man\-pages 6.8" .SH BEZEICHNUNG msync \- eine Datei mit einem Speicherabbild synchronisieren .SH BIBLIOTHEK Standard\-C\-Bibliothek (\fIlibc\fP, \fI\-lc\fP) .SH ÜBERSICHT .nf \fB#include \fP .P \fBint msync(void \fP\fIAdresse\fP\fB[.\fP\fILänge\fP\fB], size_t \fP\fILänge\fP\fB, int \fP\fISchalter\fP\fB);\fP .fi .SH BESCHREIBUNG \fBmsync\fP leitet Änderungen, die in der im Speicher befindlichen Kopie einer Datei gemacht wurden, mittels \fBmmap\fP(2) zurück in das Dateisystem. Ohne Verwendung dieses Aufrufs besteht keine Garantie, dass Änderungen auf die Platte geschrieben werden, bevor \fBmunmap\fP(2) aufgerufen wird. Um genauer zu sein: Der Teil der Datei, der dem Speicherbereich entspricht, der bei \fIAdresse\fP anfängt und \fILänge\fP lang ist, wird aktualisiert. .P Das Argument \fISchalter\fP sollte entweder \fBMS_ASYNC\fP oder \fBMS_SYNC\fP angeben. Es kann zusätzlich das Bit \fBMS_INVALIDATE\fP enthalten. Diese Bits haben folgende Bedeutung: .TP \fBMS_ASYNC\fP gibt an, dass eine Aktualisierung geplant wird, der Aufruf jedoch sofort zurückkehrt. .TP \fBMS_SYNC\fP fordert eine Aktualisierung an und wartet, bis sie abgeschlossen ist. .TP \fBMS_INVALIDATE\fP .\" Since Linux 2.4, this seems to be a no-op (other than the .\" EBUSY check for VM_LOCKED). erbittet, dass andere Abbildungen der selben Datei verworfen werden sollen (so dass sie mit den neuen nur geschriebenen Werten aktualisiert werden können). .SH RÜCKGABEWERT Bei Erfolg wird Null zurückgegeben. Bei einem Fehler wird \-1 zurückgegeben und \fIerrno\fP gesetzt, um den Fehler anzuzeigen. .SH FEHLER .TP \fBEBUSY\fP \fBMS_INVALIDATE\fP wurde in \fISchalter\fP angegeben und es existiert eine Speichersperre für den angegebenen Adressbereich. .TP \fBEINVAL\fP \fIadresse\fP ist kein Vielfaches der SEITENGRÖßE oder ein anderes Bit als \fBMS_ASYNC\fP | \fBMS_INVALIDATE\fP | \fBMS_SYNC\fP ist in \fISchalter\fP gesetzt oder in \fIschalter\fP sind sowohl \fBMS_SYNC\fP als auch \fBMS_ASYNC\fP gesetzt. .TP \fBENOMEM\fP Der angegebene Speicher (oder ein Teil davon) wurde nicht abgebildet. .SH VERSIONEN .\" commit 204ec841fbea3e5138168edbc3a76d46747cc987 Gemäß POSIX muss entweder \fBMS_SYNC\fP oder \fBMS_ASYNC\fP in \fISchalter\fP angegeben werden und das tatsächliche Fehlschlagen beim Einfügen von einem dieser Schalter wird dazu führen, dass \fBmsync\fP() auf einigen Systemen scheitert. Linux erlaubt jedoch einen Aufruf von \fBmsync\fP() ohne diese Schalter mit einer Semantik, die (derzeit) der Angabe von \fBMS_ASYNC\fP entspricht. (Seit Linux 2.6.19 ist \fBMS_ASYNC\fP de facto ein Leerbefehl, da der Kernel unsaubere Seiten korrekt verfolgt und wenn nötig aus dem Speicher leert.) Trotz des Linux\-Verhaltens sollten portable, zukunftssichere Anwendungen sicherstellen, dass sie \fBMS_SYNC\fP oder \fBMS_ASYNC\fP in \fISchalter\fP angeben. .SH STANDARDS POSIX.1\-2008. .SH GESCHICHTE POSIX.1\-2001. .P Dieser Aufruf wurde in Linux 1.3.21 eingeführt und dann \fBEFAULT\fP an Stelle von \fBENOMEM\fP benutzt. In Linux 2.4.19 wurde dies auf den POSIX\-Wert \fBENOMEM\fP geändert. .P .\" POSIX.1-2001: It shall be defined to -1 or 0 or 200112L. .\" -1: unavailable, 0: ask using sysconf(). .\" glibc defines them to 1. Auf POSIX\-Systemen, auf denen \fBmsync\fP() verfügbar ist, sind sowohl \fB_POSIX_MAPPED_FILES\fP als auch \fB_POSIX_SYNCHRONIZED_IO\fP in \fI\fP als ein Wert größer als 0 definiert. (Siehe auch \fBsysconf\fP(3).) .SH "SIEHE AUCH" \fBmmap\fP(2) .P B.O. Gallmeister, POSIX.4, O'Reilly, Seiten 128\[en]129 und 389\[en]391. .PP .SH ÜBERSETZUNG Die deutsche Übersetzung dieser Handbuchseite wurde von Martin Schulze und Chris Leick erstellt. .PP Diese Übersetzung ist Freie Dokumentation; lesen Sie die .UR https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3 .UE oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen. .PP Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die .MT debian-l10n-german@lists.debian.org Mailingliste der Übersetzer .ME .