Unix-system-calls-mmap2

提供:Dev Guides
移動先:案内検索

[top]#

|http://www.google.com/[Google] | a|

Web This Site
  • 初心者向けのUnix *
  • 高度なUnix *

選択した読書

Copyright©2014 by finddevguides

[cols=",,,,,,,",]

| |  Home   | |  References   | |  Discussion Forums   | |  About TP  

[width="100%",cols="100%",]

a| == mmap2()-Unix、Linuxシステムコール

[[File:]] image :http://www.finddevguides.com/images/next.gif [next] image:http://www.finddevguides.com/add- this.gif [AddThisソーシャルブックマークボタン]

広告

NAME

mmap2-ファイルまたはデバイスをメモリにマップします

概要

#include <sys/mman.h> void* mmap2(void *start, size_t length, int prot, int flags, int fd, off_t pgoffset);

説明

*mmap2* ()システムコールは、 *mmap* (2)とまったく同じように動作しますが、最後の引数は(バイトではなく)4kB単位でファイルへのオフセットを指定します。 これにより、32ビット_off_t_を使用するアプリケーションは、より大きなファイル(通常は最大2 ^ 44バイト)をマップできます。

返り値

成功すると、 mmap2 ()はマップされた領域へのポインターを返します。 エラー時には-1が返され、_errno_が適切に設定されます。

エラー

Tag Description
*EFAULT * Problem with getting the data from userspace.

準拠

このシステムコールはLinux固有です。

ノート

Glibcはこのシステムコールのラッパーを提供しません。* syscall *(2)を使用して呼び出します。

*mmap2* ()はLinux 2.3.31以降で使用可能です。 Linux固有であり、ポータブルアプリケーションでは使用しないでください。 32ビットシステムでは、 *mmap2* ()を使用して、LFS(Large File Summit)の一部である *mmap64* ()関数を実装します。

関連項目

[[File:]] image :http://www.finddevguides.com/images/next.gif [next] [[File:]]

広告

|  

[cols="^",]

|Advertisements