Open Source Web Development Tutorials - Dev Shed
LinuxのMMAPシステムコール
(2009/03/17公開)
mmap()のコールが成功すると、マッピングの場所が戻ります。失敗した場合、MAP_FAILEDが戻り、適切な値のerrnoが示されます。mmap()のコールがゼロを戻すことはありません。
errnoの値には、以下のような種類があります。
EACCESS
指示されたファイル記述子が通常ファイルではありません。または、ファイルを開いたモードがprotあるいはflagsと矛盾します。
EAGAIN
ファイルはファイルロックによってロックされています。
EBADF
指示されたファイル記述子が有効ではありません。
EINVAL
addr、len、offのパラメータのうち、1つあるいは複数が有効ではありません。
ENFILE
オープンファイルに対するシステムの限界に達しました。
ENODEV
マッピングするファイルが常駐するファイルシステムは、メモリマッピングをサポートしていません。
ENOMEM
メモリ不足です。
EOVERFLOW
addr+lenの結果が、アドレス空間を超過します。
EPERM
PROT_EXECが指示されましたが、ファイルシステムはnoexecと実装されています。
Copyright © 2008 Ziff Davis Enterprise, Inc.
Originally appearing in the U.S. Edition of Dev Shed. All Rights Reserved.








