実際に必要な場合にのみスワップパーティションを使用しないようにプロセスを無効にする方法

実際に必要な場合にのみスワップパーティションを使用しないようにプロセスを無効にする方法

私の組み込みシステムには2GBのRAMと100MBのスワップパーティションがあります。引き続きモニタリングを行った結果、RAMの平均メモリ使用量が50%程度であることがわかりました。何らかの理由で、認知システムはSWAPメモリの使用を開始し、ほぼ40%(40MB)を使用しました。私のデバイスのフラッシュは書き込み回数に大きな問題があり、約10年間持続する必要があるため、これが発生しないようにしたいと思います。このコマンドセットを実行した後、SWAPを使用してプロセスのリストを取得します。

for file in /proc/*/status ; do awk '/VmSwap|Name/{printf $2 " " $3}END{ print ""}' $file; done | sort -k 2 -n -r | less​

私のシステムファイルは/etc/sysctl.confパラメータで構成されているので、vm.swappiness=1私が読んだ記事によれば、必ず必要な場合にのみSWAPを使用する必要があります。 (アンケート調査結果を使用しましたがvm.sappiness=0、まだ結果がありません。)

特定のプロセスがスワップを使用するのを防ぐ方法があることを知っていますが、正しい方法は何ですか?

ベストアンサー1

各プロセスの交換性を設定できます。cgroup

echo 0 > /sys/fs/cgroup/<your custom group>/memory.swappiness

とにかく私の提案は使用することですズラムメモリ内圧縮スワッピングに使用されます。

おすすめ記事