2017-06-22 7 views
0

私は自分のLinux(CENT-OS-5)にCでサービスを実装しています。私はそのサービスを見つけましたメモリ使用量が多いうちにLinux強制プロセスがメモリを解放しますか?

日々、ますます多くのメモリを消費します。 (一日あたり200〜500キロバイト程度)

私は一度malloc関数経由で割り当てられたメモリが

システムに戻ることは容易ではないことを知っていました。だから多分私のプログラムはメモリサイズを増やし続けているのです。

私はシンプルなコードを書き、システムからすべてのメモリをmallocしようとしました。

何かが私のLinuxに起こった。私のサービスのRSS-Memoryは6xxxKBから3xxx KBに下がった。

私の質問です。Linuxは緊急時にメモリをリサイクルしましたか?はいの場合、

どのように動作しますか?それを設定できますか?ありがとうございました。

+1

メモリーがちょうどへのポインタを渡し、*「システムに戻す」ことは非常に*簡単がありますことを発見メモリを 'free'関数に置き換えます。あなたがそれを済ませたら、あなたは自由な記憶をしますか? –

+0

こんにちは、スタックオーバーフローへようこそ。 [StackOverflowで尋ねるものについてこの文書をお読みください](http://www.wikihow.com/Ask-a-Question-on-Stack-Overflow)あなたの質問は有効なものですが、この[その他のフォーラム、SuperUser](https://superuser.com/tour)にあります。ようこそcommuntityへようこそ、より多くのあなたの記事を参照してください。 –

+0

はい、私が割り当てたものはほとんど無料ですが、 'free'を呼び出すと 'ps aux'のRSS値を減らすことはできません。 –

答えて

0

私はPFRAと呼ばれるメモリのリサイクルメカニズムは、多分malloc` `によって割り当てられた私の質問への答え

関連する問題