mincore(2) mincore(2)
NAME
mincore - Residenz von Speicherseiten bestimmen
SYNTAX
#include <unistd.h>
int mincore(caddrt addr, sizet len, char *vec);
BESCHREIBUNG
mincore() liefert den primären Speicherresidenzstatus von Seiten im
Adreßbereich, der von Abbildungen im Bereich [addr, addr + len) abge-
deckt wird. Der Status wird als Zeichen pro Seite im Feld *vec abge-
legt, welches groß genug sein muß, um die Statusinformationen aller
Seiten im Adreßbereich aufzunehmen. Das niederwertige Bit jedes Zei-
chens wird auf 1 gesetzt, um anzuzeigen, daß die referierte Seite sich
im Primärspeicher befindet, und auf 0, wenn dies nicht der Fall ist.
Die Werte der anderen Bits in jedem Zeichen sind undefiniert und kön-
nen bei zukünftigen Implementierungen weitere Informationen darstel-
len.
mincore() liefert Residenzinformation, die für den jeweiligen Zeit-
punkt korrekt ist. Da das System die Seiten im Speicher häufig umorga-
nisieren kann, können die Informationen schnell veralten. Nur
gesperrte Seiten bleiben garantiert im Speicher [siehe memcntl(2)].
mincore() schlägt fehl, wenn
EFAULT *vec eine Adresse enthält, auf die nicht zugegriffen werden
kann.
EINVAL addr nicht ein Vielfaches der Seitengröße ist, wie sie von
sysconf(3C) zurückgeliefert wird.
EINVAL das Argument len einen Wert kleiner oder gleich 0 enthält.
ENOMEM Adressen im Bereich [addr, addr + len) ungültig für den
Adreßbereich eines Prozesses sind, oder eine oder mehrere
Seiten angegeben werden, welche nicht verzeichnet sind.
ERGEBNIS
mincore() liefert bei Erfolg 0 und -1 bei Fehler.
SIEHE AUCH
mmap(2), mlock(3C), sysconf(3C).
Seite 1 Reliant UNIX 5.44 Gedruckt 11/98