mmap

    1

    1答えて

    Linuxでshm_openを試して問題に遭遇しています。私は頻繁に共有メモリセグメントのサイズをftruncで変更し、mmapを使ってサイズ変更されたセグメントを再マップします。しかし、20メガバイトのマークのまわりで、私はmmapからENOMEMを取得します。私はこの問題を解決するために行うことを試みてきた もの: 最初、私はこれらのsysctlのパラメータを知りました。私はそれらを再構成:

    5

    3答えて

    mmapドキュメントには、MAP_NORESERVEフラグについての説明があります。 このマッピングにスワップスペースを予約しないでください。スワップ空間が 予約されている場合、 マッピングを変更することができるという保証があります。スワップ領域が予約されていない場合、利用可能な物理メモリがない場合には、 書き込み時にSIGSEGVが得られる可能性があります。 私が実際に必要とするのは、仮想メモリ

    1

    3答えて

    実行時にLinuxプロセスでマップされたすべてのページ(割り当てられたメモリ)のリストを取得したいとします。どうやってやるの?

    -1

    1答えて

    mmap()を使用してmalloc()から割り当てられた配列またはメモリのメモリマップを検索しようとしていますが、無効な引数が表示されています。 #include<stdio.h> #include<sys/mman.h> #include<stdlib.h> int main() { int *var1=NULL; size_t size=0; s

    6

    4答えて

    私はmmap()を使って仮想メモリを操作しようとしています。私はメモリの領域を予約してコミットしたい。私はこのコードをテストした: const unsigned long gygabyte = 1024 * 1024 * 1024; const unsigned long gygabyteCount = 2; const unsigned long maxCapacity = gygabyte

    5

    1答えて

    私は潜在的に数百のメモリがマップされているアプリケーションを持っています。すなわち、mmap()というファイルがいつでも開いています。 私は実際の制限が開いているメモリのマップされたファイルの数に何があるかを理解するための助けを探しています。 void* map = mmap(0, *capacity, PROT_READ | PROT_WRITE, MAP_SHARED, file, 0);

    19

    1答えて

    配列をMmap経由でファイルにマップしようとしていますが、配列はfloat64のような任意の型にできます。 Cでは、私はこれを見つけるone。いくつかのテキストを読んだ後、私はこれを書いたsample。私はそれが正しいのか分からず、ファイルに値を書き込んでいません。配列のサイズを1000から10000のように大きくすると、クラッシュします。もし誰かがそれを正しく行う方法を知っていたら、教えてくださ

    1

    2答えて

    なぜこのコードセグメントはセグメンテーションフォールトを与えますか? #include <stdio.h> #include <stdlib.h> #include <sys/mman.h> #include <string.h> int main() { void *ptr; ptr=mmap(NULL, 10, PROT_READ|PROT_WRITE, MA

    2

    2答えて

    うまくいけばタイトルは明らかです。私はmmap()で得られたメモリを持っています。しばらくすると、私はこの範囲内のデータはもう必要ないと結論づけました。しかし、私はまだこの範囲を保つことを望みます。つまり、私はmummap()を呼びたくはありません。私は良い市民になろうと努力しており、必要以上にシステムを交換しないようにしています。 場合は指定したページが物理ページに裏打ちされ、カーネルがそれを決

    2

    3答えて

    OpenGLコンテキストの割り当てられたメモリ範囲を知ることは可能ですか?おそらく、このメモリ範囲は別のプロセスからmmap()でアクセスされるべきです。このテクニックは機能することができますか、それとも基本的な問題がありますか? 更新最新のX11インストールでGNU/Linuxシステムを使用しており、このようなトリックをサポートするドライバを持つビデオカードメーカーを選ぶことができます。