2:頻繁に確認し、過度に投資しないでください。
モード2(Linux 2.6以降で利用可能)では、割り当て可能な仮想アドレス空間の合計(/ proc / meminfoのCommitLimit)は次のように計算されます。
CommitLimit = (total_RAM - total_huge_TLB) *
overcommit_ratio / 100 + total_swap
IIUCではecho 2 > /proc/sys/vm/overcommit_memory
オーバーコミットが無効になっているため、物理物理メモリ(RAM +スワップ)よりも多くの仮想メモリ割り当てを許可しないでください。ただし、ファジーテスト三位一体を使用すると、まだメモリ不足が報告され、デスクトップ環境が終了します。
私が推測する1つの考えられる理由は、always check, never overcommit
各プロセスによって割り当てられたメモリが決して超過しないことですCommitLimit
。ただし、複数のプロセスが同時にメモリを割り当て、合計を超える傾向がありますCommitLimit
。私の推測は正しいですか?