Man page - mincore(2)

Packages contains this manual

Available languages:

en fr ja ru ro

Manual

MINCORE

名 前
書 åŧ
čĒŦ 明
čŋ” り 値
エ ナ ãƒŧ
バ ãƒŧ ジ ョ ãƒŗ
æē– 拠
バ グ
é–ĸ 逪 項 į›Ž
こ ぎ 文 書 ãĢ つ い ãĻ

名 前

mincore - ペ ãƒŧ ジ が ãƒĄ ãƒĸ ãƒĒ ãƒŧ 内 ãĢ あ る か お う か を 判 厚 す る

書 åŧ

#include <unistd.h>
#include <sys/mman.h>

int mincore(void * addr , size_t length , unsigned char * vec );

glibc 向 け ぎ 抟 čƒŊ 検 æŸģ マ ク ロ ぎ čρ äģļ ( feature_test_macros (7) 参 į…§ ):

mincore ():
glibc 2.19 äģĨ 降 :
_DEFAULT_SOURCE
Glibc 2.19 äģĨ 前 :
_BSD_SOURCE || _SVID_SOURCE

čĒŦ 明

mincore () は 、 å‘ŧ ãŗ å‡ē し 元 プ ロ ã‚ģ ゚ ぎ äģŽ æƒŗ ãƒĄ ãƒĸ ãƒĒ ãƒŧ ぎ ペ ãƒŧ ジ が ã‚ŗ ã‚ĸ (RAM) 内 ãĢ 存 在 し 、 ペ ãƒŧ ジ 参 į…§ 時 ãĢ デ ã‚Ŗ ゚ ク ã‚ĸ ク ã‚ģ ゚ (ペ ãƒŧ ジ フ り ãƒŧ ãƒĢ ト ) を čĩˇ こ さ ãĒ い か お う か を į¤ē す ベ ク ト ãƒĢ を čŋ” す 。 ã‚Ģ ãƒŧ ネ ãƒĢ は 、 ã‚ĸ ド ãƒŦ ゚ addr か ら 始 ぞ る length バ イ ト ぎ ᝄ 回 ぎ ペ ãƒŧ ジ ãĢ é–ĸ す る 存 在 情 å ą を čŋ” す 。

addr åŧ• 数 は ã‚ˇ ゚ テ ム ぎ ペ ãƒŧ ジ ã‚ĩ イ ã‚ē ぎ 倍 数 で ãĒ け れ ば ãĒ ら ãĒ い 。 length åŧ• 数 は ペ ãƒŧ ジ ã‚ĩ イ ã‚ē ぎ 倍 数 で あ る åŋ… čρ は ãĒ い が 、 ペ ãƒŧ ジ 全 äŊ“ ãĢ é–ĸ す る 存 在 情 å ą が čŋ” さ れ る ぎ で 、 äē‹ åŽŸ 上 length は ペ ãƒŧ ジ ã‚ĩ イ ã‚ē ぎ 倍 数 ãĢ 切 り 上 げ ら れ る こ と ãĢ ãĒ る 。 ペ ãƒŧ ジ ã‚ĩ イ ã‚ē ( PAGE_SIZE ) は sysconf(_SC_PAGESIZE) を äŊŋ ãŖ ãĻ å…Ĩ 手 で き る 。

vec åŧ• 数 は 、 少 ãĒ く と も (length+PAGE_SIZE-1) / PAGE_SIZE バ イ ト が æ ŧ į´ で き る 配 列 を 指 し ãĻ い ãĒ け れ ば ãĒ ら ãĒ い 。 こ ぎ å‘ŧ ãŗ å‡ē し が čŋ” る と き 、 各 バ イ ト ぎ 最 下 äŊ ビ ッ ト は 、 寞 åŋœ す る ペ ãƒŧ ジ が ãƒĄ ãƒĸ ãƒĒ ãƒŧ 内 ãĢ そ ぎ と き 存 在 す れ ば ã‚ģ ッ ト さ れ 、 そ う で ãĒ い å ´ 合 は ク ãƒĒ ã‚ĸ さ れ る (各 バ イ ト ぎ そ ぎ äģ– ãŽ ビ ッ ト は æœĒ 厚 įžŠ で あ り 、 こ れ ら ぎ ビ ッ ト は 将 æĨ ぎ äŊŋ ᔍ ãĢ そ ãĒ え ãĻ äēˆ į´„ さ れ ãĻ い る )。 も ãĄ ろ ん 、 vec で čŋ” さ れ た 情 å ą は ゚ ナ ッ プ ã‚ˇ ョ ッ ト で し か ãĒ い 。 ãƒĄ ãƒĸ ãƒĒ ãƒŧ 内 ãĢ ロ ッ ク さ れ ãĻ い ãĒ い ペ ãƒŧ ジ は 、 äģģ æ„ ぎ 時 į‚š で ãƒĄ ãƒĸ ãƒĒ ãƒŧ 内 ãĢ å…Ĩ ãŖ た り å‡ē た り で き 、 こ ぎ å‘ŧ ãŗ å‡ē し が čŋ” る と き ãĢ は vec ぎ 内 厚 は す で ãĢ 古 く ãĒ ãŖ ãĻ い る か も し れ ãĒ い 。

