mmap は file を memory 上に mapping するためのルーチン。ファイルを展開する領域に対しては「読み書き」等の権限を指定する事ができ、通常のメモリ領域のように使用可能である。
メモリ確保ルーチンとして使用するのであれば、わざわざファイルを mapping するのは勿体ないので、anonymous mapping (無名マップ)を使用する。Linux ならば、MAP_ANONYMOUS フラグ指定や /dev/zero の mapping で実現可能である。
MacOSX では MAP_ANONYMOUS フラグも、/dev/zero の mapping にも対応していないため、使えないと早とちりしたが、どうやら MAP_ANON フラグで行ける模様。
メモリ確保ルーチンとして使用するのであれば、わざわざファイルを mapping するのは勿体ないので、anonymous mapping (無名マップ)を使用する。Linux ならば、MAP_ANONYMOUS フラグ指定や /dev/zero の mapping で実現可能である。
MacOSX では MAP_ANONYMOUS フラグも、/dev/zero の mapping にも対応していないため、使えないと早とちりしたが、どうやら MAP_ANON フラグで行ける模様。
※コメント投稿者のブログIDはブログ作成者のみに通知されます