mmap()
はaddr
とlen
バイトから始まる呼び出し元プロセスの仮想アドレス空間内の新しいマッピングを作成し、munmap()
は、プロセス開始のアドレス空間の任意の部分を含むもの全体のページのすべてのマッピングを削除しますaddr
で続き、len
バイトです。のmmap()とと、munmap()
変更されたmmapファイルがメモリを解放する前にmunmapによってディスクに書き込まれているかどうか、または変更を同期させるために別の関数を呼び出さなければならないかどうか尋ねます。
どのオペレーティングシステムでですか?あなたは 'mmap'にどのようなフラグを渡していますか? 「mmapファイル」と「munmapファイル」はどういう意味ですか? – Gilles
UNIXオペレーティングシステム。 mmapファイルは、マップされたメモリに書き込まれたデータを意味します。データがマップされたメモリにロードされていて、その上で何らかの変更が行われた場合。提供されるパーマネータは、mmap( NULL、size、readOnly?PROT_READ:PROT_READ | PROT_WRITE、MAP_SHARED、fd、0)です。 – Pragya
あなたの質問の問題は、mmapはすべてのジャック・オール・トレード機能です。その振る舞いは、あなたが実際どのようにそれをしているかによって決まります通話で使用している設定については、より具体的に説明する必要があります。 – user3344003