čŋ” り 値

成 功 し た å ´ 合 、 mincore () は 0 を čŋ” す 。 エ ナ ãƒŧ ぎ å ´ 合 は -1 を čŋ” し ãĻ 、 errno を 遊 切 ãĒ 値 ãĢ 設 厚 す る 。

エ ナ ãƒŧ

EAGAIN ã‚Ģ ãƒŧ ネ ãƒĢ が 一 時 įš„ ãĢ ãƒĒ ã‚Ŋ ãƒŧ ゚ を äŊŋ い 果 た し ãĻ い る 。

EFAULT

vec が į„Ą 劚 ãĒ ã‚ĸ ド ãƒŦ ゚ を 指 し ãĻ い る 。

EINVAL

addr が ペ ãƒŧ ジ ã‚ĩ イ ã‚ē ぎ 倍 数 で ãĒ い 。

ENOMEM

length が ( TASK_SIZE - addr ) よ り 大 き い 。 ( length ãĢ 負 ぎ 値 が 指 厚 さ れ た å ´ 合 、 そ ぎ 値 が 大 き ãĒ įŦĻ åˇ ãĒ し 整 数 と し ãĻ č§Ŗ 釈 さ れ る た め ãĢ čĩˇ こ る こ と が あ る 。 ) Linux 2.6.11 äģĨ 前 で は 、 こ ぎ æĄ äģļ ぎ å ´ 合 は エ ナ ãƒŧ EINVAL が čŋ” さ れ ãĻ い た 。

ENOMEM

addr か ら addr + length ぎ 間 ãĢ マ ッ プ さ れ ãĻ い ãĒ い ãƒĄ ãƒĸ ãƒĒ ãƒŧ が あ ãŖ た 。

バ ãƒŧ ジ ョ ãƒŗ

Linux 2.3.99pre1 と glibc 2.2 か ら 刊 ᔍ 可 čƒŊ で あ る 。

æē– 拠

mincore () は POSIX.1 ãĢ 記 čŋ° さ れ ãĻ お ら ず 、 全 ãĻ ぎ UNIX 原 čŖ… で 刊 ᔍ 可 čƒŊ で あ る わ け で は ãĒ い 。

バ グ

ã‚Ģ ãƒŧ ネ ãƒĢ 2.6.21 よ り 前 は 、 mincore () は 、 MAP_PRIVATE マ ッ ピ ãƒŗ グ や 非 ᎚ åŊĸ マ ッ ピ ãƒŗ グ ( remap_file_pages (2) を äŊŋ ãŖ ãĻ äŊœ 成 さ れ る ) ãĢ つ い ãĻ æ­Ŗ し い 情 å ą を čŋ” さ ãĒ か ãŖ た 。

é–ĸ 逪 項 į›Ž

fincore (1), madvise (2), mlock (2), mmap (2), posix_fadvise (2), posix_madvise (3)

こ ぎ 文 書 ãĢ つ い ãĻ

こ ぎ man ペ ãƒŧ ジ は Linux man-pages プ ロ ジ ェ ク ト ぎ ãƒĒ ãƒĒ ãƒŧ ゚ 5.10 ぎ 一 部 で あ る 。 プ ロ ジ ェ ク ト ぎ čĒŦ 明 と バ グ å ą 告 ãĢ é–ĸ す る 情 å ą は https://www.kernel.org/doc/man-pages/ ãĢ 書 か れ ãĻ い る 。