mmap()
大きなデータベース ファイルに効率的にアクセスするために共有メモリを使用するプログラムがあります。巨大なページで実験して、速度が上がるかどうかを確認したいと思います。
データベース ファイルを Linux のhugetlbfsディレクトリにコピーし、古い場所にシンボリック リンクを作成するのが手早く簡単な方法だと思いました。
ただし、cp
コマンドがファイルに書き込めないため、これは機能しません。ftrunc()
およびmmap()
システム コールを呼び出してファイルに書き込むことによってのみ、ファイルを作成できると思われます。既存のツールについて説明する回答が得られない限り、おそらくこれを行うコピー ツールを作成してみます。
Linux でヒュージ ページを使用して共有メモリ マップを実行する他の良い方法を探しています。