vm_invalidatep Kernel-Service

Zweck

Gibt Seitenrahmen im angegebenen Bereich für ein nicht aufgezeichnetes persistentes Segment oder Clientsegment frei.

Syntax

#include <sys/types.h>
#include <sys/errno.h>
#include <sys/vmuser.h>
int vm_invalidatep ( Sid, Pfirst, npages)
vmid_t Sid;
Vpn_T Pfirst;
Ulong npages;

Parameter

Element Beschreibung
sid Gibt das Basissegment an
Pfirst Die erste Seitenzahl innerhalb des Bereichs.
npages Die Anzahl der Seiten, die ab dem Wert Pfirst ungültig gemacht werden sollen. Alle Seiten müssen sich im selben Segment befinden.

Beschreibung

Die Kernel-Serviceroutine vm_invalidatep löscht alle Seitenrahmen, die dem virtuellen Speicherobjekt im angegebenen Seitenbereich zugeordnet sind.

Wenn eine Seite innerhalb des angegebenen Bereichs im Einlagerungs-oder Auslagerungsstatus gefunden wird, wird der Thread synchron in den Ruhemodus versetzt, bis die Seiten-E/A abgeschlossen ist. Wenn die Ein-/Ausgabe abgeschlossen ist, wird jeder speicherresidente Seitenrahmen freigegeben.

Anmerkung: Die Subroutine vm_invalidatep wird nicht für die Verwendung auf großen Seiten unterstützt.

Ausführungsumgebung

Der Kernel-Service vm_invalidatep kann nur über Prozessumgebung aufgerufen werden.

Dies gilt für Dateien und wird möglicherweise nicht für Arbeitsspeichersegmente aufgerufen.

Rückgabewerte

Element Beschreibung
0 Gibt den Abschluss der Invalidierungs-Operationen an.
EINVAL Gibt einen der folgenden Fehler an:
  • Pfirst < 0.
  • npages < 0.
  • Seitenintervall nicht in einem Segment.
  • Ungültiger Parameter Sid .
  • Ungültiger Segmenttyp.