9.3. mlockall() システムコールを使用して、マップされたすべてのページをロックする
mlockall()
および munlockall()
システムコールを使用してリアルタイムメモリーをロックおよびロック解除するには、flags
引数を 0、もしくは定数 MCL_CURRENT
または MCL_FUTURE
のいずれかに設定します。MCL_FUTURE
を使用すると、ロックされたバイト数が許可された最大数を超えるため、mmap2()
、sbrk2()
、または malloc3()
などの将来のシステムコールが失敗する可能性があります。
前提条件
- システムの root 権限がある。
手順
mlockall()
およびmunlockall()
リアルタイムシステムコールを使用するには、以下を実行します。mlockall()
システムコールを使用して、マップされたすべてのページをロックします。#include <sys/mman.h> int mlockall (int flags)
munlockall()
システムコールを使用して、マップされたすべてのページのロックを解除します。#include <sys/mman.h> int munlockall (void)
関連情報
-
capabilities(7)
man ページ -
mlock(2)
man ページ -
mlock(3)
man ページ -
move_pages(2)
man ページ -
posix_memalign(3)
man ページ -
posix_memalign(3p)
man ページ